mcpField
D
docmark

docmark

Local
github.com/CloudCorpRecordsProductivity0Updated 1w ago

About docmark

docmark is a local stdio MCP front end that forwards URLs or file contents to the hosted file2markdown service and returns its Markdown output. It is for users converting documents or web pages, with single-item and batch tools plus format and usage information.

Key features

  1. 01Convert public URLs to Markdown
  2. 02Convert base64 file contents
  3. 03Batch 2–10 conversion items
  4. 04List supported formats and tier limits
  5. 05Check usage status

Use cases

  1. 01Turning a document URL into Markdown
  2. 02Converting a local file's base64 contents
  3. 03Processing a small batch of documents
  4. 04Checking available formats and remaining conversions

MCP support

Exposes tools for URL, base64, and batch conversion, supported-format lookup, and usage status through a stdio MCP server. Each call is forwarded to the hosted file2markdown API; the API key is optional.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"cloudcorprecords-docmark": {
"command": "npx",
"args": [
"-y",
"@reneturcios/docmark"
]
}
}
}
Run commandnpx -y @reneturcios/docmark

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@reneturcios/docmark0.1.0
ocighcr.io/cloudcorprecords/docmark:0.1.0

Tools

5

Saved tool list · updated 1w ago

ParameterTypeRequiredDescription
urlstringYesPublic URL of the web page or document to convert to Markdown.

Details

From the project 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.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.