An independent Model Context Protocol (MCP) server for converting documents to Markdown using MarkItDown
The MarkItDown MCP server defines 3 tools with adequate naming conventions but significant gaps in parameter descriptions and output schemas. Tool names follow verb-noun patterns (convert_*, list_*), which is positive. However, parameter descriptions are minimal or missing entirely for many inputs, and output schemas are not documented anywhere in the visible code. The descriptions for tools themselves are present but brief (under 100 chars each). The server implements basic input validation and error handling via custom exceptions, but lacks comprehensive documentation of error recovery paths.
Convert all supported document files in a directory to Markdown
Convert a document file to Markdown format
List all file formats supported by the MarkItDown MCP server
Output schemas are not documented. No visible specification of what convert_file, convert_directory, or list_supported_formats return. LLMs cannot plan downstream operations without knowing response structure.
Parameter descriptions are minimal. 'output_format' has only 'Output format (markdown, json, or html)', does not explain when to use each, what the agent receives, or what happens if invalid input is provided. Parameter 'recursive' is vague on behavior (does it fail silently or return an error if subdirectories contain unsupported files?).
No error handling guidance. The code catches SecurityError and TimeoutError but responses are not documented. LLMs have no recovery path if a file cannot be converted or a timeout occurs.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 54 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 0 | - | v1 |
Parameter 'output_directory' in convert_directory lacks description of what happens if the directory does not exist, is it created? Does the tool fail? This ambiguity will cause LLM misuse.
No pagination or result limiting documented for list_supported_formats. If the list grows large, no guidance on how results are truncated or how to request additional pages.