An MCP server that connects Claude and local LLMs to Apple's native on-device frameworks. OCR, PDF reading, entity detection, summarization, classification — all on your machine. No cloud. No API keys.
When your agent calls any of these, the processing runs through Apple's native frameworks — not through tokens, not through a cloud API.
Apple Vision OCR on any image or PDF. Hand it a PDF and it rasterizes and reads every page (or one via `page`). PNG, JPG, HEIC, TIFF, PDF. ~0.2s/page.
Pull a PDF's embedded text layer instantly via PDFKit — no OCR, exact, sub-second. The fast path for digital PDFs; falls back to `ocr` for scans.
NSDataDetector extracts phone numbers, URLs, dates, and addresses from freeform text. Deterministic — no model involved.
Structured entity extraction from any text. Returns a JSON object. Optionally specify which fields you want.
Text classification against a label set you define. Returns a single label from your list.
On-device summarization via Apple's FoundationModels framework. Fast, private, no tokens consumed.
On-device drafting, rewriting, and short-form answers. Accepts an optional system instruction.
Structured OCR via Apple Vision. Returns full transcript plus tables as rows and cells. Unlike `ocr`, layout survives — use this for charts, forms, invoices, and multi-column docs. Takes images or PDFs. (Requires macOS 26.)
Built for anyone running agent workflows on a Mac who'd rather not route every document task through a cloud API.
You're running Ollama, LM Studio, or a local Claude setup. Your Mac has serious on-device intelligence built in. This server connects the two.
Route document parsing and entity detection to Apple Intelligence. The result comes back as tool output — no tokens consumed on those operations.
Every call — OCR, extraction, summarization — runs through Apple's on-device frameworks. Zero data leaves your Mac. Works fully air-gapped.
Standard MCP server. Drop it into Claude Desktop, Voical, or any MCP-compatible local setup. Open source — fork it, extend it, or open a PR.
Honest about limitations. Not every tool needs Apple Intelligence — but some do.
One honest note: if you're driving this from a cloud assistant (e.g. Claude Desktop), tool results return to that cloud conversation. For a fully air-gapped pipeline, drive it from a local client — Voical does this natively.
Depending on your setup, there are two ways to run this.
Claude handles the reasoning. Apple Intelligence handles the heavy lifting — OCR, extraction, classification — without consuming tokens. Tool results return to the cloud conversation.
Voical drives this MCP from a local model with persistent memory. No cloud conversation. No data anywhere but your Mac. The fully offline path. Learn more →
Both paths are valid. Pick based on whether frontier reasoning or complete data sovereignty matters more to you.
Detailed use-case cards, tool chain combos, token savings, and setup Q&A.
If it's useful, a star helps. If it's broken for your setup, open an issue. That's how this gets better.
★ Star on GitHub →