The only MCP server that edits Word documents while they're open — 114 tools, live editing, tracked changes, per-action undo
SaferSkills independently audited Word Mcp Live (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
<div align="center">
The only MCP server that edits Word documents while they're open
Live editing · Tracked changes · Per-action undo · 124 tools · Cross-platform
</div>
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.
<table> <tr> <td width="50%">
</td> <td width="50%">
</td> </tr> </table>
https://github.com/user-attachments/assets/fbb09af4-1e25-4e49-94d0-45b363278810
pip install word-mcp-liveOr install from source:
git clone https://github.com/ykarapazar/word-mcp-live.git
cd word-mcp-live
pip install -e .<details open> <summary><b>Claude Desktop</b></summary>
Add to your claude_desktop_config.json:
{
"mcpServers": {
"word": {
"command": "uvx",
"args": ["word-mcp-live"],
"env": {
"MCP_AUTHOR": "Your Name",
"MCP_AUTHOR_INITIALS": "YN"
}
}
}
}</details>
<details> <summary><b>Claude Code</b></summary>
Add to your .mcp.json:
{
"mcpServers": {
"word": {
"command": "uvx",
"args": ["word-mcp-live"],
"env": {
"MCP_AUTHOR": "Your Name",
"MCP_AUTHOR_INITIALS": "YN"
}
}
}
}</details>
<details> <summary><b>Cursor</b></summary>
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"
}
}
}
}</details>
<details> <summary><b>VS Code / Copilot</b></summary>
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"
}
}
}
}
}</details>
<details> <summary><b>Windsurf</b></summary>
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"word": {
"command": "uvx",
"args": ["word-mcp-live"],
"env": {
"MCP_AUTHOR": "Your Name",
"MCP_AUTHOR_INITIALS": "YN"
}
}
}
}</details>
<details> <summary><b>Docker</b></summary>
{
"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.
</details>
`MCP_AUTHOR` sets your name on tracked changes and comments (default: "Author"). `MCP_AUTHOR_INITIALS` sets comment initials.| Works everywhere | Live editing (Word open) | |
|---|---|---|
| What it does | Create and edit saved .docx files | Edit documents live while you work in Word |
| Platform | Windows, macOS, Linux | Windows (COM) and macOS (JXA) |
| Undo | File-level saves | Per-action Ctrl+Z (Windows); per-operation undo (macOS) |
| Best for | Batch processing, document generation | Interactive editing, formatting, review |
Both modes work together. The AI picks the right one for the task.
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.
| Feature | Windows | macOS |
|---|---|---|
| Text read/write/find/replace | COM | JXA |
| Formatting (bold, font, style) | COM | JXA |
| Track changes & revisions | COM | JXA |
| Comments (add, delete, list) | COM | JXA |
| Tables (read, write, add rows) | COM | JXA |
| Page layout, headers, bookmarks | COM | JXA |
| Equations, cross-references | COM | JXA |
| Threaded comment replies | COM | Not available |
| Comment resolve/unresolve | COM | Not available |
| Undo history inspection | COM | Not available |
| Watermarks | COM | Not available |
| 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.
124 tools across two modes — see the complete tool reference for details.
| Category | Count |
|---|---|
| Cross-platform (python-docx) | 80 |
| Windows Live (COM automation) | 44 |
| macOS Live (JXA automation) | 40 (of the 44 live tools) |
python-docx, fastmcp, msoffcrypto-tool (installed automatically)pywin32 (installed automatically)The 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.
<a href="https://star-history.com/#ykarapazar/word-mcp-live&Date"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=ykarapazar/word-mcp-live&type=Date&theme=dark" /> <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=ykarapazar/word-mcp-live&type=Date" /> <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=ykarapazar/word-mcp-live&type=Date" /> </picture> </a>
<!-- mcp-name: io.github.ykarapazar/word-mcp-live -->
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.