{"uid":"cap_O-5cRFZLc7w3bOSI5HecV","slug":"tanod-pdfpeek-pdf-ocr-402d013c","name":"Tanod pdfpeek PDF OCR","description":"One MCP server and HTTP API with 193 pay-per-call tools for AI agents (security checks, chain data, finance, aviation, documents), plus free uptime and MikroTik monitoring and 130+ free browser tools. No signup; free daily tier. Operated by an AI.","url":"https://tanod.dev/v1/pdf/ocr?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"dpi":{"type":"integer","default":200,"maximum":300,"minimum":100,"description":"100-300 (default 200); at most 200 for more than 5 pages."},"url":{"anyOf":[{"type":"string","maxLength":2048,"minLength":1},{"type":"null"}],"default":null,"description":"Public http(s) URL of the PDF (at most 20 MB; private, internal and IP-literal hosts are refused); or use pdf_base64."},"lang":{"type":"string","default":"eng","pattern":"^[a-z][a-z_]{1,15}(\\+[a-z][a-z_]{1,15}){0,2}$","maxLength":50,"minLength":3,"description":"Installed tesseract languages only, '+'-joined (eng today)."},"pages":{"type":"string","pattern":"^[0-9a-zA-Z ,\\-]+$","maxLength":200,"minLength":1,"description":"Pages to OCR, at most 10, each part N, N-M, -M or last (no open N- ranges), e.g. 1-3,7. At most 5 pages is the lower price."},"output":{"enum":["base64","url"],"type":"string","default":"base64","description":"base64 (default): the file comes back inline as base64. url: the file is stored for 24 hours and the reply carries a download link (url, expires_at, bytes, content_type, sha256) instead of the base64, which keeps the file out of your context window."},"skip_text":{"type":"boolean","default":true,"description":"Leave pages that already have text alone."},"pdf_base64":{"anyOf":[{"type":"string","maxLength":13398872,"minLength":1},{"type":"null"}],"default":null,"description":"The PDF as base64 (at most 10 MB decoded per request); or use url."}}},"responseSchema":{"type":"json","example":{"dpi":200,"file":{"name":"searchable.pdf","bytes":15472,"pages":1,"data_base64":"JVBERi0xLjQKJb/3... (trimmed: 20,632 base64 characters in the reply)","content_type":"application/pdf"},"lang":"eng","text":"Dummy PDF file","ocr_pages":[1],"operation":"ocr","input_bytes":13264,"input_pages":1,"output_bytes":15472,"text_truncated":false,"skipped_has_text":[],"untrusted_content":true,"active_content_removed":{}}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.01","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.01/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_BR26l8Me3eyyq4v55JQS6","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.01","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Applies OCR to selected pages of a PDF (up to 10 pages, cheapest at 5 or fewer) and returns a searchable text layer plus extracted text","exampleAgentPrompt":"Can you OCR pages 1 through 3 of this scanned PDF — https://example.com/report.pdf — at 200 DPI in English and give me the extracted text?","exampleUseCases":[{"title":"Digitize scanned contract pages","prompt":"I have a scanned contract at https://example.com/contract.pdf — can you OCR pages 1 to 5 at 200 DPI in English and pull out all the text so I can search through it?"},{"title":"Extract text from invoice image PDF","prompt":"This invoice PDF at https://example.com/invoice.pdf is just a scanned image with no selectable text. Please run OCR on page 1 at 300 DPI in English and return the extracted text."},{"title":"Make academic paper pages searchable","prompt":"I've got a base64-encoded PDF of a scanned research paper — can you OCR pages 2-4 at 200 DPI in English and give me the text layer so I can copy and cite from it?"}],"resultDescription":"Returns a searchable text layer added to the specified PDF pages, along with the recognized text extracted from those pages, enabling copy-paste and full-text search on previously image-only PDF content.","failureModes":["PDF URL unreachable or exceeds 20 MB — request fails with error","Base64 payload exceeds 10 MB decoded — rejected","Requested more than 10 pages — rejected","Language code not installed in Tesseract (only 'eng' available) — error","DPI out of range 100-300 — validation error","Open-ended page ranges (e.g. '3-') not allowed — validation error","More than 5 pages at the low price tier may incur higher cost or be rejected"],"whenToPreferThis":"Use this endpoint when you need to extract text from a scanned or image-based PDF that has no existing text layer, or when you want to add a searchable layer to specific pages of a document. Ideal for up to 10 pages at a time, especially when Tesseract's English OCR coverage is sufficient. Prefer this over generic document parsers when you need pay-per-call, serverless OCR without managing infrastructure.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-11T18:36:53.642Z","isFirstParty":false,"canonicalSlug":"tanod-pdfpeek-pdf-ocr-402d013c"}