office-oxide-mcp-rust-document-processor
Rust-native MCP server for Office document processing (Excel, Word, PowerPoint, PDF) with sub-millisecond performance
来源信息
- 仓库
- reason-machines/mcp-skills
- 最近来源活动
- 2026年6月2日 07:06
- 检测到的 SKILL.md 语言
- 英语
- 星标
- 7
- 分支
- 3
安装方式
默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。
检查来源文件
决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。
正在显示 SKILL.md
SKILL.md
来源说明 · 只读预览- name
- office-oxide-mcp-rust-document-processor
- description
- Rust-native MCP server for Office document processing (Excel, Word, PowerPoint, PDF) with sub-millisecond performance
- triggers
- ["process office documents with rust","read and write excel word powerpoint files","fill pdf forms programmatically","generate office documents from data","extract data from office files","create xlsx docx pptx files with rust","automate office document workflows","convert office documents to json markdown"]
# office-oxide-mcp-rust-document-processor
> Skill by [ara.so](https://ara.so) — MCP Skills collection.
## Overview
`office-oxide-mcp` is a Rust-native MCP (Model Context Protocol) server for processing Office documents (Excel, Word, PowerPoint, PDF). It provides sub-millisecond performance for reading, writing, and manipulating office files locally without external dependencies. Think of it as an open-source alternative to Aspose with native Rust performance.
**Key capabilities:**
- **Read**: Extract content from XLSX, DOCX, PPTX, PDF to JSON/Markdown/Text/Chunks
- **Write**: Create and modify Excel spreadsheets, Word documents, PowerPoint presentations
- **PDF Forms**: Fill AcroForm/XFA fields, overlay text at coordinates, analyze layout
- **Skills System**: Pre-built templates for invoices, reports, dashboards, pitch decks
- **Coherence Engine**: Maintain consistency across linked cells and documents
**Performance**: ~10-50× faster than Python equivalents (openpyxl, python-docx, etc.)
## Installation
### Install Binary
```bash
cargo install office-oxide-mcp
```
Or download from [GitHub Releases](https://github.com/Aimino-Tech/office-oxide-mcp/releases).
### Configure MCP Client
**Claude Desktop** (`~/Library/Application Support/Claude/claude_desktop_config.json`):
```json
{
"mcpServers": {
"office": {
"command": "office-oxide-mcp",
"args": ["--transport", "stdio"]
}
}
}
```
**Cursor** (`~/.cursor/config.json`):
```json
{
"mcpServers": {
"office-oxide-mcp": {
"command": "office-oxide-mcp",
"args": ["--transport", "stdio"]
}
}
}
```
**VS Code Copilot** (`.vscode/mcp.json`):
```json
{
"servers": {
"office-oxide-mcp": {
"command": "office-oxide-mcp",
"args": ["--transport", "stdio"]
}
}
}
```
### Build from Source
```bash
git clone https://github.com/Aimino-Tech/office-oxide-mcp.git
cd office-oxide-mcp
cargo build --release
# Binary at target/release/office-oxide-mcp
```
## Core MCP Tools
### Document Information
**`list_formats`** - List all supported formats:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "list_formats"
},
"id": 1
}
```
**`get_document_info`** - Get file metadata:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "get_document_info",
"arguments": {
"file_path": "/path/to/document.xlsx"
}
},
"id": 2
}
```
### Reading Documents
**`office_read`** - Read document content:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "office_read",
"arguments": {
"file_path": "/path/to/data.xlsx",
"output_format": "json"
}
},
"id": 3
}
```
**Output formats**: `json`, `markdown`, `text`, `chunks` (for RAG embeddings)
## Excel Operations
### Create Spreadsheet
**`office_create_xlsx`** - Create new Excel file:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "office_create_xlsx",
"arguments": {
"file_path": "/path/to/output.xlsx",
"sheet_name": "Q1 Revenue"
}
},
"id": 4
}
```
### Write Data
**`office_write_cell`** - Write single cell:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "office_write_cell",
"arguments": {
"file_path": "/path/to/output.xlsx",
"sheet_name": "Q1 Revenue",
"cell": "A1",
"value": "Revenue",
"format": "bold"
}
},
"id": 5
}
```
**`office_write_range`** - Write range of cells:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "office_write_range",
"arguments": {
"file_path": "/path/to/output.xlsx",
"sheet_name": "Q1 Revenue",
"start_cell": "A2",
"data": [
["Jan", 120000, 95000],
["Feb", 135000, 102000],
["Mar", 148000, 110000]
]
}
},
"id": 6
}
```
### Formatting
**`office_format_range`** - Apply formatting:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "office_format_range",
"arguments": {
"file_path": "/path/to/output.xlsx",
"sheet_name": "Q1 Revenue",
"range": "B2:C4",
"format": {
"number_format": "$#,##0.00",
"bold": false,
"font_size": 11
}
}
},
"id": 7
}
```
### Charts
**`office_create_chart`** - Create chart:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "office_create_chart",
"arguments": {
"file_path": "/path/to/output.xlsx",
"sheet_name": "Q1 Revenue",
"chart_type": "column",
"data_range": "A1:C4",
"title": "Quarterly Revenue vs Cost",
"position": "E2"
}
},
"id": 8
}
```
**Chart types**: `column`, `bar`, `line`, `pie`, `scatter`, `area`
### Sheet Management
**`office_add_sheet`** - Add worksheet:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "office_add_sheet",
"arguments": {
"file_path": "/path/to/output.xlsx",
"sheet_name": "Q2 Revenue"
}
},
"id": 9
}
```
**`office_merge_cells`** - Merge cells:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "office_merge_cells",
"arguments": {
"file_path": "/path/to/output.xlsx",
"sheet_name": "Q1 Revenue",
"range": "A1:D1"
}
},
"id": 10
}
```
## Word Operations
### Create Document
**`office_create_docx`** - Create Word document:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "office_create_docx",
"arguments": {
"file_path": "/path/to/report.docx",
"title": "Annual Business Report 2024"
}
},
"id": 11
}
```
### Write from Markdown
**`office_write_docx_from_md`** - Convert Markdown to DOCX:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "office_write_docx_from_md",
"arguments": {
"file_path": "/path/to/report.docx",
"markdown": "# Executive Summary\n\nQ1 2024 revenue increased **23%** to $1.2M.\n\n## Key Metrics\n\n- Revenue: $1,200,000\n- Growth: 23%\n- Customers: 450"
}
},
"id": 12
}
```
### Add Elements
**`office_add_table`** - Insert table:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "office_add_table",
"arguments": {
"file_path": "/path/to/report.docx",
"rows": [
["Metric", "Q1", "Q2", "Q3"],
["Revenue", "$1.2M", "$1.4M", "$1.6M"],
["Profit", "$320K", "$410K", "$520K"]
],
"style": "grid"
}
},
"id": 13
}
```
**`office_add_image`** - Insert image:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "office_add_image",
"arguments": {
"file_path": "/path/to/report.docx",
"image_path": "/path/to/chart.png",
"width": 400,
"height": 300
}
},
"id": 14
}
```
## PowerPoint Operations
### Create Presentation
**`office_create_pptx`** - Create PowerPoint:
```json
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "office_create_pptx",
"arguments": {
"file_path": "/path/to/deck.pptx",
在 GitHub 查看这个 SKILL.md 很大,SkillsMP 这里只预览前一段内容。 在 GitHub 查看