TruePath Office
A local MCP server that lets Claude, Cursor, Codex, or any MCP client work with Office documents on your Mac: evaluate spreadsheet formulas, read/write XLSX and PPTX, extract structured DOCX content, and merge/split/protect PDFs. 100% local, no network calls, no account. 14 tools.
README
TruePath Office — MCP server (truepath-office-mcp)
Let your AI read and edit Office documents locally. Files never leave your Mac.
An MCP server that lets your AI agent — Claude Desktop, Claude Code, Codex, Cursor, Windsurf, or any MCP client — process Word (DOCX), Excel (XLSX), PowerPoint (PPTX) and PDF files on your machine: evaluate spreadsheet formulas, read & write workbooks and slide decks, extract structured DOCX content, and merge / split / protect PDFs.
Built and maintained by Joy Truepath Pte. Ltd., the
team behind the TruePath Office
Mac app (on the Mac App Store). The
engine here (TruePathCore) is the same headless, Foundation-only, zero-
dependency core that ships inside the app — open-sourced for transparency and
standalone use.
Privacy
- 100% local. The server runs on your Mac and makes no network calls.
- No telemetry, no analytics, no phone-home.
- Works fully offline, forever, with no key or account.
Requirements
- macOS 14 (Sonoma) or newer
- Swift 6 / Xcode 16 toolchain (to build) —
xcode-select --installor swift.org
Build
git clone https://github.com/JoyTruepath/truepath-office-mcp.git
cd truepath-office-mcp
swift build -c release
This produces two binaries under .build/release/:
truepath-office-mcp— the MCP stdio servertruepath— a standalone CLI for the same engine
Get the server's absolute path for the config snippets below:
echo "$(pwd)/.build/release/truepath-office-mcp"
Hook it up
Use the absolute path printed above wherever you see /path/to/....
Claude Desktop — ~/Library/Application Support/Claude/claude_desktop_config.json
{ "mcpServers": { "truepath-office": { "command": "/path/to/truepath-office-mcp/.build/release/truepath-office-mcp" } } }
Claude Code
claude mcp add truepath-office -- "/path/to/truepath-office-mcp/.build/release/truepath-office-mcp"
Codex — ~/.codex/config.toml
[mcp_servers.truepath-office]
command = "/path/to/truepath-office-mcp/.build/release/truepath-office-mcp"
Cursor / Windsurf — MCP settings (see each IDE's docs for the file location)
{ "mcpServers": { "truepath-office": { "command": "/path/to/truepath-office-mcp/.build/release/truepath-office-mcp" } } }
Restart the host, then ask your agent something like: "Use truepath-office to read the body text of ~/Documents/report.docx."
Tools (14)
| Tool | Description | Key parameters |
|---|---|---|
evaluate_formula |
Evaluate a spreadsheet formula | formula, data (2D array) |
load_workbook |
Load an XLSX file | path |
save_workbook |
Save an XLSX file | path, sheets |
query_spreadsheet |
Query a cell range | path, sheet?, range? |
load_presentation |
Load PPTX slides | path |
save_presentation |
Save PPTX slides | path, slides |
load_word_metadata |
Load DOCX metadata | path |
read_word_body |
Read DOCX body text | path |
extract_docx_structure |
Parse DOCX into structured JSON (paragraphs / runs / formatting / tables / sections / headers / footers / footnotes) | path |
pdf_info |
Page count & text info | path |
pdf_merge |
Merge multiple PDFs | sources, output |
pdf_split |
Split a PDF at a page number | path, page |
pdf_protect |
Add password protection | path, password |
detect_document_type |
Detect type from extension | extension |
CLI
The same engine is available as a command-line tool:
.build/release/truepath detect xlsx # → Spreadsheet (spreadsheet)
.build/release/truepath formula "=SUM(A1:A3)" ... # evaluate a formula
.build/release/truepath word --extract report.docx # structured DOCX JSON
Run truepath with no arguments for the full command list.
Quick test
printf '%s\n%s\n' \
'{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"t","version":"1"}}}' \
'{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}' \
| .build/release/truepath-office-mcp 2>/dev/null
Architecture
truepath-office-mcp (executable)
└─ TruePathMCPLib (JSON-RPC 2.0 + tool handlers)
└─ TruePathCore (Foundation-only document engine)
truepath (CLI) ──────────────────────────────────────┘
stdin → JSON-RPC 2.0 → MCPServer → ToolHandlers → TruePathCore → result → stdout
stderr → diagnostic logs
Each sub-package (TruePathCore/, TruePathMCP/, TruePathCLI/) keeps its own
Package.swift and test suite; cd <pkg> && swift test runs them in isolation.
License
MIT © Joy Truepath Pte. Ltd.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.