OCR-AI for agents
OCR for AI agents.
One tool call away.
An MCP server and a REST API that read PDFs and images into text, fields and tables, in Hebrew and English. The first 100 pages are free. When they run out, your agent hands you a Stripe payment link, and carries on once you pay.
- 100 pages free to start
- No card to start
- No subscription
01The free start
Free to start. A payment link when it runs out.
No sales call and no trial clock. The unit is a page: you get some free, you buy more when you need them, and your agent is told exactly when that is.
01
Ask for access
Leave your email in the form below. We send a link that signs you in and opens the page where you create keys. No password and no card.
02
Create a key: 100 pages are yours
Your first key comes with 100 free pages, once per account. Put the key in your agent's MCP configuration, or send it as a Bearer token to the REST API.
03
Out of pages? A payment link
When a call needs more pages than the account holds, nothing is read and nothing is charged. The answer carries a payment link instead: you pick a pack and pay on Stripe's page, the pages land on the key's account, and the agent calls again.
02Connect
Connect in a minute
Most MCP clients take a server URL and a header. Anything that can send an HTTP request can use the REST API. Replace ocrai_sk_… with your own key.
{
"mcpServers": {
"ocr-ai": {
"type": "http",
"url": "https://ocr-ai.com/mcp",
"headers": {
"Authorization": "Bearer ocrai_sk_…"
}
}
}
}curl https://ocr-ai.com/api/v1/read \
-H "Authorization: Bearer ocrai_sk_…" \
-F "file=@invoice.pdf" \
-F "pages=1-3"curl https://ocr-ai.com/api/v1/read \
-H "Authorization: Bearer ocrai_sk_…" \
-H "Content-Type: application/json" \
-d '{"file_url": "https://example.com/invoice.pdf", "hint": "invoice"}'03Tools
Three tools and two endpoints
read_documentReads a PDF or an image (JPEG, PNG, WebP) from a URL or base64, up to 20 pages per call. Returns Markdown for the model and structured JSON: text, fields with normalised values, and tables, page by page.
check_balancePages left on the key's account, with a link where the user can add more.
buy_pagesA Stripe Checkout link for a page pack, for the agent to hand to its user. The tool itself never charges anything.
POST/api/v1/readA file in (multipart, JSON or the raw file), the document out as JSON.
GET/api/v1/balancePages left, and the packs with their payment links.
04Pricing
Pricing, in plain words
Free start. 100 pages with your first key, once per account.1 No card needed.
Then page packs. 100 pages for $9, 500 pages for $29 and 2,000 pages for $89. Each is a one-time payment, with no subscription, and the pages stay valid for 12 months from the last time pages were added to the account, by a purchase or the free start.
What counts. One page of a PDF, or one image, is one page. File size and the amount of text do not matter. A page whose read fails is not charged.21
One balance. Pages belong to the account, not to a key: the web app and every key on the account draw on the same balance.
- 100 pages$0.09 per page$9
- 500 pages$0.06 per page$29
- 2,000 pages$0.04 per page$89
Prices include VAT where it applies.
05What to expect
What it reads well, and what it does not
- 01
Printed documents read best
Invoices, receipts, delivery notes, statements, letters and forms, in Hebrew, English or both on one page. Hebrew comes out in reading order, with numbers and codes intact.
- 02
Handwriting, only in part
Neat handwriting is partly read. A value the engine was unsure about comes back with uncertain: true, so your agent can ask a person to check it.
- 03
Up to 20 pages a call
Files up to 20 MB. A longer PDF is read in ranges: the answer's next_pages field says where the next call should start.
- 04
Files are not stored
Each page is read and the result is returned. We keep usage data only: page counts, sizes, timings and whether a read succeeded. No content.
06Get a key
Get your API key
Tell us a little about what you're building. We'll email you a sign-in link; your key and the 100 free pages are one click from there.
- 01Ask for access
- 02Create a key: 100 pages are yours
- 03Out of pages? A payment link
07Questions
Common questions
What is MCP?
The Model Context Protocol is an open standard for connecting AI agents to tools. An MCP client, such as an agent framework, an assistant in your code editor or a chat app that supports MCP, connects to OCR-AI's server and sees three tools: read_document, check_balance and buy_pages.
Do I have to use MCP?
No. The same reading is a plain REST API: POST a file to /api/v1/read with your key and get JSON back. Use whichever fits your stack.
How do the 100 free pages work?
They are added once per account, when you create your first key, and they count like purchased pages. On a day when many accounts start at once, a free start may wait until the next day; your first call after that picks it up.
What happens when the pages run out?
The call is refused before anything is read: HTTP 402 from the REST API, or a tool error over MCP, with a buy_url and the packs. Open the link, pick a pack and pay on Stripe's page, and the pages are added to the key's account. Then call again.
Can my agent pay by itself?
No. A payment always happens in a person's browser, on Stripe's page. buy_pages only returns a link; it never charges anything.
Which files can it read?
PDF, JPEG, PNG and WebP, up to 20 MB, sent as an upload, as base64 or as a public https link. Up to 20 pages per call.
Do you keep the files, or train on them?
No. The file is read in memory and not stored; we keep usage data without content. Pages are read by a paid cloud service whose terms forbid using the content sent to it to train models.
Is there a volume price or an SLA?
Not as a standard plan. If you read thousands of pages a month or need something specific, write to us with your volume and we'll get back to you.
Notes
- ¹ A site-wide daily limit applies to free starts. When it is reached, the grant waits for the next day (UTC) and is added on your first call or account visit after that.
- ² A failed page is given back to the account automatically, and the answer marks it with status: "failed" and refunded: true.