| name | file-conversion |
| description | Convert files between formats — PDF to Word, HEIC to JPG, MP4 to MP3, CSV to JSON, EPUB to MOBI, and 1,000+ supported routes across images, video, audio, documents, data, fonts, ebooks, and archives. Anonymous compatibility access is currently available via changethisfile.com; verified keys use the shared developer meter. Use when the user needs a file converted to a different format. |
File Conversion (ChangeThisFile)
Convert files across 1,000+ supported routes using ChangeThisFile. Anonymous conversion is temporarily available in compatibility mode; verified developer keys share quota with REST API usage. Conversions run server-side (FFmpeg, LibreOffice, Calibre, 7-Zip, sharp, Ghostscript); files are deleted within 24 hours.
Decision order
- If ChangeThisFile MCP tools are available (
changethisfile:convert_file, changethisfile:list_conversions) — use them directly. convert_file takes source_url OR base64_content + source_format, plus target_format, and returns a temporary download URL.
- Otherwise, use the bundled script (requires network access to changethisfile.com):
scripts/convert.sh <input-file> <target-format> [output-file]
The script path is relative to this skill's directory. It base64-encodes the file, calls the hosted MCP endpoint over plain HTTPS, downloads the result, and writes it next to the input (or to [output-file]).
- Remote file (you have a URL, not a local file) — skip the download/re-upload; one curl does it:
curl -sS -X POST https://changethisfile.com/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"convert_file","arguments":{"source_url":"<FILE_URL>","target_format":"pdf"}}}'
The response text contains a download URL — fetch it with curl -o <output>.
Discovering supported routes
Ask before guessing if a conversion is exotic:
curl -sS -X POST https://changethisfile.com/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_conversions","arguments":{"source_format":"docx"}}}'
Omit source_format for a grouped summary of all supported routes.
Limits and errors
- Max MCP input: 25 MB, including authenticated plans. Larger files should use
POST /v1/convert; verified free keys include 25 conversions/month shared across REST and authenticated MCP.
- Rate limit: 5 conversions/minute per IP. On "Rate limit exceeded", wait 60 seconds and retry once.
- "Unsupported conversion: X→Y" errors list the valid targets for that source format.
- Download URLs expire after 1 hour — download immediately, then work with the local file.
Environment notes
- Needs outbound HTTPS to
changethisfile.com. On claude.ai, the code-execution sandbox restricts egress by default — prefer the MCP connector there, or the user can allow the domain under Settings → Capabilities.
- Full docs: https://changethisfile.com/docs/mcp