Sandbox
@ykarapazar/word-mcp-live

MCP server for live Microsoft Word editing

word-mcp-live connects an MCP-capable agent to Microsoft Word so it can read, edit, comment, and apply tracked changes in open documents. It uses cross-platform `python-docx` tools for saved files and live automation tools for Word itself on Windows and macOS.

209 stars40 forksPythonUpdated 3mo ago
Who it's for

Builders who want their agent to edit Word documents, leave comments, and keep tracked changes inside an open file.

What it delivers

You can let your agent make Word edits directly and undo each action like a normal Word change.

What it does

Live editing

Edits documents while Word is open instead of forcing a save-close-reopen cycle.

Tracked changes

Creates real Word revisions with your chosen author name.

Per-action undo

Makes each AI edit reversible with a single Ctrl+Z on supported platforms.

Threaded comments

Adds, replies to, resolves, and deletes comments in Word.

Cross-platform document tools

Reads and edits .docx files without Word installed for batch and file-based work.

Layout and reference tools

Handles page setup, headers, bookmarks, equations, cross-references, and layout checks.

How to get it

  1. 1Run
    pip install word-mcp-live
  2. 2Or install from source
    git clone https://github.com/ykarapazar/word-mcp-live.git
    cd word-mcp-live
    pip install -e .

README

Install in Cursor

word-mcp-live

The only MCP server that edits Word documents while they're open

Live editing · Tracked changes · Per-action undo · 124 tools · Cross-platform

PyPI Python 3.11+ License: MIT Platform: Windows + macOS/Linux


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

  • AI can discuss your document but can't touch it
  • You copy-paste between AI and Word, losing formatting
  • Track changes? You do those manually after the fact
  • Every edit means save → close → process → reopen

With word-mcp-live

  • "Add a tracked change replacing ABC Corp with XYZ Ltd" — done
  • Changes appear live in your open Word document
  • Every AI edit is one Ctrl+Z away
  • Real tracked changes with your name, not XML hacks

See it in action

https://github.com/user-attachments/assets/fbb09af4-1e25-4e49-94d0-45b363278810

What Sets This Apart

  • Live editing — Edit documents while they're open in Word. No save-close-reopen cycle.
  • Full undo — Every AI action is a single Ctrl+Z. Made a mistake? Just undo it.
  • Native tracked changes — Real Word revisions with your name, not XML hacks.
  • Threaded comments — Add, reply, resolve, and delete comments like a human reviewer.
  • Layout diagnostics — Detects formatting problems before they become print disasters.
  • Equations & cross-references — Insert math formulas and auto-updating references.
  • 124 tools — The most comprehensive Word MCP server available.

Quick Start

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 .

Client Installation

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "word": {
      "command": "uvx",
      "args": ["word-mcp-live"],
      "env": {
        "MCP_AUTHOR": "Your Name",
        "MCP_AUTHOR_INITIALS": "YN"
      }
    }
  }
}
Claude Code

Add to your .mcp.json:

