Lets AI agents read, redline, and apply native Word Track Changes to DOCX files without breaking formatting.
Also known as dealfluence/adeu, @adeu/mcp-server
- Stars
- 170
- Tools
- —
- Downloads, 30 days
- 3,608
- Latest version
- 1.7.1
- Last commit
- Nov 11, 2026
- License
- MIT
What is Adeu MCP?
Adeu lets AI agents read, redline, and apply native Word Track Changes to DOCX files without breaking formatting.
Summary generated from the project's README
About Adeu MCP server
Legal professionals and developers can use adeu to bridge the gap between Markdown-based AI agents and Microsoft Word documents. The server acts as a virtual DOM that translates DOCX files into a token-efficient CriticMarkup format, allowing AI models to understand document semantics without being overwhelmed by complex XML. This ensures that when an agent suggests an edit, the original formatting, fonts, and margins remain untouched.
Users can implement this via Node.js or Python MCP servers, or as a plugin for Claude Code. It supports various environments including Claude Desktop, Cursor, Windsurf, and Gemini CLI. On Windows, the Python backend enables live integration with an active Microsoft Word instance. The system provides specific tools like read_docx for inspecting existing markup, process_document_batch for applying multiple edits at once, and diff_docx_files for comparing document versions. All core processing happens locally on your machine to maintain document privacy.
What you can do with it
- 1Batch editing documentsInstruct an AI to perform multiple search-and-replace operations and insert table rows in a single transaction.
- 2Comparing document versionsHave an agent generate a new Word file that shows the differences between two existing documents using native track changes.
Written from the project's README. Every use case is checked against a quote from it.
How to install Adeu MCP
Formats verified 10 Nov 2026Install Adeu MCP in Claude Code
$ claude mcp add adeu -- npx -y @adeu/mcp-serverInstall Adeu MCP in Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"adeu": {
"command": "npx",
"args": [
"-y",
"@adeu/mcp-server"
]
}
}
}Install Adeu MCP in VS Code
.vscode/mcp.json
{
"servers": {
"adeu": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@adeu/mcp-server"
]
}
}
}Install Adeu MCP in Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"adeu": {
"command": "npx",
"args": [
"-y",
"@adeu/mcp-server"
]
}
}
}Install Adeu MCP in Codex
~/.codex/config.toml
[mcp_servers.adeu] command = "npx" args = ["-y", "@adeu/mcp-server"]
Install Adeu MCP in Gemini CLI
~/.gemini/settings.json
{
"mcpServers": {
"adeu": {
"command": "npx",
"args": [
"-y",
"@adeu/mcp-server"
]
}
}
}Automated checks
Ran Nov 11, 2026Full report →Passed our automated checks. That is not a security audit: read the code and give the server the narrowest access it needs. How checks work
- Source repository linked and reachablePass
- Open source license (OSI)Pass
- Commit or release in the last yearPass
- Package name not close to a popular packagePass
- Remote endpoint uses HTTPSNot checked
- Destructive tools are labelledNot checked
- No hidden instructions to the modelPass
- No critical advisory in the package or its dependenciesPass
README
View on GitHubAdeu: Track Changes for the LLM era
LLMs speak Markdown; reviewers speak "Track Changes."
Adeu is a docx ↔ LLM translator: a Model Context Protocol (MCP) server (Python and Node.js implementations) and accompanying SDKs that act as a Virtual DOM for Microsoft Word. It provides a two-way abstraction layer that lets AI agents freely edit document text without destroying the underlying formatting or complex DOCX XML.
While standard libraries like python-docx excel at generating documents from scratch, they fail at non-destructive redlining. Adeu solves this by translating .docx files into a token-efficient Markdown representation. This frees AI agents to focus entirely on document semantics instead of wasting tokens wrestling with OpenXML.
Adeu acts as an intelligent proxy, processing AI edits as safe, atomic transactions:
- Read: Translates the document (from disk or live Word) into LLM-friendly CriticMarkup with a Semantic Appendix of defined terms, cross-references, and likely typos. The agent starts with semantic structure, not raw data.
- Validate: Acts as a strict safety gate. It protects the document's integrity by automatically blocking ambiguous text matches or invalid structural changes before they touch the file.
- Apply: Translates the AI's text edits into native Word Track Changes. Adeu handles the complex XML under the hood, ensuring existing layouts, fonts, and margin comments are perfectly preserved.
Built and maintained by the team at Adeu.
Installation
Adeu can be installed directly into AI assistants as an MCP server, used as a Claude Code plugin or Agent Skill, CLI tool, or used locally as a developer toolchain.
Claude Code (Plugin)
Adeu ships as a Claude Code plugin with a built-in agent skill that teaches Claude how to use the engine effectively. Inside Claude Code:
/plugin marketplace add dealfluence/adeu
/plugin install adeu-redlining@adeu-skills
For best results, also connect either the Node MCP server (npx -y @adeu/mcp-server) or the Python MCP server (uvx --from adeu adeu-server). The plugin works without an MCP server too — it falls back to driving the uvx adeu CLI via Bash.
Other Skills-Compatible Agents (Cursor, Windsurf, VS Code Copilot, etc.)
Adeu's redlining skill follows the open Agent Skills specification and works with any compatible agent:
npx skills add dealfluence/adeu
The skill installs to your agent's skills directory and activates automatically when you ask Claude to redline, edit, or review a .docx file.
Claude Desktop
You can install Adeu directly into Claude Desktop using the official extension package:
- Download the latest
Adeu.mcpbfile from the GitHub Releases page. - Open Claude Desktop and navigate to Settings > Extensions.
- Click Advanced settings and find the Extension Developer section.
- Click Install Extension..., select the downloaded
.mcpbfile, and follow the prompts.
Gemini CLI
Adeu is available as a native Gemini CLI extension. To install:
gemini extensions install https://github.com/dealfluence/adeu
Other MCP Clients (Cursor, Windsurf, etc.)
For IDEs or clients that configure MCP servers via JSON, you can use either the Node.js or Python backend:
Node.js
{
"mcpServers": {
"adeu": {
"command": "npx",
"args": ["-y", "@adeu/mcp-server"]
}
}
}
Python (Required for Live MS Word integration on Windows)
{
"mcpServers": {
"adeu": {
"command": "uvx",
"args": ["--from", "adeu", "adeu-server"]
}
}
}
Agent Workflows
Adeu provides agents with specific tools to read, review, and edit documents safely.
MCP Apps UI: The
read_docxtool supports the MCP Apps UI protocol. When an agent reads a document, Adeu dynamically renders a custom, interactive Markdown view directly inside the chat window.
Recommended Agent Prompt: You can guarantee the best behavioral results by adding this context to your agent's system prompt or project instructions:
Role: Document Specialist Tools:
read_docx: Start withmode="changes"to triage existing tracked changes (Chg:N) and comments (Com:N),search_query(with optionalpage="4-5"range) to locate specific clauses,mode="fields"to inspect form fields (CC:<N>), ormode="outline"followed by bounded page ranges (page="1-8") to read sections without loading the whole file.process_document_batch: Commit & Negotiate Mode. Apply a unified, sequentially evaluated list of changes in one call:type: "modify"for search-and-replace text edits (supports Markdown headings/bold/italic/pipe tables,{#cell:<id>}empty-cell anchors,match_mode="all",regex=True, and single or[{"text": ..., "author": ...}]comments),type: "set_field"for form fields,type: "accept","reject"(with optionalpart), or"reply"for existing markup, andtype: "insert_row"/"delete_row"for table rows. Passmarkup_mode="manual"when inline strikethrough/underline formatting is requested instead of Track Changes.diff_docx_files: Compare two.docxfiles; passoutput_pathandauthor_nameto write the comparison as a tracked-changes.docxin one step.finalize_document: Pre-Send Scrub. Strip metadata, author names, and internal tracking IDs, lock the document (protection_mode="read_only"), and prepare it for distribution.
Live MS Word Integration
If you are running on Windows with Microsoft Word installed, Adeu can act as a real-time copilot, editing the active document right in front of you. This requires running the Python MCP server backend (see Developer Tools below).
Developer Tools (Python & TypeScript)
If you are building a legal-tech application, an automated pipeline, or want to use the local CLI, use our SDKs.
The Python CLI
The Python toolchain is managed via uv.
pip install uv
uv tool install adeu
# Extract clean text for RAG or prompting
adeu extract contract.docx -o contract.md
# Generate a visual diff between two versions
adeu diff v1.docx v2.docx
# Apply edits to the DOCX
adeu apply contract.docx edits.json --author "Review Bot"
# Apply valid edits in salvage mode while reporting failing edits
adeu apply contract.docx edits.json --partial
# High-throughput JSON-Lines daemon
adeu serve
# Scrub author metadata and internal trackers
adeu sanitize redline.docx -o clean.docx --keep-markup --author "My Firm" --report
What the text projection preserves exactly, what it normalizes (lists, styles, synthetic pages), and what stays read-only is specified in docs/FIDELITY.md.
The Python SDK
from adeu import RedlineEngine, ModifyText
from io import BytesIO
with open("MSA.docx", "rb") as f:
stream = BytesIO(f.read())
edit = ModifyText(
target_text="State of New York",
new_text="State of Delaware",
comment="Standardizing governing law."
)
engine = RedlineEngine(stream, author="AI Copilot")
engine.apply_edits([edit])
with open("MSA_Redlined.docx", "wb") as f:
f.write(engine.save_to_stream().getvalue())
The TypeScript SDK
The entire core parsing and diffing engine is also available in pure TypeScript.
import { readFileSync, writeFileSync } from "fs";
import { DocumentObject, RedlineEngine } from "@adeu/core";
const buffer = readFileSync("MSA.docx");
const doc = await DocumentObject.load(buffer);
const engine = new RedlineEngine(doc, "AI Copilot");
engine.process_batch([{
type: "modify",
target_text: "State of New York",
new_text: "State of Delaware",
comment: "Standardizing governing law."
}]);
const outBuffer = await doc.save();
writeFileSync("MSA_Redlined.docx", outBuffer);
See the @adeu/core documentation for full installation and usage details.
n8n Community Node
Adeu ships as an n8n community node (n8n-nodes-adeu) for teams who prefer visual workflow automation over code. It exposes the full engine (extract Markdown, apply tracked changes, generate diffs, and finalize documents) as drop-in nodes that work in both deterministic pipelines and AI Agent tool calls.
# In n8n: Settings → Community Nodes → Install: n8n-nodes-adeu
See the n8n-nodes-adeu README for installation, $fromAI recipes, and example workflows.
LangChain Integration
langchain-adeu is an official integration package that exposes Adeu's local, offline-capable document manipulation tools directly to the LangChain ecosystem.
pip install langchain-adeu
Bundle its capabilities as tools in your agent workflow:
from langchain_adeu import AdeuToolkit
# Instantiate and retrieve all document tools
tools = AdeuToolkit().get_tools()
Refer to the LangChain Workspace Guide for full development instructions and detailed parameters.
Ecosystem & Integrations
Adeu is designed as a Virtual DOM for DOCX. Because we keep the core strictly focused on OpenXML safety, we maintain a dedicated ecosystem/ directory for third-party integrations.
The ecosystem folder hosts policies and guidelines for third-party contributions such as legal validation workflows, CLM sync scripts, and specialized multi-agent architectures.
Are you a vendor or builder? We welcome PRs to the ecosystem folder! Please see our Vendor & Integration Policy to get started.
Adeu Cloud
By default, the core Adeu redlining engine and local file tools are fully open-source and execute entirely on your machine. Adeu never phones home with your local documents (though your chosen LLM provider will naturally process the text the agent reads).
However, for teams requiring end-to-end workflows, you can connect to Adeu Cloud to unlock:
- Email Processing & Fetching: We offer an extended MCP server with secure email thread fetching, document extraction, and automated drafting capabilities to handle contracts directly from your inbox.
Contributing
We welcome contributions from the community! Whether it's fixing bugs, adding capabilities, or improving documentation, please see our Contributing Guide for instructions on setting up the local uv environment, running tests, and understanding the project's strict XML safety guidelines.
License
MIT License. Open source and free to use in commercial applications.
Adeu MCP questions
How do I add Adeu MCP to Claude Code?
Run claude mcp add adeu -- npx -y @adeu/mcp-server in your terminal. Add --scope user to make it available in every project.
How do I add Adeu MCP to Cursor?
Open ~/.cursor/mcp.json and add the server under mcpServers, using the Cursor config shown in the install section above.
How does Adeu edit Word documents without losing formatting?
It translates the DOCX into a Markdown representation with CriticMarkup, validates edits, and converts them back into native Word Track Changes while preserving layouts and comments.
Does Adeu send my documents to a server?
No, the core engine runs entirely on your machine and does not phone home, though your LLM provider will process the text the agent reads.
How do I install Adeu as an MCP server?
You can run the Node server via npx or the Python server via uvx, and configure it in your MCP client's JSON settings.
Can Adeu compare two DOCX files?
Yes, the diff_docx_files tool compares two files and can write the comparison out as a tracked-changes DOCX.
Does Adeu support live editing of an open Word document?
On Windows with Microsoft Word installed, the Python MCP server backend can act as a real-time copilot editing the active document.