Live Microsoft Word editing via MCP — tracked changes, undo, comments, 40+ tools
The only MCP server that edits Word documents while they're open
Live editing · Tracked changes · Per-action undo · 114 tools · Cross-platform
word-mcp-live gives any AI assistant that supports MCP full control of Microsoft Word. Open a document, tell the AI what you need, and watch it happen — formatting, tracked changes, comments, and all. Changes appear live in your open document.
Without word-mcp-live
|
With word-mcp-live
|
https://github.com/user-attachments/assets/fbb09af4-1e25-4e49-94d0-45b363278810
pip install word-mcp-live
Or install from source:
git clone https://github.com/ykarapazar/word-mcp-live.git
cd word-mcp-live
pip install -e .
Add to your claude_desktop_config.json:
{
"mcpServers": {
"word": {
"command": "uvx",
"args": ["word-mcp-live"],
"env": {
"MCP_AUTHOR": "Your Name",
"MCP_AUTHOR_INITIALS": "YN"
}
}
}
}
Add to your .mcp.json:
{
"mcpServers": {
"word": {
"command": "uvx",
"args": ["word-mcp-live"],
"env": {
"MCP_AUTHOR": "Your Name",
"MCP_AUTHOR_INITIALS": "YN"
}
}
}
}
One-click: Click the install button at the top of this page.
Manual: Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"word": {
"command": "uvx",
"args": ["word-mcp-live"],
"env": {
"MCP_AUTHOR": "Your Name",
"MCP_AUTHOR_INITIALS": "YN"
}
}
}
}
One-click: Install in VS Code
Manual: Add to your VS Code settings.json:
{
"mcp": {
"servers": {
"word": {
"command": "uvx",
"args": ["word-mcp-live"],
"env": {
"MCP_AUTHOR": "Your Name",
"MCP_AUTHOR_INITIALS": "YN"
}
}
}
}
}
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"word": {
"command": "uvx",
"args": ["word-mcp-live"],
"env": {
"MCP_AUTHOR": "Your Name",
"MCP_AUTHOR_INITIALS": "YN"
}
}
}
}
{
"mcpServers": {
"word": {
"command": "docker",
"args": ["run", "-i", "--rm", "ghcr.io/ykarapazar/word-mcp-live"],
"env": {
"MCP_AUTHOR": "Your Name",
"MCP_AUTHOR_INITIALS": "YN"
}
}
}
}
Note: Docker mode supports cross-platform tools only. Live editing requires a native Windows install.
MCP_AUTHORsets your name on tracked changes and comments (default:"Author").MCP_AUTHOR_INITIALSsets comment initials.
| Works everywhere | Windows with Word open | |
|---|---|---|
| What it does | Create and edit saved .docx files | Edit documents live while you work in Word |
| Platform | Windows, macOS, Linux | Windows only |
| Undo | File-level saves | Per-action Ctrl+Z |
| Best for | Batch processing, document generation | Interactive editing, formatting, review |
Both modes work together. The AI picks the right one for the task.
| Variable | Default | Description |
|---|---|---|
MCP_AUTHOR | "Author" | Author name for tracked changes and comments |
MCP_AUTHOR_INITIALS | "" | Author initials for comments |
MCP_TRANSPORT | stdio | Transport type: stdio, sse, or streamable-http |
MCP_HOST | 0.0.0.0 | Host to bind (for SSE/HTTP transports) |
MCP_PORT | 8000 | Port to bind (for SSE/HTTP transports) |
For remote deployment, see RENDER_DEPLOYMENT.md.
Just tell the AI what you want in plain language:
"Draft a contract with tracked changes so my colleague can review"
"Format all headings as Cambria 13pt bold and add automatic numbering"
"Add a comment on paragraph 3 asking about the deadline"
"Find every mention of 'ABC Corp' and replace with 'XYZ Ltd' as a tracked change"
"Set the page to A4 landscape with 2cm margins"
"Insert a table of contents based on the document headings"
"Add page numbers in the footer and our company name in the header"
"Insert a cross-reference to Heading 2 in paragraph 5"
Tool call: get_document_text
{ "filename": "C:/Documents/report.docx" }
Expected output:
{
"status": "success",
"paragraphs": [
{"index": 0, "text": "Quarterly Report", "style": "Heading 1"},
{"index": 1, "text": "Revenue increased by 15% compared to Q3.", "style": "Normal"},
{"index": 2, "text": "Key Metrics", "style": "Heading 2"}
],
"total_paragraphs": 3
}
Tool call: word_live_replace_text
{
"filename": "report.docx",
"find_text": "ABC Corporation",
"replace_text": "XYZ Ltd",
"match_case": true,
"replace_all": true,
"track_changes": true
}
Expected output:
{
"status": "success",
"replacements": 4,
"message": "Replaced 4 occurrences (tracked changes enabled)"
}
The replacements appear as tracked changes in Word with strikethrough on "ABC Corporation" and underline on "XYZ Ltd".
Tool call: add_comment
{
"filename": "C:/Documents/contract.docx",
"target_text": "payment within 30 days",
"comment_text": "Should we extend this to 45 days?",
"author": "Jane Smith"
}
Expected output:
{
"status": "success",
"message": "Comment added by Jane Smith on 'payment within 30 days'"
}
The comment appears in Word's Review panel, anchored to the specified text.
114 tools across two modes — see the complete tool reference for details.
| Category | Count |
|---|---|
| Cross-platform (python-docx) | 75 |
| Windows Live (COM automation) | 39 |
python-docx, fastmcp, msoffcrypto-tool (installed automatically)pywin32The cross-platform tools work without Word installed — only python-docx is needed.
See CONTRIBUTING.md for development setup, code style, and how to add new tools.
Found a bug? Open an issue. Have an idea? Request a feature.
Built on top of GongRzhe/Office-Word-MCP-Server by GongRzhe (MIT License).
Additional libraries: python-docx · FastMCP · pywin32
This server runs entirely on your local machine. No data is collected, transmitted, or stored. See the full Privacy Policy.
MIT License — see LICENSE for details.
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
uvx word-mcp-liveMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-ykarapazar-word-mcp-live": {
"command": "uvx",
"args": [
"word-mcp-live"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referenceword-mcp-livepypiWord MCP Live works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.