Skip to main content
Glama
mffrydman

Document Reading and Converter Tool

by mffrydman

Document Reading and Converter Tool

The goal is to have a tool that can read and edit files, using Cursor or Claude Desktop.

The filesystem MCP already allows reading, writing and editing documents, but is limited in that it cannot:

  • Read pdfs or docx files

  • Reads the full document, which can cause context overflow

To address these issues, we create:

  • A fresh doc-reading-mcp mcp service allowing for document conversions between pdf, docx and markdown.

Features

  • PDF to Markdown conversion using marker-pdf

  • DOCX to Markdown conversion using pandoc

  • Markdown to DOCX conversion using pandoc

  • Markdown to PDF conversion using pandoc

Related MCP server: mcp-document-converter

Prerequisites

Installation

uv add doc-reading-mcp

Or install directly from the source:

uv add git+https://github.com/mffrydman/doc-reading-mcp.git

Usage

Run as a standalone server

uv run mcp install -m doc_reading_mcp

Or run directly:

uv run -m doc_reading_mcp

Use with MCP Inspector

npx @modelcontextprotocol/inspector uvx run -m doc_reading_mcp

Configure in Claude Desktop, Cursor or Windsurf

Add this to your MCP Configuration:

{
    "mcpServers": {
        "doc-reading-mcp": {
            "command": "uvx",
            "args": [
                "doc-reading-mcp",
            ]
        }
    }
}

Run in Cursor/Windsurf/Claude using the following configuration:

    "doc-reading-mcp": {
        "command": "uv",
        "args": [
            "--directory",
            "/absolute/path/to/mffrydman/doc-reading-mcp",
            "run",
            "-m",
            "doc_reading_mcp"
        ]
    }

Replace

  • /absolute/path/to/ with the actual path on your system.

Available Tools

1 tool
convert_documentA

Convert a document between different formats

Args: input_path (str): Absolute path to the input document output_format (OutputFormat): Target format to convert to. One of: "pdf", "docx" or "md"

Returns: str: A message indicating success or failure of the conversion

Notes: This tool is especially useful as a conversion step to make PDF and DOCX files readable in plain text format by converting them to Markdown. This enables easier processing, analysis and interaction with the content of these document formats.

For conversions to PDF or DOCX, the file is saved in the same directory as the input file,
with the same filename but with the extension changed to match the ouput format.

For conversions to Markdown, the markdown file and any images extracted are placed in a folder
that has the same name as the original file (without extension). The markdown file itself
will have the same name as the original file but with the .md extension.

For example:
- Converting /path/to/document.pdf to docx will save as /path/to/document.docx
- Converting /path/to/document.pdf to md will create a folder /path/to/document/
    containing document.md and any extracted images
ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes
output_formatYes

TDQS

A4.8/5.0
Behavior4/5

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

The description explains the output format and folder creation for markdown conversions, which is helpful. However, it does not explicitly mention whether existing output files are overwritten or if the source file is modified, leaving minor side-effect ambiguity. Since no annotations are provided, these details are solely the description's responsibility.

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 concise and well-structured, with a clear breakdown of the arguments, returns, and notes. The use of bullet examples enhances readability without unnecessary verbosity.

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?

Given the lack of output schema, annotations, and sibling tools, the description provides sufficient context for an agent: it covers what the tool does, its inputs, and the expected output behavior. No critical information seems missing for basic usage.

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

Parameters5/5

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

Both parameters are well explained: input_path is specified as an absolute path, and output_format is defined with the allowed enum values and their distinct effects. The description adds practical details like the folder structure for md output, enriching the bare schema.

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's purpose: converting a document between formats (pdf, docx, md). It includes concrete examples showing input and output, leaving no ambiguity about what the tool does.

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

Usage Guidelines5/5

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

Although no sibling tools are provided, the description implicitly guides when to use the tool (when conversion is needed) and explains the specific behavior for each output format. The examples effectively demonstrate usage.

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. 1 tool updatev0.1.0
    • First observedconvert_document

TDQS

A4.4/5.0

Scored across 1 tool

Disambiguation5/5

Only one tool exists, so there is no risk of confusing it with other tools.

Naming Consistency5/5

The single tool uses a clear verb_noun convention ('convert_document').

Tool Count2/5

The server name implies both reading and conversion, but only one conversion tool is provided, making the surface too thin.

Completeness2/5

No reading or retrieval tool is exposed despite the server's stated purpose, leaving a significant gap for document-reading workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

Appeared in Searches