# Techtenstein PDF MCP MCP server that gives your Claude, Cline, or Cursor session the ability to extract text, tables, and metadata from any PDF URL — including scanned PDFs via OCR. Powered by the [Techtenstein PDF Extract API](https://apis.techtenstein.com). ## Tools exposed - `pdf_extract_text(pdf_url, ocr=False)` — Extract all text from a PDF as clean plain text - `pdf_extract_tables(pdf_url)` — Extract all tables as structured row arrays - `pdf_metadata(pdf_url)` — Get title, author, page count, creation date, encryption status ## Install (Claude Desktop) Add to `~/Library/Application Support/Claude/claude_desktop_config.json`: ```json { "mcpServers": { "techtenstein-pdf": { "command": "uvx", "args": ["techtenstein-pdf-mcp"], "env": { "TECHTENSTEIN_API_KEY": "your_key_from_techtenstein.com" } } } } ``` Restart Claude Desktop. `pdf_extract_text`, `pdf_extract_tables`, and `pdf_metadata` will appear as available tools. ## Install (Cline / VS Code) Cline auto-detects MCP servers from your Claude Desktop config. Same setup as above works. ## Install (Cursor) Add to `~/.cursor/mcp.json`: ```json { "mcpServers": { "techtenstein-pdf": { "command": "uvx", "args": ["techtenstein-pdf-mcp"], "env": {"TECHTENSTEIN_API_KEY": "your_key"} } } } ``` ## Get an API key Free tier (50 extractions/day, no card): https://apis.techtenstein.com Paid tiers start at $5/month for 2,000 extractions. ## Example usage Once installed, ask Claude: > "Extract the tables from this earnings report PDF: https://example.com/q4.pdf" Claude will call `pdf_extract_tables` and return a clean structured view of every table on the page. Or for scanned documents: > "This PDF is a scanned invoice. Extract the text: https://example.com/invoice.pdf" Claude will call `pdf_extract_text(pdf_url, ocr=True)` and read the image-based text via OCR. ## Response schema (text mode) ```json { "text": "Full extracted body text...", "page_count": 12, "word_count": 3450, "ms": 240 } ``` ## Response schema (tables mode) ```json { "tables": [ { "page": 3, "rows": [ ["Product", "Q1", "Q2", "Q3", "Q4"], ["Widget A", "1200", "1350", "1420", "1600"] ] } ] } ``` ## Support - Docs: https://apis.techtenstein.com - Issues: https://github.com/sathvic-kollu/techtenstein-pdf-mcp/issues - Email: sathvic777@gmail.com ## License MIT