Contract Negotiator -- Claude Plugin
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.
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.
Built on the Adeu OOXML redlining engine.
Quick Start
git clone https://github.com/sarturko-maker/Claude-Plugin-MCP.git
cd Claude-Plugin-MCP
pip install .
claude --plugin-dir ./
Prerequisites
- Python 3.11+ (required by the Adeu dependency)
- pip (for installing dependencies)
- git (for cloning and for the adeu git dependency)
- Claude Code (Anthropic's CLI)
What It Does
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.
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.
Features
- First-pass redlining of clean contracts with tracked changes and professional comments
- Multi-round counterparty response with correctly layered tracked changes preserving the full audit trail
- Auto-detection of clean vs redlined documents -- one command handles both workflows
- Comparison report gate before applying changes to counterparty redlines -- review before committing
- Full-autonomy mode (
/yolo-negotiation) -- same negotiation logic with all checkpoints removed for when you trust the defaults
- Word-level surgical diffs that change only the minimum necessary span of text
- Professional commenting -- comments only where they add value, not on every change
- Configurable persona, authority framework, and playbooks for different negotiation styles
- MCP tool annotations for Claude Desktop directory compliance and security transparency
Commands
/negotiate
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.
/yolo-negotiation
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.
Architecture Overview
Claude-Plugin-MCP/
.claude-plugin/ Plugin metadata (plugin.json)
.mcp.json MCP server configuration
skills/ Skill definitions for Claude
commands/ Slash commands (/negotiate, /yolo-negotiation)
src/ MCP server source (78 Python files)
mcp_server/ Tool definitions and server entry point
ingestion/ Document parsing and validation
negotiation/ Negotiation logic and evaluation
pipeline/ Orchestration pipeline
config/ Three-level config fallback
models/ Pydantic data models
validation/ Output validation
defaults/ Shipped defaults (PERSONA.md, AUTHORITY.md, PLAYBOOK-template.md)
scripts/ start-mcp.sh launcher
samples/ Test documents for evaluation
MCP server entry point: python -m src.mcp_server
Three-level config fallback: project directory > ~/.config/claude-negotiator/ > shipped defaults in defaults/
Configuration
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/:
| File | Purpose |
|---|
PERSONA.md | Define the negotiation persona (tone, formality, jurisdiction conventions) |
AUTHORITY.md | Set authority levels for different clause types (which changes need escalation) |
PLAYBOOK-*.md | Negotiation playbooks for specific deal types (e.g., PLAYBOOK-SPA.md for share purchase agreements) |
Usage Examples
Example 1: First-Pass Review of a Sales Agreement