{
  "markdown": "# @nexus-legal/mcp\n\nMCP (Model Context Protocol) server for **Nexus Legal** — exposes 27 specialised legal capabilities to Claude Desktop, Claude Code, Cursor and any other MCP-compatible client.\n\n> **What is this?** Connect your Claude to Nexus in 30 seconds. From then on Claude can run ISO 31000 legal analysis, Monte Carlo litigation simulation, case-law search, legal drafting, administrative doctrine, adversarial red teaming, multi-jurisdiction comparison (cross-border), citation verification, procedural time-limit computation, the statute↔case-law citation graph, and analysis of Box files by `file_id` (`box_analyze`) — without leaving the conversation.\n\n---\n\n## Quick install\n\n### 1. Generate an MCP key\n\nGo to [legal.nexusquantum.legal/developers](https://legal.nexusquantum.legal/developers), choose **\"MCP server\"**, give it a name (e.g. \"personal MacBook\") and press **+ Create MCP key**. Copy the `nlk_...` key — it is shown only once.\n\n### 2. Configure your client\n\n#### Claude Desktop (macOS)\n\nEdit `~/Library/Application Support/Claude/claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"nexus-legal\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@nexus-legal/mcp\"],\n      \"env\": {\n        \"NEXUS_API_KEY\": \"nlk_YOUR_KEY_HERE\"\n      }\n    }\n  }\n}\n```\n\nRestart Claude Desktop. You will see a 🔌 icon in the chat with the 27 Nexus tools available.\n\n#### Claude Desktop (Windows)\n\nEdit `%APPDATA%\\Claude\\claude_desktop_config.json` with the same contents.\n\n#### Claude Code (CLI)\n\n```bash\nclaude mcp add nexus-legal -- npx -y @nexus-legal/mcp\n# Then set your key:\nexport NEXUS_API_KEY=nlk_YOUR_KEY_HERE\n```\n\n#### Cursor\n\nEdit `~/.cursor/mcp.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"nexus-legal\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@nexus-legal/mcp\"],\n      \"env\": { \"NEXUS_API_KEY\": \"nlk_YOUR_KEY_HERE\" }\n    }\n  }\n}\n```\n\n### 3. Try it\n\nIn Claude Desktop, type:\n\n> Analyse this contract with Nexus in jurisdiction GB, commercial branch, conservative profile: «[paste the contract text here]»\n\nClaude will call the `nexus_analyze` tool and return the report with certainty locks `[L1]`/`[L2-J]`/`[L3-NV]`/`[L4]`, blocking signals `[L5-C]`/`[L5-P]`, and a `NEXUS-AUDIT-TRAIL` block.\n\n---\n\n## The 27 tools\n\n| Tool | Capability | Typical cost |\n|---|---|---|\n| `nexus_analyze` | Full legal analysis (Node A — ISO 31000) | 1-3 credits |\n| `nexus_consulta` | Open legal question, with or without a document | 1 credit |\n| `nexus_draft` | Legal drafting (appeal, claim, defence, clause…) | 2-4 credits |\n| `nexus_audit` | Cross-audit of a Node A analysis (Node B) | 1-2 credits |\n| `nexus_consensus` | Multi-agent consensus Node A ↔ Node B (analysis + adversarial audit in a loop until consensus; `jurisdiction` required; long operation ~3-6 min) | 3-7 credits |\n| `nexus_monte_carlo` | Monte Carlo scenario simulation (ISO 31000 §6) | 4 credits |\n| `nexus_doctrina` | Administrative doctrine search, by jurisdiction | 1 credit |\n| `nexus_opinion` | Multi-LLM second opinion on a previous analysis | 2 credits |\n| `nexus_redteam` | Adversarial red team (vulnerabilities as structured JSON) | 5 credits |\n| `nexus_adversarial` | Adversarial argument in prose over a previous analysis | 2-3 credits |\n| `nexus_cross_border_compare` | Multi-jurisdiction comparison (2-15 jurisdictions) | 2-4 credits |\n| `nexus_jurisprudencia_search` | Semantic search over the multi-jurisdiction case-law corpus | requires balance + the case-law add-on for that jurisdiction |\n| `verify_cita` | Deterministic verification of one citation (judgment or provision) against the official corpus | requires balance (+ case-law add-on if the citation is case law) |\n| `plazos_calcular` | Procedural time limits by forum. `jurisdiction` is required, no default: `ES` (LEC + LOPJ, CGPJ/regional holidays, August non-working) or `GB-EAW` (CPR r 2.8, *clear days*, England and Wales bank holidays, no August recess). Scotland and Northern Ireland are rejected: their rules and their holidays are different | requires balance |\n| `cruce_normativa_jurisprudencia` | Citation graph: provisions ↔ judgments | requires balance + case-law add-on |\n| `box_analyze` | Analysis of a Box file by `file_id` (requires an active Box connection) | 1-2 credits |\n| `nexus_verificacion` | Verification Centre: checks EVERY citation in a document against the official corpus (deterministic, no LLM cost) | requires balance |\n| `nexus_playbook` | Strategic negotiation playbook over a previous analysis | 2-3 credits |\n| `nexus_compare_versions` | Comparison of two versions of a document (V1 ↔ V2) | 2 credits |\n| `nexus_conflict_check` | Conflict check (conflicts of interest) over the parties to a case file | 1 credit |\n| `nexus_inbox` | Firm-wide attention inbox (what needs action) | requires balance |\n| `nexus_chat` | Legal chat with the case context | 1 credit |\n| `nexus_normativa_search` | Semantic search over legislation in force | requires balance + the legislation add-on for that jurisdiction |\n| `nexus_normativa_articulo` | Literal text of a provision at a date (lex temporis) | requires balance + legislation add-on |\n| `nexus_normativa_pyramid` | Legislative hierarchy: coverage by level | requires balance |\n| `nexus_corpus_coverage` | Inventory of the case-law corpus | read-only |\n| `nexus_normativa_coverage` | Legislation corpus coverage (jurisdictions + freshness) | read-only |\n\n> **Billing:** the MCP server is not free. Every call requires an account with a **credit balance > 0** (paid from minute one). Premium content is per **jurisdiction add-on**: **case law** and extra **legislation** are add-ons (Layer 3) — the subscription includes the legislation of one jurisdiction. Without the matching add-on, searches and lookups for that jurisdiction return `403 CONTENT_NOT_ENTITLED`.\n\n**On jurisdictions and coverage.** 63 jurisdiction codes are selectable (`GB`, `ES`, `CO`, `SG`, `US` with the `US-CA`/`US-NY`/`US-DE`/`US-TX` state overlays, `MULTI` for cross-border, and others). Selectable is not the same as grounded: what corpus actually backs a given jurisdiction — how many provisions, when our copy was last written, whether search is enabled for it — varies, and it is not something to infer from this list. Call `nexus_normativa_coverage` with your key: it answers for the jurisdictions **your account** has active, with the figures of each. A jurisdiction with no grounding corpus still analyses, but without literal citation against an official source.\n\n---\n\n## Bring-your-own-engine (BYO) accounts — what you will see before registering one\n\nSome accounts are provisioned so that legal generation runs **only on the firm's own\nLLM engine**, with no fallback chain. That is not a limitation: it is the guarantee\nthat documents never reach a Nexus engine.\n\nWhile no provider is registered and enabled, **every generative tool**\n(`nexus_analyze`, `nexus_consulta`, `nexus_chat`, `nexus_draft`, `nexus_audit`,\n`nexus_adversarial`, `nexus_redteam`, `nexus_doctrina`, `nexus_consensus`,\n`nexus_monte_carlo`, `nexus_opinion`, `nexus_playbook`, `nexus_compare_versions`,\n`nexus_cross_border_compare`, `box_analyze`) returns:\n\n```\nError running nexus_analyze: BYO_PROVIDER_REQUIRED: This account requires its own\nBYO LLM engine for AI-generative endpoints … This is a configuration state, not a\ntransient failure — retrying returns the same 409. Register and enable a provider\nvia POST /api/v1/llm-providers, then retry.\n```\n\nRetrying does **not** fix it, and no credits are charged for a run that stops there.\nRegister the engine once (`POST /api/v1/llm-providers`, or header → **AI models** in\nthe application) and run it again.\n\n### Reasoning engines and long analyses\n\nIf your engine is a **reasoning model** (DeepSeek V-pro, o1-style, Claude 5 with thinking), a\nheavy analysis can take longer than a synchronous HTTP request is allowed to last. The gateway\ncloses the connection at **300 s** — that ceiling is ours to live with, not to raise.\n\nMEASURED on 2026-08-18: `nexus_analyze` in `mode: \"auditoria\"` over a ~5 KB contract, on a BYO\nDeepSeek engine, went past it and returned `502`. The reason is not a fault in your engine: a\nreasoning model spends a large part of its completion budget thinking before it writes, and when\nit runs out mid-thought Nexus automatically re-issues the call with a wider budget — which costs\nmore wall clock again.\n\nTwo ways round it, in order of preference:\n\n1. **Use the asynchronous path** for that combination: `POST /api/v1/jobs` with\n   `kind: \"analyze\"` returns `202` and a `jobId` you poll (or a signed webhook). No wall clock.\n   This is the right door for reasoning engines and for `auditoria` on large documents.\n2. Use `mode: \"standard\"` through the MCP tool, which is materially shorter.\n\nPlatform engines and `mode: \"standard\"` are unaffected: the synchronous tool is the right one\nthere and stays the default.\n\n**Read-only** tools work without an engine, because they generate nothing:\n`nexus_jurisprudencia_search`, `verify_cita`, `nexus_verificacion`,\n`nexus_normativa_search` / `_articulo` / `_pyramid`, `nexus_corpus_coverage`,\n`nexus_normativa_coverage`, `cruce_normativa_jurisprudencia`, `plazos_calcular`,\n`nexus_conflict_check` (deterministic name matching, no LLM) and `nexus_inbox`.\n\n---\n\n## Environment variables\n\n| Variable | Default | Description |\n|---|---|---|\n| `NEXUS_API_KEY` | — | **Required.** An `nlk_...` key with `mcp` scope. |\n| `NEXUS_BASE_URL` | `https://legal.nexusquantum.legal` | For test or self-hosted environments. |\n| `NEXUS_TIMEOUT_MS` | `180000` (3 min) | Timeout for long analyses. |\n\n**Language.** This package sends the same tool descriptions to every client — MCP\npublishes them once, in `tools/list`, and no tool here takes a `language` argument —\nso descriptions and rendered output are in English. Where a tool produces a legal\ndeliverable, the language of that deliverable follows the jurisdiction and the account,\nnot this README.\n\n**You can name the role and the party in your own terms.** `professionalRole` takes\n`lawyer`, `solicitor`, `barrister`, `prosecutor`, `notary`, `registrar`, `judge`,\n`in-house` and `individual`. `proceduralSide` takes the term your forum actually uses:\n`claimant` (England and Wales, CPR r 2.3), `pursuer` (Scotland), `plaintiff` (Northern\nIreland, which did not adopt the CPR), `defendant`, `defender`. The original Spanish wire\nvalues — `abogado`, `demandante`, `auditoria` — are unchanged and will keep working: this\nadds spellings, it does not retire any. Everything resolves to the same protocol value\nbefore it reaches the analysis, so the two are interchangeable in every call.\n\n**API version:** this server speaks to the Nexus **v1 API**, the same one used by the\n[TypeScript](https://www.npmjs.com/package/@nexus-legal/sdk) and\n[Python](https://pypi.org/project/nexus-legal/) SDKs. Read-only and verification tools\ncall `/api/v1/*` routes; generative ones enter through the backend node routes with the\nsame `nlk_` key (`mcp` scope), the same billing and the same BYO enforcement.\n\nThis stdio package exposes **27** of the catalogue's capabilities. The **remote\nconnector** (`https://legal.nexusquantum.legal/api/mcp`, nothing to install) also\nexposes the case-file, firm-memory, firm-governance, legal-analytics, account and billing\ncapabilities. If you need any of those, use the remote connector or the v1 API directly.\n\n---\n\n## Privacy and GDPR\n\n- **Zero Retention on EU infrastructure.** Documents you send via MCP are processed in RAM on Railway europe-west4-drams3a (Netherlands) and are NOT persisted to a database by default. The Nexus Zero Retention policy applies to 100% of MCP traffic exactly as it does to web traffic.\n- **PII Gatekeeper.** Before anything reaches the LLM, the backend anonymises national ID numbers, IBANs, phone numbers, emails and account numbers with reversible tokens (`[DNI_1]`, `[ACCOUNT_3]`…). The MCP client only ever sees output already re-identified by our pipeline.\n- **Audit.** Every tool call is recorded in `analysis_costs` and `api_usage_stats` (with `via_api_key_id`) for billing and traceability.\n\n---\n\n## Support\n\n- Email: support@nexusquantum.legal\n- Documentation: https://legal.nexusquantum.legal/developers\n- Issues: https://github.com/djtellado/nexus-legal-prod/issues\n\n---\n\n## Licence\n\nApache-2.0 — see [`LICENSE`](./LICENSE) and [`NOTICE`](./NOTICE).\n\nCopyright 2026 Nexus Legal · Quantum Nexus Ventures.\n",
  "bytes": 12427,
  "sha": "c4de36e96a362691bd6c51332b54121112eacd5fa931982d0f23bd6b11db88eb",
  "repo_slug": "djtellado/nexus-legal-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_djtellado_nexus_legal_06448217/readme"
}