Original Reddit post

If you’ve tried getting Claude Code to work with Word documents, you’ve probably hit the same walls I did. Anthropic’s built-in docx skill unpacks .docx files into raw XML, and Claude has to edit that XML directly — it’s fragile, error-prone, and eats a huge chunk of your context window just to display the document structure. Python-docx MCP servers are better but still can’t touch a file that’s already open in Word, and formatting still breaks in weird ways. I started with GongRzhe’s Word MCP server which uses python-docx. It was an improvement, but still ate too much context and had its own issues. So I added COM automation on top (pywin32). Windows only since it uses Word’s COM interface, but the original python-docx tools still work cross-platform as fallback. The core idea: Claude controls Word directly through COM while the document is open. No XML parsing, no file locking, no corrupted formatting. Word handles all the rendering and layout, Claude just tells it what to do. 105 tools total, but the ones I use daily: - word_live_format_text — Claude changes fonts, highlights text, adjusts alignment on the fly while the document is open - word_live_insert_text / word_live_delete_text — with full tracked changes support. Every edit shows up as a proper revision with author name and timestamp - word_live_get_page_text — reads specific pages with character offsets, so Claude can target exactly where to edit in a long document without reading the whole thing - word_live_add_comment — adds comments anchored to specific text ranges - word_live_get_paragraph_format — diagnostic tool that dumps font, spacing, alignment, keep_with_next, list info per paragraph. This one alone saved me hours debugging why paragraphs kept jumping pages Every tool call is also wrapped in Word’s UndoRecord, so each Claude operation shows up as a single named entry in Word’s undo stack — “MCP: Format Text”, “MCP: Insert Text”, etc. You can switch over to Word and Ctrl+Z, or just tell Claude “undo the last 3 operations” and it calls word_live_undo. What a typical session looks like: 1. Open a document in Word (I have my Claude.md instruction and permissions so it does this automatically) 2. Tell Claude to review it — highlight issues, add comments, suggest changes with tracked changes on 3. Watch the edits appear in real-time in Word 4. Review like you would any colleague’s work 5. Anything off? Ctrl+Z in Word or tell Claude to undo — each tool call is one undo entry, not a dozen scattered micro-changes I also built a similar COM MCP server for PowerPoint and hooked up an Excel MCP server. Repo: word-mcp-live Wanted to share in case anyone else needs this kind of thing. submitted by /u/yucek

Originally posted by u/yucek on r/ClaudeCode