bysarturko-maker· 1 MCP server
Agentic contract negotiation assistant -- reviews counterparty redlines with layered Track Changes across multiple negotiation rounds, or creates first-pass redlines on clean documents.
$git clone https://github.com/sarturko-maker/claude-plugin-mcpInstalls into the current project.
Install claude-plugin-mcp by running `git clone https://github.com/sarturko-maker/claude-plugin-mcp`, then use it for the current task and follow its documentation at https://github.com/sarturko-maker/claude-plugin-mcp.
| 1 | # Contract Negotiator -- Claude Plugin |
| 2 | |
| 3 | > **Proof of Concept.** This is a proof of concept for testing and evaluation by qualified legal professionals only. It is NOT production software, does not provide legal advice, and must not be used for live client matters. All output is AI-generated and must be reviewed by a qualified legal professional. See [DISCLAIMER.md](DISCLAIMER.md). |
| 4 | |
| 5 | A Claude plugin that turns Claude into an agentic contract negotiation assistant. Upload a Word document -- clean or with existing tracked changes from any number of prior rounds -- give instructions, and get back a properly redlined `.docx` with layered Track Changes and correct author attribution. |
| 6 | |
| 7 | Built on the [Adeu](https://github.com/dealfluence/adeu) OOXML redlining engine. |
| 8 | |
| 9 | ## Quick Start |
| 10 | |
| 11 | ```bash |
| 12 | git clone https://github.com/sarturko-maker/Claude-Plugin-MCP.git |
| 13 | cd Claude-Plugin-MCP |
| 14 | pip install . |
| 15 | claude --plugin-dir ./ |
| 16 | ``` |
| 17 | |
| 18 | ## Prerequisites |
| 19 | |
| 20 | - **Python 3.11+** (required by the Adeu dependency) |
| 21 | - **pip** (for installing dependencies) |
| 22 | - **git** (for cloning and for the adeu git dependency) |
| 23 | - **Claude Code** (Anthropic's CLI) |
| 24 | |
| 25 | ## What It Does |
| 26 | |
| 27 | When a counterparty sends back a redlined contract, their tracked changes stay visible. You never "reject" a change in Word -- that makes it vanish with no trace. Instead, the plugin layers your response on top of their markup: deleting their proposed text through your own redline and inserting your alternative, both attributed to you. The counterparty opens Word and sees everything -- their original change, your deletion of it, and your counter-proposal. Full audit trail, full transparency. |
| 28 | |
| 29 | When you agree with a counterparty's change, the plugin accepts it -- the markup is removed and the text becomes part of the clean document. That is the only time changes should vanish. |
| 30 | |
| 31 | ### Features |
| 32 | |
| 33 | - **First-pass redlining** of clean contracts with tracked changes and professional comments |
| 34 | - **Multi-round counterparty response** with correctly layered tracked changes preserving the full audit trail |
| 35 | - **Auto-detection** of clean vs redlined documents -- one command handles both workflows |
| 36 | - **Comparison report gate** before applying changes to counterparty redlines -- review before committing |
| 37 | - **Full-autonomy mode** (`/yolo-negotiation`) -- same negotiation logic with all checkpoints removed for when you trust the defaults |
| 38 | - **Word-level surgical diffs** that change only the minimum necessary span of text |
| 39 | - **Professional commenting** -- comments only where they add value, not on every change |
| 40 | - **Configurable persona, authority framework, and playbooks** for different negotiation styles |
| 41 | - **MCP tool annotations** for Claude Desktop directory compliance and security transparency |
| 42 | |
| 43 | ## Commands |
| 44 | |
| 45 | ### `/negotiate` |
| 46 | |
| 47 | The primary command. Walks you through contract negotiation step by step with checkpoints for review at each stage. Handles both first-pass redlining of clean documents and multi-round counterparty response with layered tracked changes. |
| 48 | |
| 49 | ### `/yolo-negotiation` |
| 50 | |
| 51 | Full-autonomy variant. Same negotiation logic as `/negotiate` but with all checkpoints removed. Use when you trust the defaults and want the finished redlined document in one shot. Amber/red zone authority items are noted in the final report for your review after the fact. |
| 52 | |
| 53 | ## Architecture Overview |
| 54 | |
| 55 | ``` |
| 56 | Claude-Plugin-MCP/ |
| 57 | .claude-plugin/ Plugin metadata (plugin.json) |
| 58 | .mcp.json MCP server configuration |
| 59 | skills/ Skill definitions for Claude |
| 60 | commands/ Slash commands (/negotiate, /yolo-negotiation) |
| 61 | src/ MCP server source (78 Python files) |
| 62 | mcp_server/ Tool definitions and server entry point |
| 63 | ingestion/ Document parsing and validation |
| 64 | negotiation/ Negotiation logic and evaluation |
| 65 | pipeline/ Orchestration pipeline |
| 66 | config/ Three-level config fallback |
| 67 | models/ Pydantic data models |
| 68 | validation/ Output validation |
| 69 | defaults/ Shipped defaults (PERSONA.md, AUTHORITY.md, PLAYBOOK-template.md) |
| 70 | scripts/ start-mcp.sh launcher |
| 71 | samples/ Test documents for evaluation |
| 72 | ``` |
| 73 | |
| 74 | **MCP server entry point:** `python -m src.mcp_server` |
| 75 | |
| 76 | **Three-level config fallback:** project directory > `~/.config/claude-negotiator/` > shipped defaults in `defaults/` |
| 77 | |
| 78 | ## Configuration |
| 79 | |
| 80 | The plugin works out of the box with sensible defaults. For customisation, place any of the following files in your project directory or `~/.config/claude-negotiator/`: |
| 81 | |
| 82 | | File | Purpose | |
| 83 | |------|---------| |
| 84 | | `PERSONA.md` | Define the negotiation persona (tone, formality, jurisdiction conventions) | |
| 85 | | `AUTHORITY.md` | Set authority levels for different clause types (which changes need escalation) | |
| 86 | | `PLAYBOOK-*.md` | Negotiation playbooks for specific deal types (e.g., `PLAYBOOK-SPA.md` for share purchase agreements) | |
| 87 | |
| 88 | ## Usage Examples |
| 89 | |
| 90 | ### Example 1: First-Pass Review of a Sales Agreement |
| 91 | |
| 92 | **S |