claude-office-skills/office-mcp
MCP server with 39 tools for Word, Excel, PowerPoint, PDF, OCR operations
npx skills add https://github.com/claude-office-skills/skills --skill office-mcp
A complete MCP (Model Context Protocol) server providing 39 tools for Office document operations. Implemented in TypeScript/Node.js with real functionality (not placeholders).
| Tool | Description |
|------|-------------|
| extract_text_from_pdf | Extract text content, supports page selection |
| extract_tables_from_pdf | Extract table data from PDFs |
| merge_pdfs | Merge multiple PDFs into one |
| split_pdf | Split PDF by page ranges |
| compress_pdf | Reduce PDF file size |
| add_watermark_to_pdf | Add text/image watermarks |
| fill_pdf_form | Fill PDF form fields |
| get_pdf_metadata | Get PDF properties and metadata |
| ocr_pdf | OCR on scanned PDFs (multi-language) |
| ocr_image | OCR on image files (PNG, JPG, TIFF, etc.) |
| Tool | Description |
|------|-------------|
| read_xlsx | Read Excel files with sheet/range selection |
| create_xlsx | Create multi-sheet Excel files |
| analyze_spreadsheet | Statistical analysis (min/max/mean/median) |
| apply_formula | Apply Excel formulas to cells |
| create_chart | Generate chart configurations |
| pivot_table | Create pivot tables with aggregation |
| xlsx_to_json | Convert Excel to JSON |
| Tool | Description |
|------|-------------|
| extract_text_from_docx | Extract text from Word documents |
| create_docx | Create DOCX with headings, lists, tables |
| fill_docx_template | Fill templates with {{placeholders}} |
| analyze_document_structure | Analyze headings, tables, word count |
| insert_table_to_docx | Insert tables into documents |
| merge_docx_files | Merge multiple Word documents |
| Tool | Description |
|------|-------------|
| xlsx_to_csv | Convert Excel to CSV |
| csv_to_xlsx | Convert CSV to Excel |
| json_to_xlsx | Convert JSON arrays to Excel |
| docx_to_md | Convert Word to Markdown |
| md_to_docx | Convert Markdown to Word |
| pdf_to_docx | Convert PDF to Word (text extraction) |
| docx_to_pdf | Convert Word to PDF (external tool required) |
| html_to_pdf | Convert HTML to PDF (external tool required) |
| batch_convert | Batch convert multiple files |
| Tool | Description |
|------|-------------|
| create_pptx | Create PowerPoint with themes |
| extract_from_pptx | Extract text and images from PPTX |
| md_to_pptx | Convert Markdown to slides |
| add_slide | Add slides to existing presentations |
| update_slide | Update slide content |
| pptx_to_html | Convert to reveal.js HTML |
| get_pptx_outline | Get presentation structure |
cd mcp-servers/office-mcp
npm install
npm run build
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"office-mcp": {
"command": "/usr/local/bin/node",
"args": ["/path/to/claude-office-skills/mcp-servers/office-mcp/dist/index.js"]
}
}
}
pdf-parse, pdf-lib - PDF operations
tesseract.js - OCR (pure JavaScript, no native binary needed)
xlsx - Excel operations
mammoth, docx - Word operations
docxtemplater, pizzip - Template filling
pptxgenjs, jszip - PowerPoint operations
turndown, marked - Markdown conversion
eng - Englishchi_sim - Simplified Chinesechi_tra - Traditional Chinesejpn - Japanesekor - Koreanfra - Frenchdeu - Germanspa - SpanishTake claude-office-skills/office-mcp from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.
The instructions reference npm.
Without those the skill loads but fails at the first command.