mcpField
O
ocr

ocr

Remote
pennyocr.comProductivity0Updated 1d ago

About ocr

PennyOCR is a hosted MCP server for agents and clients that need to extract text from PDFs and images by URL. It returns Markdown or plain text, with page citations, exact cost estimates, and spending caps.

Key features

  1. 01PDF and image text extraction
  2. 02Markdown output with tables
  3. 03Plain-text output
  4. 04Exact page and cost estimates
  5. 05Pre-processing spend caps

Use cases

  1. 01Extracting text from linked documents
  2. 02Preserving tables from PDFs
  3. 03Estimating processing costs before reading
  4. 04Limiting automated document-processing spend

MCP support

A hosted, stateless MCP server exposes `read_document`, `estimate_cost`, and `check_balance` over Streamable HTTP. Clients can connect to `https://mcp.pennyocr.com` using an API key.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://mcp.pennyocr.com
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

All endpoints
Streamable HTTPhttps://mcp.pennyocr.comAuth required

Tools

2
ParameterTypeRequiredDescription
urlstringYeshttp(s) URL of the PDF or image
pagesstringNoPage range like '1-20,25'. Default: all pages.
outputenumNoOutput format. Default markdown.markdown | text
max_pagesintegerNoRefuse (with the numbers) if selection exceeds this many pages.
max_cost_usdnumberNoRefuse (with the numbers) if the run would cost more than this.

Details

From the project README

🪙 PennyOCR MCP server

A remote Model Context Protocol server that gives any agent document-reading eyes: PDFs and images by URL → markdown (tables preserved) or plain text, with exact cost reporting and hard spend caps.

Hosted at https://mcp.pennyocr.com — nothing to install:

{
  "mcpServers": {
    "pennyocr": {
      "url": "https://mcp.pennyocr.com",
      "headers": { "Authorization": "Bearer pk_live_..." }
    }
  }
}

Keys are free (first 100 pages free) at pennyocr.com/dashboard. Clients that can't set headers: https://mcp.pennyocr.com/?key=pk_live_...

Tools

ToolInputOutput
read_document{url, pages?, output?, max_pages?, max_cost_usd?}{content, pages, cost_usd, citations[]}
estimate_cost{url, pages?}page count + exact cost — free
check_balance{}remaining credits + free-tier allowance — free

The cost caps refuse before any processing, with the numbers — so autonomous agents can reason about spend ("200 pages, $0.15 — proceed") and can never run past a prepaid balance.

Transport

Streamable HTTP (JSON-RPC 2.0 over POST), stateless. This repo is the complete server — a single Cloudflare Worker (worker.js) proxying the PennyOCR API.

Pricing: $0.75 per 1,000 pages · pennyocr.com/pricing.txt · Agent onboarding: pennyocr.com/llms.txt

Cursor plugin

This repository includes a Cursor plugin manifest at .cursor-plugin/plugin.json and a plugin-specific mcp.json. In the plugin configuration, set PENNYOCR_API_KEY to your own API key from https://pennyocr.com/dashboard/. The repository contains only a variable placeholder, never a live key. Document reading uses your PennyOCR credits; use cost estimates and spend caps as appropriate. The separate .mcp.json uses Cursor environment-variable interpolation for direct MCP configuration.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.