Skip to main content
Glama
idin9

idin9-doc-ocr-mcp

by idin9

ocr_batch_process

Process all pending PDFs and scanned images in the staging folder, triggering OCR and Thai tax invoice extraction for automated review.

Instructions

Process all pending files in the drop/staging directory.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
folder_pathNo
Install Server

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure, and 'Process all pending files' communicates almost nothing about side effects. It doesn't disclose whether files are deleted, moved, or left in place after processing, whether the operation is long-running or asynchronous, how failures are handled, or what the return/outcome looks like. The only behavioral trait conveyed is the batch scope.

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?

One clean 11-word sentence with no filler; the core scope ('all pending files' + 'drop/staging directory') is front-loaded. It earns its words, though it borders on under-specification — the brevity is achieved partly by omitting behavioral details that the completeness dimension penalizes.

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

Completeness2/5

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

For a mutating batch operation with zero annotations, no output schema, and one optional parameter, the description is incomplete. An agent cannot determine whether invoking it is destructive, how long it will take, whether it runs synchronously, or how to observe results (via ocr_get_record or ocr_review_queue siblings). The vague verb 'process' is the material gap.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for documenting folder_path, but it never names the parameter or explains it. 'Drop/staging directory' gives an implicit hint that folder_path identifies where pending files live (and that the default is the standard staging directory), but it doesn't clarify what null means, whether a custom path replaces or augments the default, or what kinds of directory paths are accepted.

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

Purpose4/5

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

The description states a specific verb ('process'), resource ('all pending files'), and location ('drop/staging directory'), making it distinguishable from siblings like ocr_extract_invoice (single invoice extraction) and ocr_review_queue (review workflow). However, 'process' is underspecified — it never explicitly says this runs OCR on the files, relying on the tool name for that meaning.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus alternatives like ocr_extract_invoice or ocr_poll_scanner_share. There are no exclusions, conditions, or references to sibling tools. The only implied usage is 'when there are pending files in staging,' which is weak since it's not stated as a precondition.

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

Other Tools

Latest Blog Posts

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/idin9/idin9-doc-ocr-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server