Back to Directory/Documentation

FileToPDF

Convert files, HTML, and Markdown to PDF via the FileToPDF API. Bring your own API key.

DocumentationTypeScriptv0.1.1

FileToPDF MCP server

npm smithery badge Install MCP Server

A Model Context Protocol server for FileToPDF. It lets any MCP client — Claude Desktop, Claude Code, Cursor, Cline, VS Code, ChatGPT, n8n, Make, or your own agent — convert files, HTML, and Markdown to PDF through natural language: invoices, reports, documentation, DOCX/XLSX/PPTX, images, web pages, and more.

Bring your own API key — get one free, in one click, at https://filetopdf.dev (10 free conversions, no signup required).

Tools

ToolWhat it does
get_accountCheck the API key and show plan + remaining credits. Free, no credits used.
convert_fileConvert a file from a public URL (DOCX, XLSX, PPTX, images, HTML, MD, PDF…) to PDF.
convert_htmlRender a raw HTML string (with optional CSS + layout options) to a pixel-perfect PDF via Chromium.
convert_markdownRender a raw Markdown string (with optional CSS + layout options) to a clean PDF.

Each convert tool returns a metadata summary and the PDF as an embedded application/pdf resource (base64), so capable clients can save the file. Set the FILETOPDF_OUTPUT_DIR env var, or pass save_path, to also write the PDF to disk.

Layout options (landscape, paperWidth/Height, margins, scale, pdfa, passwords, …) are available on Pro, Scale, and the free trial; on Starter/Basic they return an upgrade error. Each successful conversion costs 1 credit; errors are free.

Quick start (local / stdio)

Cursor — one-click install: Add to Cursor (then replace the placeholder with your key).

Claude Desktop / Cline / any stdio client — add to the MCP config (claude_desktop_config.json, cline_mcp_settings.json, …):

{
  "mcpServers": {
    "filetopdf": {
      "command": "npx",
      "args": ["-y", "filetopdf-mcp"],
      "env": { "FILETOPDF_API_KEY": "sk_live_YOUR_API_KEY" }
    }
  }
}

Claude Code:

claude mcp add filetopdf -e FILETOPDF_API_KEY=sk_live_YOUR_API_KEY -- npx -y filetopdf-mcp

VS Code (.vscode/mcp.json or via MCP: Add Server):

{
  "servers": {
    "filetopdf": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "filetopdf-mcp"],
      "env": { "FILETOPDF_API_KEY": "sk_live_YOUR_API_KEY" }
    }
  }
}

Hosted / remote (Streamable HTTP) — no install

A hosted endpoint is available at https://api.filetopdf.dev/mcp. Authenticate with your own key via the x-api-key header, an Authorization: Bearer header, or an ?apiKey= query parameter.

{
  "mcpServers": {
    "filetopdf": {
      "type": "streamable-http",
      "url": "https://api.filetopdf.dev/mcp",
      "headers": { "x-api-key": "sk_live_YOUR_API_KEY" }
    }
  }
}

This is also the URL to paste into any platform with an MCP client step — n8n (MCP Client Tool), Make (MCP Client), Zapier (MCP Client beta), Relay.app (Call MCP tool), Flowise, Langflow, Dify, LibreChat, AnythingLLM, or agent frameworks (OpenAI Agents SDK, LangChain, CrewAI, Vercel AI SDK).

To self-host instead:

npm run build && npm run start:http   # listens on $PORT (default 8080) at /mcp

A Dockerfile is included for container hosting (Smithery, Fly, Render, Cloud Run).

Develop & test

npm install
npm run build          # tsc -> dist/
npm test               # spawns the built stdio server, runs a live conversion

npm test reads FILETOPDF_API_KEY, or API_KEY= from a gitignored .env.

Links

License

MIT

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
npx -y filetopdf-mcp

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "dev-filetopdf-filetopdf-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "filetopdf-mcp"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

filetopdf-mcpnpm

Compatible MCP Clients

FileToPDF works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More