{
  "mcpServers": {
    "word": {
      "command": "uvx",
      "args": ["word-mcp-live"],
      "env": {
        "MCP_AUTHOR": "Your Name",
        "MCP_AUTHOR_INITIALS": "YN"
      }
    }
  }
}
Cursor

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"
      }
    }
  }
}
VS Code / Copilot

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"
        }
      }
    }
  }
}
Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "word": {
      "command": "uvx",
      "args": ["word-mcp-live"],
      "env": {
        "MCP_AUTHOR": "Your Name",
        "MCP_AUTHOR_INITIALS": "YN"
      }
    }
  }
}
Docker
{
  "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_AUTHOR sets your name on tracked changes and comments (default: "Author"). MCP_AUTHOR_INITIALS sets comment initials.

Two Modes

Works everywhereLive editing (Word open)
What it doesCreate and edit saved .docx filesEdit documents live while you work in Word
PlatformWindows, macOS, LinuxWindows (COM) and macOS (JXA)
UndoFile-level savesPer-action Ctrl+Z (Windows); per-operation undo (macOS)
Best forBatch processing, document generationInteractive editing, formatting, review

Both modes work together. The AI picks the right one for the task.

macOS Live Editing (New in v1.5.0)

Live tools now work on macOS via JavaScript for Automation (JXA). Same tool names, same parameters — the server detects your platform and uses the right automation backend.

FeatureWindowsmacOS
Text read/write/find/replaceCOMJXA
Formatting (bold, font, style)COMJXA
Track changes & revisionsCOMJXA
Comments (add, delete, list)COMJXA
Tables (read, write, add rows)COMJXA
Page layout, headers, bookmarksCOMJXA
Equations, cross-referencesCOMJXA
Threaded comment repliesCOMNot available
Comment resolve/unresolveCOMNot available
Undo history inspectionCOMNot available
WatermarksCOMNot available

Configuration

VariableDefaultDescription
MCP_AUTHOR"Author"Author name for tracked changes and comments
MCP_AUTHOR_INITIALS""Author initials for comments
MCP_TRANSPORTstdioTransport type: stdio, sse, or streamable-http
MCP_HOST0.0.0.0Host to bind (for SSE/HTTP transports)
MCP_PORT8000Port to bind (for SSE/HTTP transports)

For remote deployment, see RENDER_DEPLOYMENT.md.

Example Prompts

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"

Usage Examples

Example 1: Read a document (cross-platform)

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
}

Example 2: Live editing with tracked changes (Windows)

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".

Example 3: Add a comment anchored to text (cross-platform)

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.

Tool Reference

124 tools across two modes — see the complete tool reference for details.

CategoryCount
Cross-platform (python-docx)80
Windows Live (COM automation)44
macOS Live (JXA automation)40 (of the 44 live tools)

Requirements

  • Python 3.11+
  • python-docx, fastmcp, msoffcrypto-tool (installed automatically)
  • Windows Live tools: Windows 10/11 + Microsoft Word + pywin32 (installed automatically)
  • macOS Live tools: macOS + Microsoft Word for Mac (uses built-in JXA — no extra dependencies)

The cross-platform tools work without Word installed — only python-docx is needed.

Contributing

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.

Acknowledgments

Built on top of GongRzhe/Office-Word-MCP-Server by GongRzhe (MIT License).

Additional libraries: python-docx · FastMCP · pywin32

Privacy

This server runs entirely on your local machine. No data is collected, transmitted, or stored. See the full Privacy Policy.

Support

License

MIT License — see LICENSE for details.

Star History

Star History ChartStar History Chart

Files in the repo

Repository payload24 top-level entries
  • .github
  • office_word_mcp_server
  • tests
  • word_document_server
  • __init__.py
  • .gitignore
  • .mcpbignore
  • CHANGELOG.md
  • CONTRIBUTING.md
  • Dockerfile
  • LICENSE
  • manifest.json
  • PRIVACY.md
  • pyproject.toml
  • README.md
  • RENDER_DEPLOYMENT.md
  • requirements.txt
  • server.json
  • setup_mcp.py
  • smithery.yaml
  • test_formatting.py
  • TOOLS.md
  • uv.lock
  • word_mcp_server.py

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More connectors

okf-memory/
okf-agent-memory

Git-native persistent memory for AI coding agents. Implements Google OKF v0.2 with sub-300µs in-memory BM25 search, embedded MCP server, and progressive disclosure. Slashes token bloat by 80% with zero external databases or dependencies. Built in pure Go.

547

Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors

62k
1 add

Minimal Coding Agent Harness on MCP for ChatGPT, Claude, Hermes, Grok Bot, OpenClaw

4.6k

Fast and Accurate Code Search for Agents. Uses 99% fewer tokens than grep+read

6k

The go-to web for your AI coding agent — local-first search, fetch, crawl & research over MCP. No API keys, no cloud, $0/query. Public beta.

5.2k
ComposioHQ/
composio

Composio powers 1000+ toolkits, tool search, context management, authentication, and a sandboxed workbench to help you build AI agents that turn intent into action.

30k