Last week I wrote about why I started building the MCP Office Automation Suite — the renovation project, the Excel jungle, the idea that had been floating around too long. This week I want to show you what actually exists: four working MCP servers, what each one does, and how the whole thing fits together as a developer-first automation layer for Microsoft Office.

This is the "under the hood" post. No philosophy — just the real picture of what's been built and how it works.


1. What the Suite Actually Is

The MCP Office Automation Suite is a monorepo of four Python stdio MCP servers. Each one wraps a Microsoft Office application — Excel, Outlook, PowerPoint, and Word — and exposes its capabilities as governed MCP tools that any MCP-compatible client can call. Right now that means VS Code Copilot, Claude Desktop, and any client that speaks the MCP stdio protocol.

The architecture is deliberately local-first. The servers run on your machine, talk to your local Office installation, read and write files on your local filesystem. There's no cloud, no API key for the Office layer, no sending your spreadsheet data anywhere. What travels over the wire is MCP JSON-RPC messages between client and server — nothing else.

Every server follows the same security pattern: file access is restricted to paths you explicitly allowlist via environment variables, write operations require both an environment flag and an explicit confirm parameter on the tool call, and stdout carries only MCP protocol traffic — no data leakage through logs.


2. Excel MCP — The Lead Package

Excel MCP is the flagship — the package that's furthest along and the one I'm leading with publicly. At v0.8.0 it has 64 tools covering the full lifecycle of working with .xlsx files.

The core path is file-based via openpyxl, which means no Excel installation is required for most operations. You can read sheets, write ranges, create tables, apply formatting, generate charts, validate formulas, and manage named ranges entirely through the file layer. For operations that genuinely need a live Excel instance — PDF export, pivot table refresh, formula recalculation with volatile functions — there's a COM bridge that activates when EXCEL_ENABLE_COM is set and Excel is running.

The flagship workflow looks like this in practice: read structured input data, write it to a template workbook, apply formatting and validation rules, validate the workbook contract before distribution, then export or hand off the file. That sequence is reproducible, auditable, and scriptable — which is the whole point. The difference between "someone built a spreadsheet" and "a governed process produced a validated artifact."

One feature worth highlighting for developers: the dynamic array formula support. Excel 365 spill functions like FILTER, XLOOKUP, LET, and SEQUENCE require specific OOXML metadata that openpyxl doesn't emit by default. excelmcp patches this automatically after every save, so your nested LET/FILTER formulas survive the round-trip without Excel's repair dialog appearing on first open. The fix lives in a post-save OOXML patcher that injects the right metadata before the file hits disk — a genuinely tricky problem that took a while to solve correctly.


3. The Other Three Servers

Outlook MCP is the second most mature package — 46 tools covering the full email lifecycle: read, search, reply, forward, draft, send (send-gated), calendar events, contacts, tasks, and categories. What makes it more than just an email wrapper is the MailRepo layer: a local SQLite store that indexes your mailbox for sub-second search via FTS5 full-text search, semantic embeddings with multiple model backends, and a hybrid search that fuses both. The disposition model lets you tag and track conversation threads as governed reference objects — useful for anything where you need a record of what was agreed, with whom, and when.

PowerPoint MCP covers slide operations, shape manipulation, text editing, speaker notes, and image insertion on the python-pptx side — plus COM-backed export, an output contract validation system where you define what a valid deck looks like and the tool checks it, and an evidence bundle builder. 44 tools, 692 tests. The render-check-iterate workflow exports, reviews, fixes, and re-exports with hashed change detection so only modified slides get re-exported.

Word MCP is the most recently expanded package — 39 tools for reading and writing Word documents via python-docx, with COM extensions for PDF export and tracked-changes management. The cross-platform story is better here: the core python-docx path works on macOS and Linux with no Word required, which makes it useful outside a Windows environment.


4. How to Think About the Security Model