Skip to main content
Glama
Alpha-Park

genpark-hybrid-bounding-box-ocr-table-reconstructor-skill

genpark-ocr-table

Group supplied OCR text boxes into left-aligned table rows and columns. No image OCR is performed.

Python 3.9+; standard library runtime; MIT license.

Install and run

Download genpark-ocr-table.mcpb from GitHub Releases and install with an MCPB-compatible client. Python must be installed and available as python.

Alternatively clone this repository and configure an MCP stdio server with command python and arguments containing the absolute path to mcp_server.py.

Smithery listing

Related MCP server: genpark-multimodal-vision-table-structural-extractor-skill

Tools

  • reconstruct_table_grid

  • format_to_markdown

  • run_benchmark_table_reconstruction

Run python -m unittest discover -s tests for regression checks. The official MCP SDK integration check uses the development dependency mcp: python tests/check_mcp.py.

Limitations

These are deterministic helpers operating on supplied structured data, not machine-learning models. Input and output remain in the local process. No hosted endpoint, automatic file access or network access is required. State lasts only for the current process. Benchmark tools run synthetic examples in isolated state; their status is not a production-quality certification.

Rows use an 8-pixel vertical tolerance; columns use left-edge alignment with a 20-pixel tolerance. Merged cells, rotated text and centered layouts are not supported.

Available Tools

3 tools
format_to_markdownD

format to markdown

ParametersJSON Schema
NameRequiredDescriptionDefault
gridYes

TDQS

D1.7/5.0
Behavior1/5

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

No annotations are provided, so the description must carry full behavioral disclosure. It states nothing about what the tool does beyond formatting, whether it modifies data, what happens to the input grid, or any side effects.

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

Conciseness2/5

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

The description is extremely short but under-specified rather than concise. It does not front-load any useful information beyond the name.

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

Completeness1/5

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

The description is completely inadequate for a tool that takes a structured grid and outputs markdown, especially with no annotations, no output schema, and no parameter documentation.

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?

With one parameter and 0% schema description coverage, the description offers no semantic information about the 'grid' parameter—such as its expected structure (a 2D array of strings) or constraints. It fails to compensate for the schema gap.

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

Purpose2/5

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

The description "format to markdown" is a near-tautology that restates the tool name. It lacks a specific verb+resource combination and does not differentiate from sibling tools like reconstruct_table_grid or run_benchmark_table_reconstruction.

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?

No guidance is provided on when or why to use this tool versus alternatives. There are no exclusions, prerequisites, or contextual hints to help an agent decide.

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

reconstruct_table_gridD

reconstruct table grid

ParametersJSON Schema
NameRequiredDescriptionDefault
bounding_boxesYes

TDQS

D1.1/5.0
Behavior1/5

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

No annotations are provided, so the description carries the full behavioral burden and supplies none of it. It says nothing about what 'reconstruct' does to the input, whether it requires OCR-like bounding-box data, output format, or side effects.

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

Conciseness2/5

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

It is short, but this is under-specification rather than conciseness — the phrase earns no informational place and omits everything an agent needs. Not misleading, just empty.

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

Completeness1/5

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

For a tool whose only required input is an undocumented structure of coordinate-bounded text boxes, with no annotations and no output schema, the description is wholly inadequate. An agent cannot infer the expected input semantics or the result.

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

Parameters1/5

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

Schema description coverage is 0% and the single required parameter bounding_boxes is a nested array of objects with x0/y0/x1/y1/text fields. The description adds no meaning about what these boxes represent or how the reconstruction uses them, leaving the input format entirely unexplained.

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

Purpose1/5

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

The description 'reconstruct table grid' is a tautological restatement of the tool name with no added verb, scope, or outcome. It does not distinguish this tool from siblings like format_to_markdown or run_benchmark_table_reconstruction, so an agent learns nothing beyond the name itself.

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

Usage Guidelines1/5

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

There is no indication of when to use this tool, when not to, or which sibling to prefer. The siblings (format_to_markdown, run_benchmark_table_reconstruction) suggest overlapping table-processing tasks, yet no routing guidance is offered.

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

run_benchmark_table_reconstructionC

run benchmark table reconstruction

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2/5.0
Behavior1/5

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

No annotations are provided, so the description carries the full behavioral burden, and it discloses nothing. There is no indication of side effects, cost, runtime, prerequisites, or what a 'benchmark' run actually does to the environment.

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

Conciseness2/5

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

The description is a single four-word phrase with no structure or front-loaded detail. This is under-specification rather than genuine conciseness, since no meaningful information is conveyed at all.

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

Completeness1/5

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

With no annotations, no output schema, and no parameters, the description is the only source of information and it provides none. An agent cannot tell what this tool produces, when to prefer it over its siblings, or what to expect from invoking it.

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?

The input schema declares zero parameters, so there is no parameter semantics to document. Per the baseline for zero-param tools, the description is not penalized here.

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

Purpose2/5

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

The description 'run benchmark table reconstruction' is essentially a restatement of the tool name with no added specificity. It doesn't say what benchmark is run, what it measures, or how it differs from reconstruct_table_grid or format_to_markdown. This is a tautology rather than a clarified purpose.

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?

No when-to-use guidance is provided, and no alternative is named or excluded. With two sibling tools (reconstruct_table_grid, format_to_markdown) that plausibly overlap, the absence of any routing signal is a real gap.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv1.0.0
    • First observedformat_to_markdown
    • First observedreconstruct_table_grid
    • First observedrun_benchmark_table_reconstruction

TDQS

C2.2/5.0

Scored across 3 tools

Disambiguation5/5

Each tool clearly targets a distinct phase of the OCR-to-table pipeline: grid reconstruction, markdown formatting, and benchmarking. There is no overlap in purpose; an agent can easily tell them apart.

Naming Consistency4/5

All tool names use snake_case and clear action-oriented phrasing, which is consistent. However, the verb pattern varies slightly (reconstruct vs. format vs. run_benchmark), making it slightly less uniform but still highly readable.

Tool Count3/5

With only 3 tools, the server is focused but may feel thin for a complete hybrid OCR table reconstruction skill. It covers essential steps but lacks utility functions like preprocessing or validation, making the count borderline.

Completeness4/5

The set covers the core workflow: reconstructing the table grid, formatting output to markdown, and running benchmarks. Missing elements like input preprocessing or table extraction might be handled externally, but the surface is largely complete for the stated purpose.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables multimodal OCR-based extraction of table grids and merged cells into Markdown with deterministic, zero-dependency execution through MCP for AI agents.
    9
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables deterministic reconstruction of complex tables from OCR bounding-box payloads, recovering multi-column layouts, merged headers, and grid hierarchies. It also supports formula consistency auditing and sensitive PII redaction for document processing pipelines.
    7
    MIT
  • A
    license
    C
    quality
    A
    maintenance
    Enables auditing of extracted balance sheets, income statements, and cash flow reports by reconstructing complex document tables and verifying mathematical consistency and formula balancing. It also performs cross-reference resolution and sensitive PII redaction, returning structured matrices and validation telemetry over MCP to clients like Claude Desktop, Cursor, and Windsurf.
    4
    7
    MIT