PDF Content Search MCP

PDF Content Search MCP

MCP bridge for PDF Content Search — full-text PDF search with Apple Vision OCR across thousands of documents in under a second from Claude, Cursor, or any MCP client. Advanced filters (date, category, sender, amount), wildcards, boolean operators. Bridge open-source (MIT), PDF Content Search app is commercial with free iOS+Android companion scanner apps.

Category
Visit Server

README

PDF Content Search MCP Server

Swift Platform License MCP juergenkoller-software/pdf-content-search-mcp MCP server

Full-text PDF search + OCR for Claude, Cursor, and any MCP client.

This is the official Model Context Protocol bridge for PDF Content Search — a native macOS app that indexes thousands of PDFs (including scanned ones via Apple Vision OCR) and finds anything in under a second.

You need the PDF Content Search app installed and running. This MCP server is a stdio→HTTP bridge — the index, OCR engine, and search live in the app. Get PDF Content Search at store.juergenkoller.software/apps/pdf-content-search.


What you can do

"Claude, find every invoice from Telekom in 2024 across all my PDFs and list amount + date."

"Cursor, search 'data processing agreement' across my contracts folder, return the matching PDF + page number."

The app exposes search, filter, OCR, indexing, and document-metadata tools through MCP. Search results include page numbers, highlighted snippets, and bounding-box coordinates from OCR. Full tool list is announced by the server on tools/list after initialize.


Installation

Prerequisites

  1. macOS 12 (Monterey) or later
  2. PDF Content Search app installed and runningget it here (one-time purchase €89.99, 30-day free trial, includes free iOS + Android scanner companion apps)
  3. Swift 5.9+ (Xcode 15+) if building from source

Build from source

git clone https://github.com/juergenkoller-software/pdf-content-search-mcp.git
cd pdf-content-search-mcp
swift build -c release
# Binary: .build/release/pdf-content-search-mcp

Universal binary (for shipping inside the app bundle):

swift build -c release --arch arm64 --arch x86_64

Already inside the app

If you have PDF Content Search installed, the bridge ships inside the app bundle at Contents/Resources/pdf-content-search-mcp. Use the "Set up Claude Desktop" button in the app to auto-configure Claude Desktop with the right path and token — that's the recommended path for end users.

This repo is the source code for that bundled bridge, kept open so you can audit it, fork it, or run it under your own sandbox.


Configuration

Claude Desktop

{
  "mcpServers": {
    "pdf-content-search": {
      "command": "/path/to/pdf-content-search-mcp",
      "env": {
        "PDF_CS_TOKEN": "your-token-here",
        "PDF_CS_PORT": "44477"
      }
    }
  }
}

Get PDF_CS_TOKEN from PDF Content Search → Settings → API Server, or use the in-app "Set up Claude Desktop" button.

Claude Code

claude mcp add pdf-content-search /path/to/pdf-content-search-mcp \
  --env PDF_CS_PORT=44477 \
  --env PDF_CS_TOKEN=your-token-here

Cursor / other MCP clients

Same pattern — stdio MCP server.


Environment variables

Variable Default Description
PDF_CS_TOKEN (none) Bearer token matching the app's API Server token (required)
PDF_CS_PORT 44477 Port of the app's API server
PDF_CS_HOST 127.0.0.1 Host to reach the app

Protocol behavior

  • Newline-delimited JSON on stdin/stdout (MCP stdio transport).
  • Each line is POSTed to the app's /mcp endpoint verbatim.
  • The first response's Mcp-Session-Id header is cached and sent with every subsequent request, so session state survives across messages.
  • Notifications (requests without id) expect HTTP 202 and produce no stdout.
  • Transport errors are turned into JSON-RPC error responses (code -32000 "Cannot reach PDF Content Search") so the client surfaces a meaningful message instead of hanging.
  • HTTP 401 → JSON-RPC error -32001 with a hint to rerun the setup.
  • HTTP 404 on an established session drops the cached ID and tells the client to re-initialize.

How it works

┌────────────────┐  JSON-RPC stdio   ┌────────────────┐  HTTP+Bearer   ┌────────────────────┐
│  Claude/Cursor │ ───────────────►  │ pdfcs-mcp      │ ─────────────► │ PDF Content Search │
│  (MCP client)  │ ◄───────────────  │   (this repo)  │ ◄───────────── │  (port 44477)      │
└────────────────┘                   └────────────────┘                └────────────────────┘

PDF Content Search owns the index (full-text + OCR + extracted metadata), the AI-naming pipeline, the iOS/Android sync, and the search engine. This bridge keeps the stdio MCP transport open-source so you can audit the wire format independently.


About PDF Content Search

PDF Content Search replaces complex folder structures with lightning-fast full-text search. Highlights:

  • One-time purchase — €89.99, no subscription
  • Full-text search across thousands of PDFs in under a second
  • OCR text recognition — Apple Vision Framework, makes scans searchable
  • AI file naming — phone photo of invoice becomes 250401 Invoice Telekom.pdf
  • Free companion apps — iOS and Android scanner apps included
  • Encrypted sync to Mac
  • Advanced filters — date, category, sender, amount; boolean operators; wildcards
  • Spotlight + iCloud Drive integration
  • MCP server (this repo) + REST API
  • Made for offices, law firms, accountants — anyone with lots of documents

Get PDF Content Search at store.juergenkoller.software


License

MIT — see LICENSE. Bridge open source; the PDF Content Search app is commercial.

Issues & support

Built by Juergen Koller Software GmbH.

Recommended Servers

playwright-mcp

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

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.

Official
Featured
Python
graphlit-mcp-server

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.

Official
Featured
TypeScript
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured