Skip to main content
Glama

Extract to Markdown

extract_to_markdown

Extract structured documents (.docx, .xlsx, .csv, .tsv, .pptx) into Markdown through Frenchie. stdio mode auto-saves the result to .frenchie//result.md; HTTP mode returns inline Markdown.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
api_keyNoOptional Frenchie API key (fr_...). Falls back to the FRENCHIE_API_KEY env var when omitted.
file_pathNoAbsolute local file path. Stdio transport only — over HTTP, upload via upload_file first and pass uploaded_file_reference instead.
uploaded_file_referenceNoObject key returned by upload_file. Required for HTTP transport; ignored when file_path is provided in stdio.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
jobIdNo
resultNo
statusYes
creditsUsedNo
resultExpiresAtNo
estimatedCompletionNo

TDQS

A4/5.0
Behavior4/5

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

Annotations only indicate readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false. The description adds valuable behavioral context: auto-saving to .frenchie/<name>/result.md in stdio mode vs returning inline Markdown in HTTP mode. No contradiction with annotations.

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: the first states the core purpose and file types, the second explains the two transport modes and their output behavior. No fluff, front-loaded, every sentence earns its place.

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 the tool's moderate complexity and that an output schema exists, the description covers purpose, file types, and transport-dependent behavior. It lacks explicit sibling-tool disambiguation, but overall is complete for a straightforward extraction tool.

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 description coverage is 100%, so all three parameters (api_key, file_path, uploaded_file_reference) are already well-documented with transport-specific constraints. The description does not add parameter-level meaning beyond what the schema provides, so baseline 3 applies.

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 extracts structured documents (.docx, .xlsx, .csv, .tsv, .pptx) into Markdown, using the specific verb 'extract' and naming the resource types. This distinguishes it from sibling tools like ocr_to_markdown and transcribe_to_markdown, which handle unstructured content.

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

Usage Guidelines3/5

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

The description provides mode-specific context (stdio auto-saves, HTTP returns inline) but does not explicitly compare to alternatives or state when-not-to-use. Usage is implied by the file-type scope rather than directly contrasted with sibling tools.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: extracting structured documents, OCR, transcription, image generation, file upload, result file download, and job status retrieval. The descriptions provide clear boundaries, so an agent can easily select the right tool.

Naming Consistency5/5

Tool names follow a consistent snake_case pattern with verb-first names (e.g., extract_to_markdown, generate_image, upload_file). Conversion tools share the _to_markdown suffix, while utility tools use verb_noun, creating a predictable and readable convention.

Tool Count5/5

Seven tools is well-scoped for a file conversion and image generation server. Each tool addresses a distinct need without redundancy or bloat, making the set feel complete yet focused.

Completeness4/5

The tool surface covers the main workflows: converting documents, images, audio/video to Markdown, generating images, and handling file uploads and downloads. A minor gap is that get_job_result only fetches the latest job, lacking support for retrieving specific job results by ID, which could hinder multi-job workflows.