Office Oxide
FreeNot checkedRust-native MCP server for Office document processing
About
Rust-native MCP server for Office document processing
README
GitHub stars GitHub forks GitHub issues GitHub pull requests
Rust-native MCP server for Office document processing (Excel, Word, PowerPoint, PDF).
Sub-millisecond, local-first, open source — the "open source Aspose."
PDFs are a pain. We live in bureaucratic countries where every form asks for your name, address, and date of birth — over and over. Bank applications, tax forms, insurance claims, government permits, rental agreements. Same fields, different PDFs, endless typing.
Stop filling forms by hand. Let office-oxide-mcp do it in milliseconds — whether it's a simple AcroForm, a complex XFA form, or a flat scanned PDF where you need coordinates. Your LLM reads the form, you approve, it fills. Done.
[!TIP] Be with us!
Join our Discord community to ask questions, share ideas, and get help with office-oxide-mcp. Prefer GitHub? Start a discussion or open an issue. Follow @Aimino-Tech on GitHub for more projects.
Quick Start
cargo install office-oxide-mcp
Or download from GitHub Releases.
Claude Desktop
{
"mcpServers": {
"office": { "command": "office-oxide-mcp", "args": ["--transport", "stdio"] }
}
}
Cursor
{
"mcpServers": {
"office-oxide-mcp": { "command": "office-oxide-mcp", "args": ["--transport", "stdio"] }
}
}
VS Code (Copilot)
{
"servers": {
"office-oxide-mcp": { "command": "office-oxide-mcp", "args": ["--transport", "stdio"] }
}
}
Use Cases
Every document below was generated by office-oxide-mcp — click to download.
| # | Format | Use Case | Skill | Preview |
|---|---|---|---|---|
| 1 | XLSX | Profit & Loss Statement | excel.basic |
![]() |
| 2 | XLSX | Executive KPI Dashboard | excel.basic |
![]() |
| 3 | XLSX | Budget vs Actual Variance | excel.basic |
![]() |
| 4 | XLSX | Balance Sheet with Ratios | excel.basic |
![]() |
| 5 | XLSX | Revenue Forecast | excel.basic |
![]() |
| 6 | XLSX | Cost Analysis | excel.basic |
![]() |
| 7 | DOCX | Invoice | word.invoice |
![]() |
| 8 | DOCX | Annual Business Report | word.report |
![]() |
| 9 | DOCX | IT Service Agreement | word.report |
![]() |
| 10 | DOCX | Digital Strategy Report | word.report |
![]() |
| 11 | Financial Report Export | office_export_pdf |
![]() |
|
| 12 | PPTX | Strategy Consulting Pitch Deck | ppt.deck |
![]() |
| 13 | PPTX | CFO Quarterly Business Review | ppt.deck |
![]() |
| 14 | PPTX | Product Launch Strategy Deck | ppt.deck |
![]() |
| 15 | PPTX | M&A Target Analysis Deck | ppt.deck |
![]() |
| 16 | PPTX | Digital Transformation Roadmap | ppt.deck |
![]() |
Interactive showcase → showcase/use-cases.html with full prompts, JSON-RPC calls, and details.
Tool Overview
| Tool | Description | Inputs |
|---|---|---|
list_formats |
All supported Office formats + capabilities | — |
get_document_info |
File metadata (format, size, readability) | file_path |
office_read |
Read content → JSON / Markdown / Chunks / Text | file_path, output_format |
office_fill_pdf_form |
Fill AcroForm/XFA form fields in a PDF | file_path, output_path, fields |
office_list_pdf_fields |
List all form fields in a PDF with values | file_path |
office_overlay_pdf_text |
Insert text at coordinates on flat PDFs | file_path, output_path, fields |
office_analyze_pdf_layout |
Analyze PDF layout for overlay coordinates | file_path |
increment |
Increment counter (demo) | — |
get_value |
Get current counter value (demo) | — |
Full Suite
AI Reading: to_md, to_json, to_chunks, excel_schema, coherence_check
Excel Write: office_create_xlsx, office_write_cell, office_write_range, office_format_range, office_create_chart, office_create_pivot, office_add_sheet, office_rename_sheet, office_delete_sheet, office_merge_cells, office_set_column_width, office_apply_conditional_format
Word Write: office_create_docx, office_write_docx_from_md, office_replace_text, office_set_style, office_add_table, office_add_image, office_add_header_footer, office_add_toc, office_add_comment, office_accept_changes
PPT Write: office_create_pptx, office_add_slide, office_set_slide_layout, office_add_text_box, office_add_chart, office_add_image
Skills System: skill_run, skill_list, skill_validate, skill_register
Coherence Engine: office_propagate_edit, office_check_consistency
PDF: office_read (markdown/text/json/chunks), office_fill_pdf_form, office_list_pdf_fields, office_overlay_pdf_text, office_analyze_pdf_layout, office_export_pdf
Architecture
┌────────────────────────────────────────────────────────┐
│ Tool Layer │
│ AI Reading · Excel/Word/PPT · PDF · Skills · Coherence│
├────────────────────────────────────────────────────────┤
│ Format Engines │
│ calamine · rust_xlsxwriter · rdocx · office_oxide │
│ 6 Office formats + PDF (lopdf) │
├────────────────────────────────────────────────────────┤
│ ZIP + XML + PDF Layer │
│ quick-xml (zero-copy) · zip · zlib-ng (SIMD) · lopdf│
├────────────────────────────────────────────────────────┤
│ Semantic Layer │
│ Entity DAG · BFS propagation · Stale detection │
└────────────────────────────────────────────────────────┘
Performance Benchmarks
| Operation | Python | office-oxide-mcp | Speedup |
|---|---|---|---|
| 10M cell XLSX read (openpyxl) | 239s | ~25s | ~10× |
| 100K cell XLSX write (openpyxl) | 1.8s | 152ms | ~12× |
| DOCX read mean (6K docs) | 11.8ms | 0.8ms | ~14× |
| PPTX read mean (323 slides) | 32.5ms | 0.7ms | ~46× |
| MCP tool call (FastMCP) | 3ms | 0.38ms | ~6× |
| Cold start | 1-5s | <50ms | ~100× |
| Memory (idle) | 42.7MB | <2MB | ~20× |
Build
cargo build # Debug
cargo build --release # Release
cargo clippy # Lint
cargo doc --open # Docs
Contributing
See CONTRIBUTING.md. All contributions welcome.
License
MIT OR Apache-2.0 — see LICENSE.
Install Office Oxide in Claude Desktop, Claude Code & Cursor
unyly install office-oxide-mcpInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add office-oxide-mcp -- npx -y @aimino/opendocswork-mcpFAQ
Is Office Oxide MCP free?
Yes, Office Oxide MCP is free — one-click install via Unyly at no cost.
Does Office Oxide need an API key?
No, Office Oxide runs without API keys or environment variables.
Is Office Oxide hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Office Oxide in Claude Desktop, Claude Code or Cursor?
Open Office Oxide on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Office Oxide with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs

















