Skip to main content
Glama

Server Details

Arabic-first OCR, translation and document extraction. First call mints a free trial key.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
Samqra/auto-reader-ocr
GitHub Stars
0

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 6 of 6 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a clear, distinct purpose: key provisioning, structured extraction, usage checking, combined OCR+translation, plain OCR, and translation. No overlap that would confuse an agent.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with underscores (e.g., create_api_key, ocr_image, translate_text). Even the compound name 'ocr_and_translate' fits the pattern.

Tool Count5/5

With 6 tools, the server is well-scoped for an OCR service, covering key management, usage monitoring, multiple OCR modes, structured extraction, and translation without being over-fragmented.

Completeness4/5

The tool set covers core OCR workflows well, but lacks a tool for revoking API keys or listing existing keys, which is a minor gap for full lifecycle management.

Available Tools

6 tools
create_api_keyAInspect

Provision a new Auto-Reader OCR API key instantly, with no human steps. Pass an optional email to unlock the larger free tier (about 250 credits/day, vs about 25/day for an email-less trial key). Store the returned key and pass it as api_key on future calls.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNoOptional email to attach for the larger free tier and a verification link.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Describes behavior (instant provisioning, email effect) beyond what annotations would provide. No annotations provided, but description adds value. Could mention any limits, but not required.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no wasted words, front-loaded with main purpose, then email detail, then instruction to store key.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple provisioning tool with one optional parameter and no output schema. Explains what it does and how to use the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Single parameter email has 100% schema coverage; description adds meaning about unlocking larger free tier and verification link, exceeding baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it provisions an API key instantly for Auto-Reader OCR. Distinct from sibling tools which are about OCR, translation, and extraction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explains the email option for larger free tier and that it's instant with no human steps. Does not explicitly state when not to use or alternatives, but context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

extract_documentAInspect

Extract STRUCTURED FIELDS from a document image: invoices, receipts, ID cards — or any custom JSON schema you supply. Every field returns {value, confidence, box} where the confidence and box come from the OCR geometry (never model guesswork); absent fields are null. preset="zatca" additionally decodes the Saudi ZATCA e-invoice QR (TLV) and cross-validates it against the printed fields — use it for Saudi tax invoices. Arabic-first accuracy. 5 credits/page (zatca 7).

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoLanguage hint; default auto.auto
presetNoBuilt-in schema. Use zatca for Saudi e-invoices (adds QR validation).
schemaNoCustom extraction schema instead of a preset: an object whose keys are the fields you want, values describing them, e.g. {"policy_number": "string|null"}.
api_keyNoOptional Auto-Reader OCR key (nsk_live_...). If omitted, a free trial key is auto-provisioned and returned to you in the result.
image_base64YesThe document image as base64 (data: URI prefix accepted).
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must fully disclose behavior. It details the return format ({value, confidence, box}), states that confidence/box come from OCR geometry rather than model guesswork, explains zatca's QR decoding and cross-validation, mentions Arabic-first accuracy, and specifies credit costs. These are important behavioral traits beyond a simple read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately concise with no redundant sentences. It front-loads the purpose and then provides key details in a logical flow. Slightly dense but each sentence contributes value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description adequately explains the return format. It covers presets, custom schemas, language hint, API key, and cost. Missing details like supported image formats or size limits, but for a tool with a clear schema and description, it is fairly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds significant meaning beyond schema: it explains the return format for fields and the special behavior of preset='zatca' (QR decoding and cross-validation). This helps the agent understand what 'fields' means and when to use the zatca preset.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it extracts structured fields from document images, listing specific document types (invoices, receipts, ID cards) and custom schemas. The verb 'Extract STRUCTURED FIELDS' clearly differentiates it from raw OCR sibling tools like ocr_image, implying extraction of specific data rather than full text.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear guidance on when to use each preset, especially for Saudi tax invoices with zatca. It also mentions custom schemas. However, it lacks explicit comparison to sibling tools like ocr_and_translate or ocr_image, leaving the agent to infer the structured vs raw OCR distinction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_usageAInspect

Check your Auto-Reader OCR key: tier, remaining daily free credits, prepaid credit balance, subscription allowance, and per-minute rate limit. Use it to throttle yourself before hitting a limit.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_keyNoOptional key (nsk_live_...). Auto-provisioned if omitted.
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description bears full responsibility for behavioral disclosure. It describes the returned data but does not explicitly confirm read-only nature, side effects, or whether calling this tool itself consumes resources or has rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no redundancy. First sentence lists what is checked, second provides actionable guidance. Every phrase serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the output items in detail despite no output schema. It lacks mention of error handling or how to obtain a key if not provided, but overall it is sufficiently complete for a usage check tool given the sibling context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with a single parameter already documented in the schema. The description adds the detail 'Optional key (nsk_live_...). Auto-provisioned if omitted,' which is useful but not significantly beyond the schema's description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states it checks Auto-Reader OCR key usage details, including tier, credits, balance, allowance, and rate limit. It clearly distinguishes from sibling tools like create_api_key or extract_document, which serve different purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description advises using it to throttle before hitting a limit, which is a clear use case. It does not explicitly mention when not to use or alternatives, but siblings are sufficiently different, making the intended context obvious.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ocr_and_translateAInspect

