pdfmux
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GEMINI_API_KEY | No | Google Gemini API key for LLM extraction (required for pdfmux[llm]) | |
| GOOGLE_API_KEY | No | Alternative environment variable for Gemini API key |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_pdf_metadataA | Get PDF metadata instantly — page count, file size, document type, and whether it has tables. No extraction performed. Use this first to decide which tool to call next: convert_pdf for full text, analyze_pdf for quality audit, or extract_structured for tables. |
| convert_pdfA | Convert a PDF to AI-readable Markdown. Automatically detects the PDF type and picks the best extraction method. Returns confidence score and warnings when extraction is limited. |
| analyze_pdfA | Quick PDF triage — classify type and audit page quality without full extraction. Returns page count, type detection, per-page quality breakdown, and estimated extraction difficulty. Much cheaper than convert_pdf for initial assessment. |
| batch_convertC | Convert all PDFs in a directory to Markdown. Returns a summary with per-file results. |
| extract_structuredA | Extract structured data from a PDF — tables as JSON, key-value pairs, and optionally map to a JSON schema. Returns tables with headers/rows, detected key-value pairs with auto-normalization (dates, amounts, rates), and schema-mapped output if a schema is provided. |
| extract_streamingA | Stream extraction events for a PDF as NDJSON. Use for large documents (100+ pages) where waiting for the full extraction is impractical. The response body is newline-delimited JSON with one object per line: The first event is always |
| verify_extractionA | Audit an extraction of a PDF for silently-dropped pages — the failure where an extractor returns nothing for a page that has real text while reporting success. Pass extracted_text with another engine's output (Reducto, Mistral OCR, LlamaParse, Docling, an in-house parser — as JSON, Markdown, or plain text) to certify THAT engine against the source PDF; omit it to have pdfmux extract the document itself and certify its own read. Returns the per-page audit — each page marked usable / silently-empty / recovered / review / unverifiable — the "N of M pages silently dropped" headline, and an overall PASS/REVIEW/FAIL verdict with a tamper-evident signature. Reuses pdfmux's own audit pass as the ground truth. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/NameetP/pdfmux'
If you have feedback or need assistance with the MCP directory API, please join our Discord server