Back to Browse

Docmark MCP Server

Developer ToolsModerate6.1MCP RegistryLocal
Free

Server data from the Official MCP Registry

Convert documents and URLs to Markdown via the hosted file2markdown service.

About

Convert documents and URLs to Markdown via the hosted file2markdown service.

Security Report

6.1
Moderate6.1Moderate Risk

docmark is a transparent forwarding client for the hosted file2markdown conversion API, with no local shell execution, no hardcoded secrets, and an optional Bearer key read from an environment variable. Its network and file-read access (base64 file input in the CLI) match its stated purpose; the main caveats are that user-supplied documents and URLs are sent to a third-party service by design, and the API base URL is a labelled reconstruction that users should verify. Supply chain analysis found 3 known vulnerabilities in dependencies (0 critical, 2 high severity). Package verification found 1 issue.

8 files analyzed · 8 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

HTTP Network Access

Connects to external APIs or services over the internet.

File System Read

Reads files on your machine. Normal for tools that analyze or process local data.

env_vars

Check that this permission is expected for this type of plugin.

process_spawn

Check that this permission is expected for this type of plugin.

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-cloudcorprecords-docmark": {
      "args": [
        "-y",
        "@reneturcios/docmark"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

docmark

docmark is a local stdio front end for a hosted document-to-Markdown conversion service. Give it a public URL, the base64 contents of a file, or a small batch of either, and it asks the hosted service to do the conversion and hands the Markdown back.

docmark does not convert anything itself. Each tool call is forwarded as a JSON POST to the hosted file2markdown API, and the upstream payload is returned as-is — including the service's truncated flag when output reaches its 200,000-character cap. Conversion quality, supported-format coverage, availability, and tier limits are the hosted service's.

Documented input kinds include PDF, DOCX, PPTX, XLSX, CSV, JSON, XML, HTML, EPUB, images (with OCR), audio, and ZIP archives. Call list_supported_formats for the live list, per-tier limits, and which features need Pro.

FILE2MARKDOWN_API_KEY is optional: the free tier works keyless. When a key is set it is sent as Authorization: Bearer <key>; when it is absent no Authorization header is sent. DOCMARK_API_URL overrides the API base (default https://api.file2markdown.ai, a labelled reconstruction of the wire shape).

Batch conversions take 2–10 items per call, enforced locally before anything is sent. Each item is either {url} or {content_base64, filename}.

Install

npx @reneturcios/docmark convert_url --url https://example.com/report.pdf
docker run -i ghcr.io/cloudcorprecords/docmark

CLI

docmark convert_url --url https://example.com/report.pdf
docmark convert_base64 --content-base64 aGVsbG8= --filename note.txt
docmark convert_base64 --file ./report.pdf
docmark convert_batch --items-json '[{"url":"https://example.com/a.pdf"},{"content_base64":"eA==","filename":"x.txt"}]'
docmark list_supported_formats
docmark usage_status
docmark --version

Exit codes: 0 success, 1 upstream or validation error, 2 usage error.

MCP server

npx -y @reneturcios/docmark mcp
{
  "mcpServers": {
    "docmark": {
      "command": "npx",
      "args": ["-y", "@reneturcios/docmark", "mcp"],
      "env": { "FILE2MARKDOWN_API_KEY": "your-key-if-you-have-one" }
    }
  }
}

The env block is optional — omit it for the keyless free tier.

Tools

ToolInputWhat it returns
convert_urlurl (string, required)The upstream conversion of the page or document at that URL.
convert_base64content_base64 (string, required), filename (string, optional)The upstream conversion of the supplied file contents.
convert_batchitems (array, required, 2–10 items, each {url} or {content_base64, filename})Per-item upstream results.
list_supported_formats—Formats, per-tier limits, and what requires Pro, per the service.
usage_status—The caller's tier and remaining conversions for today.

Upstream failures — HTTP errors and unreachable hosts — are reported as tool errors with the underlying message.

Development

npm install
npm run build
npm test
npm run dev

Tests run entirely on fake-fetch fixtures; no network is used and no live call to the hosted service is made.

License

MIT — see LICENSE.

Reviews

No reviews yet

Be the first to review this server!