Swiss Legal Intelligence Plugin for Cowork Desktop
BetterCallClaude transforms legal research, case strategy, and document drafting for Swiss lawyers. It provides deep integration with Swiss legal databases, multi-lingual analysis (DE/FR/IT/EN), and built-in Anwaltsgeheimnis (attorney-client privilege) protection -- 21 agents, 29 commands, 17 skills, and 9 MCP servers covering BGE/ATF/DTF precedent research, litigation strategy, adversarial analysis, legal drafting, citation verification, document intelligence, and CAS/TAS sports arbitration across all 26 Swiss cantons.
Claude Code CLI users: this repository is Cowork Desktop only. The CLI version is at fedec65/bettercallclaude-cli.
BetterCallClaude provides a structured methodology for handling legal work with AI assistance. The framework consists of five interconnected phases.
v4.10.1 — Documentation completeness patch. The command, agent, and skill listings in this README, the plugin README, and /help now cover everything that ships in the plugin: all 29 commands, 21 agents, and 17 skills. No functional changes.
Also in recent releases — v4.10.0 legal wayfinder: /legal-chart decomposes a matter into a decision map — destination, decisions so far, fog, out-of-scope — with one ticket per open decision. /legal-way then works the map ticket by ticket (research, grilling, prototype, task) until the route to the deliverable is clear and hands off to execution. A fog check in /briefing routes oversized matters to the chart instead of forcing a static execution plan.
Also in recent releases — v4.9.6 privacy fix: the Anwaltsgeheimnis PreToolUse hook silently failed on plugin paths containing spaces (e.g. a user name with a space) — privilege detection was off with no error shown. The hook command now quotes the plugin root correctly, with regression guards (standalone tests + a CI check). If you handle privileged client content, update.
Also in recent releases — v4.9.5 /legal-timeline: build a sourced case chronology from your case documents: every event carries its document and locus, contested facts and date conflicts are made visible (never silently resolved), evidentiary gaps of 30+ days are flagged, and procedural deadlines are computed via MCP with cantonal holiday calendars. Three outputs (Markdown table, interactive HTML, Word export) under bcc-output/timeline/.
Content counts: 21 agents, 29 commands, 17 skills, 9 MCP servers in .mcp.json (7 remote HTTP on mcp.bettercallclaude.ch + swiss-caselaw SSE on mcp.opencaselaw.ch + ollama local STDIO).
Cowork Desktop dedicated release -- This repository is exclusively for Claude Cowork Desktop. The Claude Code CLI version is at fedec65/bettercallclaude-cli.
- HTTP-only transport: 8 of 9 MCP servers connect via
mcp.bettercallclaude.ch/mcp.opencaselaw.ch-- no local Node.js build required for those - Local STDIO server (
ollama): bundled and only toucheshttp://localhost:11434for privacy-routed translation/summarisation - Simplified setup:
/setupchecks connectivity only -- no transport switching needed in Cowork
Full installation guide with screenshots: BetterCallClaude Tutorial →
- In Cowork, click Customize > Browse plugins > Personal > + > Add marketplace from GitHub
- Enter
fedec65/bettercallclaudeand click Sync - Click Install on the BetterCallClaude card
MCP servers connect automatically via HTTP. No Node.js, no local setup, no API keys required.
| Command | Description |
|---|---|
/bettercallclaude:legal |
Intelligent gateway -- analyzes intent, routes to the appropriate specialist agent, and manages multi-step legal workflows. Use --refine to transform vague queries first. |
/bettercallclaude:refine |
Transform vague legal queries into structured prompts through Socratic dialogue. Recommends optimal workflows and introduces Swiss legal terminology. |
/bettercallclaude:research |
Search Swiss legal precedents and compile research memoranda. Supports BGE/ATF/DTF databases, doctrine references, and cross-jurisdictional analysis. |
/bettercallclaude:strategy |
Develop litigation strategy with risk assessment, cost-benefit analysis, and procedural pathway evaluation. |
/bettercallclaude:draft |
Draft Swiss legal documents including contracts, court briefs, legal opinions, and memoranda with proper citation formatting. |
/bettercallclaude:cite |
Verify and format Swiss legal citations across all four national languages (BGE/ATF/DTF formats). |
/bettercallclaude:validate |
Validate Swiss legal citations in bulk -- check format, existence, and cross-language consistency. |
/bettercallclaude:precedent |
Search and analyze BGE/ATF/DTF precedents with precedent chain tracking and evolution analysis. |
/bettercallclaude:federal |
Analyze a legal question under federal Swiss law (ZGB, OR, StGB, BV, and related federal statutes). |
/bettercallclaude:cantonal |
Analyze a legal question under cantonal law for a specific canton. |
/bettercallclaude:adversarial |
Run three-agent adversarial analysis -- advocate builds the case, adversary challenges it, judicial analyst synthesizes. |
/bettercallclaude:briefing |
Structured pre-execution briefing -- assembles a specialist panel, collects case context, and builds an execution plan before agents start working. |
/bettercallclaude:legal-chart |
Chart a big or foggy matter as a wayfinder decision map -- one ticket per open decision, planning only. |
/bettercallclaude:legal-way |
Work one decision ticket from a wayfinder map; hands off to execution only when every decision is made. |
/bettercallclaude:workflow |
Define and execute multi-agent legal workflows (due diligence, litigation prep, contract lifecycle, real estate closing). |
/bettercallclaude:legal-5step |
Execute the 5-step Swiss legal framework end to end: intake, research, strategy, adversarial stress test, verified drafting. |
/bettercallclaude:legal-goal |
Define a checkable legal success condition for /legal-loop. |
/bettercallclaude:legal-loop |
Iterate a worker-evaluator cycle against a Goal Record until the success condition is met or a stop limit is reached. |
/bettercallclaude:translate |
Translate Swiss legal documents between DE, FR, IT, and EN while preserving legal terminology precision. |
/bettercallclaude:doc-analyze |
Analyze Swiss legal documents -- identify legal issues, extract key clauses, verify citations, assess compliance. |
/bettercallclaude:legal-timeline |
Build a sourced legal chronology from case documents -- provenance per event, contested-fact status, date conflicts, gaps, deadlines. |
/bettercallclaude:nda-triage |
Triage NDAs against Swiss law -- GREEN / YELLOW / RED using playbook thresholds; single file or batch mode. |
/bettercallclaude:summarize |
Consolidate multi-agent pipeline output -- deduplicate disclaimers, terminology, and citations with length control (--short/--medium/--long). |
/bettercallclaude:start |
First-use onboarding -- checks MCP connectivity, guides playbook creation, shows tailored usage examples. |
/bettercallclaude:setup |
Check MCP server connectivity and display status for all 9 servers. |
/bettercallclaude:doctor |
Diagnose MCP server connectivity per server, with plain-language status, impact, and suggested fixes. |
/bettercallclaude:privacy |
View or change the privacy mode (strict / balanced / cloud) for Anwaltsgeheimnis handling. |
/bettercallclaude:version |
Display plugin version, installed components, and system status. |
/bettercallclaude:help |
Show complete command reference, available agents, skills, and usage examples. |
/bettercallclaude:legal I need to assess our exposure under Art. 97 OR for late delivery
/bettercallclaude:refine I have problems with my landlord
/bettercallclaude:research Art. 97 OR contractual liability for late delivery
/bettercallclaude:strategy Commercial lease dispute in Zurich, landlord claims CHF 200k damages
/bettercallclaude:draft Employment contract for a software engineer in Geneva, bilingual DE/FR
/bettercallclaude:adversarial Is the non-compete clause in this employment contract enforceable?
/bettercallclaude:workflow litigation-prep Personal injury claim against manufacturer
/bettercallclaude:briefing Prepare full litigation for Art. 97 OR breach, CHF 500K, Zurich
/bettercallclaude:cantonal ZH Commercial court jurisdiction for contract disputes over CHF 30k
/bettercallclaude:doc-analyze @contract.pdf Review this commercial lease agreement
| Agent | Domain |
|---|---|
| Research & Drafting | |
| researcher | Swiss legal research, BGE/ATF/DTF search, statutory analysis |
| strategist | Litigation strategy, risk assessment, cost-benefit analysis |
| drafter | Legal document drafting in Swiss format |
| citation | BGE citation verification and multi-lingual formatting |
| compliance | FINMA, AML/KYC, regulatory compliance checks |
| chronology-builder | Sourced timeline event extraction from case documents |
| Domain Specialists | |
| data-protection | GDPR, nDSG/FADP privacy analysis |
| risk | Case outcome probability, damages quantification, Monte Carlo simulation |
| procedure | ZPO/StPO deadlines, procedural rules, forum selection |
| translator | DE/FR/IT legal terminology and document translation |
| fiscal | Tax law, DTAs, transfer pricing, fiscal structuring |
| corporate | AG/GmbH governance, M&A, commercial contracts |
| cantonal | All 26 Swiss cantonal legal systems |
| realestate | Property law, Grundbuch, Lex Koller |
| Adversarial Analysis | |
| advocate | Builds the strongest case for a position |
| adversary | Challenges and stress-tests the case |
| judicial | Synthesizes advocate and adversary into balanced assessment |
| Briefing & Orchestration | |
| briefing | Pre-execution intake, specialist panel consultation, execution plan building |
| orchestrator | Multi-agent pipeline coordination and workflow management |
| summarizer | Pipeline output consolidation, deduplication, length-calibrated summaries |
| prompt-engineer | Prompt refinement — transforms vague queries into precise, effective legal prompts |
- Briefing sessions -- Complex queries trigger a collaborative intake phase with specialist panels, targeted questions, and structured execution plans before agents start working. Supports
--resumefor cross-session persistence. - Adversarial analysis -- Three-agent workflow: advocate builds the case, adversary challenges it, judicial analyst synthesizes using Swiss Erwagung methodology with probability scores.
- Multi-agent workflows -- Predefined pipelines for due diligence, litigation prep, contract lifecycle, and real estate closings.
- All 26 cantons -- Full cantonal coverage with court systems, citation formats, and MCP search via entscheidsuche.ch. Federal law is the default; mentioning a canton triggers cantonal mode.
- Multi-language -- Automatic language detection for DE/FR/IT/EN with correct legal terminology and citation formats.
All servers connect automatically after installation. No configuration required.
| Server | Purpose | Transport |
|---|---|---|
entscheidsuche |
Swiss court decision search (Bundesgericht + cantonal) | HTTP |
bge-search |
Federal Supreme Court decision search | HTTP |
legal-citations |
Citation verification and formatting | HTTP |
fedlex-sparql |
Federal legislation database (SPARQL) | HTTP |
onlinekommentar |
Swiss legal commentaries | HTTP |
legal-persona |
Swiss-law document intelligence (strategy, drafting, analysis) | HTTP |
tas-jurisprudence |
CAS/TAS sports arbitration decisions | HTTP |
swiss-caselaw |
Case law, citation graphs, appeal chains (opencaselaw.ch) | SSE |
ollama |
Local privacy classification for Anwaltsgeheimnis | Local |
The seven HTTP servers connect to https://mcp.bettercallclaude.ch (rate limit: 60 req/min per IP). The swiss-caselaw server connects to https://mcp.opencaselaw.ch. No API keys required for any server.
See CONNECTORS.md for detailed API documentation.
BetterCallClaude includes built-in Anwaltsgeheimnis (attorney-client privilege, Art. 321 StGB) compliance. A PreToolUse hook scans outgoing tool calls for privilege indicators in German (Anwaltsgeheimnis, Mandantengeheimnis, vertraulich), French (secret professionnel, confidentiel), and Italian (segreto professionale, confidenziale).
| Mode | Behavior |
|---|---|
strict |
All external calls require confirmation. Local processing preferred via Ollama. |
balanced |
Privileged content triggers confirmation. Non-privileged content processed normally. |
cloud |
Standard cloud processing with privacy hook active for explicit privilege markers only. |
| Language | Code | Legal Context |
|---|---|---|
| German | DE | Primary: ZGB, OR, StGB, BGE. Used in ZH, BE, BS, and German-speaking cantons. |
| French | FR | Official: CC, CO, CP, ATF. Used in GE, VD, and French-speaking cantons. |
| Italian | IT | Official: CC, CO, CP, DTF. Used in TI and Italian-speaking regions. |
| English | EN | Working language with Swiss legal term mapping. |
- Claude Cowork Desktop (latest version)
- Node.js >= 18 (for the ollama privacy classifier only -- all other servers connect via HTTP)
Prefer working from the terminal? BetterCallClaude CLI is the Claude Code CLI edition with local stdio MCP transport, configurable HTTP fallback, and the same 20 agents, 19 commands, and 14 skills.
Federico Cesconi -- fedec65/bettercallclaude -- bettercallclaude.ch
AGPL-3.0 -- See LICENSE for full terms.
This repo contains the plugin only (agents, commands, skills, hooks, .mcp.json, and the bundled ollama local STDIO server). MCP server source code and the HTTP aggregator deployed to Railway at mcp.bettercallclaude.ch live in the separate fedec65/BetterCallClaudeMCP repo.
npm run package # Create distributable plugin zipTo change an MCP server's behaviour, open a PR in
fedec65/BetterCallClaudeMCP.
Railway auto-redeploys on merge to main.
See CONNECTORS.md for MCP server API documentation and CONTRIBUTING.md for the full contributor workflow.
BetterCallClaude is a legal research and analysis tool. All outputs produced by this plugin:
- Require professional lawyer review and validation before use.
- Do not constitute legal advice.
- May contain errors, omissions, or outdated information.
- Must be verified against official sources (admin.ch, court databases, official gazettes).
- Must be adapted to the specific circumstances of each case.
Lawyers maintain full professional responsibility for all legal work products. This tool assists legal professionals but does not replace professional judgment, independent verification, or the duty of care owed to clients.