npm filetopdf-mcpstreamable-httpMITupdated 2mo ago
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.
What can you do with FileToPDF?
FileToPDF 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
| Tool | What it does |
|---|---|
get_account |
Check the API key and show plan + remaining credits. Free, no credits used. |
convert_file |
Convert a file from a public URL (DOCX, XLSX, PPTX, images, HTML, MD, PDF…) to PDF. |
convert_html |
Render a raw HTML string (with optional CSS + layout options) to a pixel-perfect PDF via Chromium. |
convert_markdown |
Render 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
- Website & instant free API key: https://filetopdf.dev
- API docs: https://filetopdf.dev/documentation
- Official MCP registry name:
dev.filetopdf/filetopdf-mcp
License
Install
Add FileToPDF to your client. Pick the one you use.
{
"servers": {
"filetopdf-mcp": {
"type": "http",
"url": "https://api.filetopdf.dev/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
claude mcp add filetopdf-mcp -- npx -y filetopdf-mcpcodex mcp add filetopdf-mcp -- npx -y filetopdf-mcpamp mcp add filetopdf-mcp -- npx -y filetopdf-mcp{
"mcpServers": {
"filetopdf-mcp": {
"command": "npx",
"args": [
"-y",
"filetopdf-mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"filetopdf-mcp": {
"command": "npx",
"args": [
"-y",
"filetopdf-mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"mcpServers": {
"filetopdf-mcp": {
"command": "npx",
"args": [
"-y",
"filetopdf-mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"filetopdf-mcp": {
"command": "npx",
"args": [
"-y",
"filetopdf-mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"filetopdf-mcp": {
"command": "npx",
"args": [
"-y",
"filetopdf-mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"filetopdf-mcp": {
"type": "local",
"command": "npx",
"args": [
"-y",
"filetopdf-mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"filetopdf-mcp": {
"command": {
"path": "npx",
"args": [
"-y",
"filetopdf-mcp"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y filetopdf-mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
4 tools
FileToPDF exposes 4 tools to a connected agent.
- get_account
- Check the API key and show plan + remaining credits. Free, no credits used.
- convert_file
- Convert a file from a **public URL** (DOCX, XLSX, PPTX, images, HTML, MD, PDF…) to PDF.
- convert_html
- Render a raw **HTML** string (with optional CSS + layout options) to a pixel-perfect PDF via Chromium.
- convert_markdown
- Render a raw **Markdown** string (with optional CSS + layout options) to a clean PDF.
Score
75 / 100
Good
- Documentation25/25
- Maintenance16/25
- Trust13/20
- Capability6/15
- Install experience15/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 82 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 4 tool(s) documented
- Provides prompt templates
- Provides resources
- 18 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 0.1.1Latest | Jun 10, 2026 |