One call: OCR an image, then translate every line into target_lang. Arabic-first OCR and manga-aware Japanese with right-to-left-aware layout, followed by LLM translation. Automatic source-language detection. Provide the image as base64. Ideal for reading foreign documents, signs, manga, or receipts end-to-end in a single step.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_keyNoOptional key (nsk_live_...). Auto-provisioned if omitted.
target_langYesLanguage to translate into, as a name or code (e.g. English, ar, ja).
image_base64YesThe image encoded as base64 (a data: URI prefix is accepted and stripped).
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full responsibility. It discloses the internal process (Arabic-first OCR, manga awareness, LLM translation, automatic source detection). However, it does not mention whether the tool has side effects, authentication requirements beyond the optional api_key, rate limits, or the nature of the operation (read-only vs. destructive). For a tool that processes user data, these gaps reduce transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: four sentences that front-load the core function, then add relevant details about OCR capabilities, automatic detection, input format, and ideal use cases. Every sentence serves a purpose without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the input and process well but omits any description of the output (e.g., format of translated text, whether it includes bounding boxes, confidence scores). There is no output schema to compensate. Given the tool's moderate complexity (combining OCR and translation), the lack of output specification leaves the agent uncertain about what to expect.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All three parameters have descriptions in the schema (100% coverage). The description adds value by clarifying that image_base64 can include a data URI prefix (which is stripped), that api_key is auto-provisioned if omitted, and that target_lang accepts names or codes. These details go beyond the schema descriptions, improving parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool's function: 'One call: OCR an image, then translate every line into target_lang.' It clearly identifies the verb (OCR and translate), resource (image), and target language. The additional detail about Arabic-first and manga-aware OCR further distinguishes it from sibling tools like ocr_image or translate_text.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear guidance on when to use the tool: 'Ideal for reading foreign documents, signs, manga, or receipts end-to-end in a single step.' While it does not explicitly mention when not to use it, the sibling tool names (ocr_image, translate_text) indirectly suggest alternatives. A more explicit exclusion would push this to 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ocr_imageAInspect

Extract text from an image with GPU OCR. Best-in-class Arabic (plus Persian/Urdu) accuracy, manga-aware vertical Japanese, and strong English, French, Spanish, German, Chinese, Korean, Russian, Italian and Portuguese — 13+ languages. Automatic language and script detection with lang="auto". Returns reading-order layout text (right-to-left aware, paragraph-gapped) that is ready to feed an LLM or show a human, plus the detected language, the engine used, and the number of text blocks found. Provide the image as base64. Use the mode hint (document | receipt | manga | scene) to tune detection.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNoLanguage/script hint. Default "auto" detects it. Codes: ar, fa, ur, en, fr, es, de, ja, zh, ko, ru, it, pt.auto
modeNoContent hint that tunes detection and prompts. Default "document".document
api_keyNoOptional Auto-Reader OCR key (nsk_live_...). If omitted, a free trial key is auto-provisioned and returned to you in the result.
image_base64YesThe image encoded as base64 (a data: URI prefix is accepted and stripped).
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses key behaviors: GPU OCR, reading-order layout, right-to-left awareness, paragraph gapping, and return fields (detected language, engine, text blocks). It does not mention rate limits or authentication details but is fairly comprehensive for a read-only tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is somewhat lengthy but every sentence adds value. Front-loaded with main purpose. Could be slightly more concise, but effectively communicates all essential information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description thoroughly explains return values (detected language, engine, text blocks). Covers all aspects: input format, language support, modes, and output format. Complete for a tool of this complexity with 4 parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline 3 is appropriate. Description reinforces parameter usage (e.g., lang='auto', mode hints) but adds limited new information beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'Extract text from an image with GPU OCR' and enumerates supported languages, modes, and features. It distinguishes from siblings like extract_document and ocr_and_translate by focusing on pure OCR with automatic detection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides context on when to use (best-in-class for multiple languages, automatic detection, various modes) but does not explicitly state when not to use or name alternatives. The sibling tools list hints at other capabilities, but no exclusion criteria are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

translate_textAInspect

Translate text between 13+ languages with an LLM. Arabic-first quality, with formality control (formal/informal) and optional context to disambiguate meaning. Handles both short dictionary-style word lookups and full documents. Returns the translation and, when available, alternative phrasings.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesThe text to translate.
api_keyNoOptional key (nsk_live_...). Auto-provisioned if omitted.
contextNoOptional background text that improves accuracy (it is not translated).
formalityNoOptional register for the output.
target_langYesTarget language, as a name or code (e.g. English, Arabic, ar, ja, fr).
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must fully convey behavioral traits. It discloses that it returns translations and alternative phrasings, mentions auto-provisioned API keys, and notes formality control. However, it does not address rate limits, logging, or whether it is read-only (though translation is typically non-destructive).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a concise three-sentence paragraph that front-loads the main purpose and key features. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the primary purpose, supported features, and return value (translation plus optional alternatives). For a tool with no output schema, this is adequate. However, it could improve by mentioning error handling or the list of supported languages.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds some value by explaining the 'context' parameter's role in disambiguation and the 'formality' parameter's register control, but does not significantly augment the schema descriptions for other parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool translates text between 13+ languages, highlighting Arabic-first quality, formality control, and context support. This distinguishes it from sibling tools like ocr_and_translate (which handles images) and extract_document (which extracts text from documents).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use the tool (text translation, both short lookups and full documents) but does not explicitly state when not to use alternatives. It implies that for text without images this tool is appropriate, but lacks direct exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.