mcpField
C
ChangeThisFile — file conversion between 690+ formats (hosted Streamable HTTP + stdio)

ChangeThisFile — file conversion between 690+ formats (hosted Streamable HTTP + stdio)

Remote
changethisfile.comMedia & Design6Updated 2w ago

About ChangeThisFile — file conversion between 690+ formats (hosted Streamable HTTP + stdio)

ChangeThisFile is an MCP server for converting and processing files across a broad range of formats. It supports document translation, table extraction, compression, and plain-language job routing, with hosted HTTP and stdio options.

Key features

  1. 01Convert files across supported formats
  2. 02Translate documents while preserving layout
  3. 03Extract tables from PDFs and images
  4. 04Compress files to a maximum size
  5. 05Route plain-language file instructions
  6. 06Check submitted job status

Use cases

  1. 01Convert a file using a URL or base64 content
  2. 02Translate a document and retrieve its preview
  3. 03Export PDF or image tables to Excel
  4. 04Compress a video, PDF, or image to a size limit

MCP support

Exposes seven file-processing tools to MCP clients, including conversion, translation, extraction, compression, natural-language routing, and job checks. It is available through hosted Streamable HTTP or a local stdio bridge.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://changethisfile.com/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

7
ParameterTypeRequiredDescription
filenamestringNoOptional filename hint for auto-detection (e.g. "document.docx"). Include this for extensionless download URLs when known.
source_urlstringNoPublicly accessible URL of the file to convert (preferred for large files)
source_formatstringNoSource format extension (e.g. "docx", "mp4"). Optional: detected from filename, URL response filename, or file bytes when omitted.
target_formatstringYesTarget format extension (e.g. "json", "mp3", "pdf"). Required.
base64_contentstringNoBase64-encoded file content (for small files; max ~5MB)

Details

From the project README

ChangeThisFile MCP Server

Use ChangeThisFile's seven file tools from any MCP client: conversion across 1,000+ supported routes, document translation, table extraction, exact-size compression, natural-language routing, and job status checks.

Powered by ChangeThisFile.com. Discovery and paid-preview jobs are public. General convert_file works without a key for 25 conversions per month per network; after that it needs a free verified developer key (25 conversions/month, shared with the REST API), and paid API plans raise the limit.

Tools

ToolDescription
convert_fileConvert a file. Pass a publicly accessible source_url or base64_content (max ~5MB), plus a target_format (e.g. pdf, mp3, json). Source format is auto-detected from the URL/filename, or pass source_format explicitly. Returns a download URL valid for 1 hour.
list_conversionsList all supported conversion routes, optionally filtered by source_format (e.g. docx → see every format you can convert DOCX into).
translate_fileTranslate a document with its layout preserved. Returns a free preview and a one-time checkout link for the full output.
extract_tablesExtract tables from PDFs or images into Excel. Returns a free preview and a one-time checkout link for the full output.
compress_fileCompress a PDF, image, or video to an exact maximum size. Free with a daily limit.
do_file_jobRoute a plain-language file instruction to conversion, translation, extraction, or compression.
check_jobCheck a submitted job and retrieve its preview, checkout link, or download URL.

Option 1 — Remote endpoint (recommended, no install)

The server is hosted at https://changethisfile.com/mcp using streamable HTTP transport (MCP spec 2025-03-26). If your client supports remote MCP servers, point it straight at the endpoint. Clients that support custom headers can send Authorization: Bearer ctf_sk_... to use authenticated developer metering.

{
  "mcpServers": {
    "changethisfile": {
      "type": "streamable-http",
      "url": "https://changethisfile.com/mcp"
    }
  }
}

Claude Code:

claude mcp add --transport http changethisfile https://changethisfile.com/mcp

Option 2 — Local stdio server (this package)

For clients that only speak stdio, this package bridges stdio ↔ the hosted endpoint:

{
  "mcpServers": {
    "changethisfile": {
      "command": "npx",
      "args": ["-y", "github:aadilr/changethisfile-mcp"],
      "env": {
        "CTF_API_KEY": "ctf_sk_your_key_here"
      }
    }
  }
}

CTF_API_KEY is optional: without it you get 25 free conversions per month per network; after that convert_file asks for a key. Get a verified free key from the ChangeThisFile dashboard (or POST https://changethisfile.com/v1/keys/free with {"email":"[email protected]"} and click the verification email); its 25 monthly conversions are shared across MCP and REST. Paid plans start at $29/month.

Or clone and run directly:

git clone https://github.com/aadilr/changethisfile-mcp.git
cd changethisfile-mcp
npm install
node index.js

Option 3 — Agent Skill / Claude Code plugin

This repo doubles as an Agent Skill and Claude Code plugin.

Any skills-capable agent (Claude Code, Codex CLI, Cursor, Gemini CLI, Copilot, and more):

npx skills add aadilr/changethisfile-mcp

Claude Code plugin (bundles the MCP server + the skill):

/plugin marketplace add aadilr/changethisfile-mcp
/plugin install changethisfile@changethisfile

The file-conversion skill prefers the MCP tools when connected and otherwise falls back to a bundled script (skills/file-conversion/scripts/convert.sh) that talks to the hosted endpoint over plain HTTPS — no MCP client required.

Option 4 — Docker

docker build -t changethisfile-mcp .
docker run -i --rm -e CTF_API_KEY changethisfile-mcp

Quick test

curl -X POST https://changethisfile.com/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'

Supported formats

CategoryExamples
ImageJPG, PNG, WebP, GIF, BMP, AVIF, ICO, SVG, TIFF, HEIC, PSD, RAW
VideoMP4, WebM, MKV, AVI, MOV, 3GP, FLV, WMV
AudioMP3, WAV, FLAC, AAC, OGG, M4A, OPUS
DocumentPDF, DOCX, DOC, ODT, RTF, TXT, HTML, MD, PPT, PPTX
DataJSON, CSV, TSV, YAML, XML, TOML, XLSX, XLS
FontTTF, OTF, WOFF, WOFF2
EbookEPUB, MOBI, AZW3, FB2, CBR, CBZ
ArchiveZIP, RAR, 7Z, TAR, TAR.GZ, TAR.BZ2, TAR.XZ

Use list_conversions for the full route table.

Environment variables

VariableDefaultPurpose
CTF_API_KEYunsetOptional verified developer key forwarded as a bearer token; the value is never logged
CTF_MCP_URLhttps://changethisfile.com/mcpOverride the upstream endpoint
CHANGETHISFILE_MCP_URLunsetLegacy alias for CTF_MCP_URL

Privacy & limits

  • Discovery and paid-preview jobs require no account. General conversion is temporarily anonymous in compatibility mode; a verified key enables shared developer metering now.
  • Files are processed server-side and auto-deleted within 24 hours; download URLs expire after 1 hour.
  • MCP inputs are capped at 25 MB. Authenticated convert_file uses the developer account's shared API/MCP rate and monthly quota; other expensive tools retain per-account or per-IP abuse limits.

License

MIT

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.