Metadata-Version: 2.4
Name: techtenstein-pdf-mcp
Version: 1.0.1
Summary: MCP server for Techtenstein PDF Extract API. Fast PDF text + tables via Claude, Cline, and Cursor.
Project-URL: Homepage, https://apis.techtenstein.com
Project-URL: Documentation, https://pdf.api.techtenstein.com
Project-URL: Repository, https://github.com/sathvic-kollu/techtenstein-pdf-mcp
Author-email: Sathvic Kollu <sathvic777@gmail.com>
License: MIT
Keywords: api,claude,extract,mcp,ocr,pdf,tables,techtenstein
Classifier: Development Status :: 4 - Beta
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.10
Requires-Dist: fastmcp>=0.2.0
Requires-Dist: requests>=2.31.0
Description-Content-Type: text/markdown

# 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
