{"name":"com.pdfintact/pdfintact","slug":"pdfintact","title":null,"description":"Extract tables, text and formulas from PDFs, including scanned pages and broken text layers.","url":"https://mcp.market/server/pdfintact","rating":null,"grade":"C","score":63,"certified":false,"status":"active","category":"scraping","tags":["scraping"],"presence":{"score":8,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"uptime":{"percent":100,"checks":8,"ok":8,"last_checked_at":"2026-09-21T08:15:39.712Z","last_ok_at":"2026-09-21T08:15:39.712Z","latency_ms":932},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":null,"website":"https://en.pdfintact.com/mcp-server/","version":"1.0.0","remotes":[{"type":"streamable-http","url":"https://mcp.pdfintact.com/mcp"}],"packages":[],"tools":[{"name":"convert_pdf","description":"Convert a PDF into structured content (tables, charts, formulas, headings, body text) using a two-stage pipeline (layout detection, then a vision-language model) rather than a single VLM call on the raw PDF -- calling a VLM on a raw PDF directly is a known-unreliable pattern for numeric tables.\n\nMeasured accuracy (500-page real-world benchmark of government/corporate reports, ~51,000 table values checked): tables 95.2% digit-exact, body text 88.8%. This tool reads PDFs a VLM cannot read directly, including scanned pages and PDFs with corrupted/garbled text layers (common in older Japanese academic PDFs). For scanned Japanese documents the numbers hold up (99.4% on the same benchmark). For scanned Arabic, body text does NOT: characters are dropped mid-sentence and quantities can turn into different quantities, so body blocks from scanned Arabic are always flagged confidence:\"estimated\" -- tables in the same documents stayed exact in our measurement. Strong on Japanese-language documents specifically; the accuracy figures above were measured on Japanese material and are not a claim about every language. Chart values are extracted but are best-effort estimates (about 52% exact match, excluding axis tick labels) and are always flagged confidence:\"estimated\" in the result -- do not treat estimated chart numbers as authoritative.\n\nThis is a PAID, ASYNCHRONOUS, per-page-billed operation: credits are reserved from the caller's PDFIntact balance before processing starts, and the response's _meta.credits_remaining shows the balance right after reservation. Processing takes real wall-clock time (roughly 7 seconds/page; a 500-page PDF takes about 42 minutes including a multi-minute cold start), so this tool returns a job_handle immediately without waiting -- call get_result with that job_handle to poll for completion instead of calling convert_pdf again. Always pass idempotency_key; reuse the exact same value if you retry the same request, otherwise retries can double-charge and double-process. Provide the PDF either as a public https URL (source.type=\"url\", up to ~200MB) or inline base64 (source.type=\"base64\", up to ~20MB) -- prefer the URL form for large files.\n\nRequires sign-in (OAuth): this session is not authenticated, so calling this tool will fail until the PDFIntact account is connected and authorized.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"source":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"url"},"url":{"type":"string","format":"uri","description":"HTTPS URL to fetch the PDF from"}},"required":["type","url"]},{"type":"object","properties":{"type":{"type":"string","const":"base64"},"data":{"type":"string","description":"Base64-encoded PDF file contents"}},"required":["type","data"]}]},"idempotency_key":{"type":"string","minLength":1,"maxLength":200,"description":"Unique key for this request. Reuse the same value on retry of the same PDF to avoid double charging."}},"required":["source","idempotency_key"],"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"get_balance","description":"Check the current PDFIntact credit balance for the authenticated account (1 page = 1 credit), plus the soonest-expiring credit lot. Useful before submitting a large PDF to convert_pdf, or after an insufficient_credits error to see how many credits are needed and get a purchase link.\n\nRequires sign-in (OAuth): this session is not authenticated, so calling this tool will fail until the PDFIntact account is connected and authorized.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"get_result","description":"Fetch the status and (once finished) the structured result of a job previously created by convert_pdf. Poll this with the job_handle convert_pdf returned until _meta.state is \"done\" or \"failed\" -- do not call convert_pdf again while waiting. job_handle is scoped to the account that created it; handles belonging to a different account are rejected as not found.\n\nRequires sign-in (OAuth): this session is not authenticated, so calling this tool will fail until the PDFIntact account is connected and authorized.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"job_handle":{"type":"string","minLength":1,"description":"The job_handle returned by convert_pdf"}},"required":["job_handle"],"$schema":"https://json-schema.org/draft/2020-12/schema"}}],"scan":{"score":63,"grade":"C","scanned_at":"2026-09-20T20:09:18.859Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-20T20:09:18.796Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":17,"max":20,"notes":["remote reachable in 2004ms"]},"poisoning":{"score":13,"max":15,"notes":["3 tool descriptions checked"]},"auth":{"score":10,"max":15,"notes":["open endpoint, read-only tools"]},"maintenance":{"score":3,"max":15,"notes":["no repository listed"]},"identity":{"score":4,"max":10,"notes":["verified namespace with website, no repo"]}},"findings":[{"id":"poison.long-description","severity":"low","component":"poisoning","title":"Unusually long tool description (over 2,000 characters)","evidence":"tool convert_pdf: …Convert a PDF into structured content (tables, charts, formulas, headings, body text) using a two-stage pipeline (layout detection, then a vision-language model) rather than a single VLM call on the raw PDF -- calling a VLM on a raw PDF directly is a known-unreliable pattern for numeric tables. Measured accuracy (500-page real-world benchmark of government/corporate reports, ~51,000 table values checked): tables 95.2% digit-exact, body text 88.8%. This tool reads PDFs a VLM cannot read directly, including scanned pages and PDFs with corrupted/garbled text layers (common in older Japanese academic PDFs). For scanned Japanese documents the numbers hold up (99.4% on the same benchmark). For scanned Arabic, body text does NOT: characters are dropped mid-sentence and quantities can turn into different quantities, so body blocks from scanned Arabic are always flagged confidence:\"estimated\" -- tables in the same documents stayed exact in our measurement. Strong on Japanese-language documents specifically; the accuracy figures above were measured on Japanese material and are not a claim about every language. Chart values are extracted but are best-effort estimates (about 52% exact match, excluding axis tick labels) and are always flagged confidence:\"estimated\" in the result -- do not treat estimated chart numbers as authoritative. This is a PAID, ASYNCHRONOUS, per-page-billed operation: credits are reserved from the caller's PDFIntact balance before processing starts, and the response's _meta.credits_remaining shows the balance right after reservation. Processing takes real wall-clock time (roughly 7 seconds/page; a 500-page PDF takes about 42 minutes including a multi-minute cold start), so this tool returns a job_handle immediately without waiting -- call get_result with that job_handle to poll for completion instead of calling convert_pdf again. Always pass idempotency_key; reuse the exact same value if you retry the same request, otherwise retries can double-charge and double-process. Provide the PDF either as a public https URL (source.type=\"url\", up to ~200MB) or inline base64 (source.type=\"base64\", up to ~20MB) -- prefer the URL form for large files. Requires sign-in (OAuth): this session is not authenticated, so calling this tool will fail until the PDFIntact account is connected and authorized.…"},{"id":"maint.no-repo","severity":"low","component":"maintenance","title":"No source repository listed"}],"inputs":{"probes":[{"url":"https://mcp.pdfintact.com/mcp","reachable":true,"authRequired":false,"latencyMs":2004,"serverInfo":{"name":"pdfintact","version":"1.0.0"}}],"packages":[],"repo":{"found":false},"icon":{"url":"https://en.pdfintact.com/favicon.ico","source":"site","width":192,"height":192},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":8}}}},"grade_history":[],"reviews":[]}