---
title: mcwaddams
description: MCP server for Microsoft Office document processing. Named for Milton Waddams, who was relocated to the basement with boxes of legacy documents.
template: splash
hero:
tagline: "I was told there would be document extraction."
image:
file: ../../assets/stapler.svg
actions:
- text: Get Started
link: /installation/
icon: right-arrow
variant: primary
- text: View on GitHub
link: https://github.com/ryanmalloy/mcwaddams
icon: external
variant: minimal
---
import { Card, CardGrid, LinkCard } from '@astrojs/starlight/components';
## The Situation
You have Office documents. Lots of them. Some are modern `.docx` files. Others are `.doc` files from 1997 that predate Unicode. Your AI agent needs to read them, but native PDF-to-text tools just stare blankly.
**mcwaddams** handles what nobody else wants to touch.
Extract text, tables, images, metadata. Analyze structure. Convert to Markdown. Index for on-demand fetching.
`.doc`, `.xls`, `.ppt` — the formats everyone forgot about until they need them. We didn't forget.
When python-docx chokes, mammoth steps in. When openpyxl fails, pandas takes over. No silent failures.
Index once, fetch chapters/sheets/slides on demand. Keep your context window manageable.
---
## Quick Install
```bash
# With uvx (recommended)
uvx mcwaddams
# Add to Claude Code
claude mcp add mcwaddams "uvx mcwaddams"
```
---
## Documentation Structure
This documentation follows the [Diátaxis framework](https://diataxis.fr/):
---
## TPS Reports
> *"Did you get the memo about the TPS reports?"*
We take testing seriously. Check out our [Test Dashboard](/tps/dashboard/) for live results, or browse the [Torture Tests](/tps/torture/) where we threw 301 random Office documents at mcwaddams.
**Result:** 99.3% success rate. The 2 failures were empty/corrupt files.
---
Named for Milton Waddams, who was relocated to the basement with the legacy documents.
"I could set the building on fire..."