converteverything-mcp
v2.1.3
Published
MCP server for ConvertEverything.io - Convert, compress, and share files between 100+ formats using AI assistants
Maintainers
Readme
ConvertEverything MCP Server
An MCP (Model Context Protocol) server that enables AI assistants like Claude to convert files between 100+ formats using the ConvertEverything.io API.
"Hey Claude, convert this HEIC to JPG" — it's that simple.
Why ConvertEverything?
Tired of sketchy converter websites with popup ads and "premium" upsells? We built ConvertEverything.io for developers and power users who want:
- No ads, no BS — Clean interface, fast conversions
- Actually free tier — 20 conversions/day with free account, no credit card required
- Serious file size limits — Up to 10GB per file (try finding that elsewhere)
- Privacy-first — Files auto-delete, no data mining
- API access — Because you're reading an MCP README, you probably want this
Features
- 100+ Supported Formats: Audio, video, image (including RAW camera formats), document, ebook, data, 3D, font, archive, and CAD files
- File Compression: Compress images, videos, and PDFs with quality presets
- Archive Creation: Create ZIP, TAR, 7z archives from multiple files
- File Sharing: Generate shareable links and send files via email
- Cloud Import: Import files from Google Drive, Dropbox, OneDrive, and Box
- Simple Integration: Works with Claude Desktop, Claude Code, and any MCP-compatible client
- Conversion Options: Fine-tune output quality, resolution, bitrate, and more
- Secure: Uses your personal API key, no data stored on third-party servers beyond conversion processing
Popular Conversions
Here's what people actually use this for:
| From → To | Use Case | Link | |-----------|----------|------| | HEIC → JPG | iPhone photos for literally anything else | HEIC to JPG Converter | | MOV → MP4 | iPhone videos that actually play everywhere | MOV to MP4 Converter | | WEBP → PNG | Google's format → universal format | WEBP to PNG Converter | | MKV → MP4 | Plex/streaming compatibility | MKV to MP4 Converter | | FLAC → MP3 | Audiophile → portable | FLAC to MP3 Converter | | PDF → DOCX | Edit that "read-only" document | PDF to Word Converter | | XLSX → CSV | Excel → everything else | Excel to CSV Converter | | WAV → MP3 | Studio quality → shareable | WAV to MP3 Converter | | PNG → ICO | Favicon time | PNG to ICO Converter | | EPUB → PDF | Ebook → printable | EPUB to PDF Converter |
Browse all audio converters, video converters, image converters, and document converters.
Supported Formats
| Category | Formats | |----------|---------| | Audio (16) | mp3, wav, flac, aac, ogg, ogx, m4a, m4b, wma, aiff, midi, mid, opus, ac3, amr, ape | | Video (15) | mp4, avi, mkv, mov, webm, wmv, flv, m4v, 3gp, ts, vob, mts, mpeg, m2ts, divx | | Image (25) | jpg, jpeg, png, gif, webp, bmp, tiff, svg, ico, prn, heic, heif, avif, + RAW formats | | RAW Camera | cr2, cr3, nef, nrw, arw, orf, rw2, raf, dng, pef, raw (read-only input) | | Document (17) | pdf, docx, doc, xlsx, xls, pptx, ppt, txt, md, html, rtf, odt, odp, ods, docm, xlsm | | Ebook (4) | epub, mobi, azw3, pdf | | Data (6) | json, csv, xml, yaml, yml, tsv | | 3D (9) | obj, stl, ply, gltf, glb, dae, off, fbx, 3ds | | Font (5) | ttf, otf, woff, woff2, eot | | Archive (5) | zip, tar, gz, bz2, 7z | | CAD (1) | dxf |
Requirements
- Node.js 18 or higher
- ConvertEverything.io API key — 100% FREE for all registered users!
- Free account: 5 API calls/day
- Bronze ($5.99/mo): 200 API calls/day
- Silver ($9.99/mo): 400 API calls/day
- Gold ($24.99/mo): Unlimited API calls
File Retention
Converted files are stored temporarily. Use the retention_hours parameter to control how long files are kept:
| Tier | Max Retention | |------|---------------| | Free/Basic | 24 hours | | Bronze | 7 days (168 hours) | | Silver | 15 days (360 hours) | | Gold | 30 days (720 hours) |
Default retention is 24 hours if not specified.
Installation
From npm (recommended)
npm install -g converteverything-mcpFrom source
git clone https://github.com/converteverything/converteverything-mcp.git
cd converteverything-mcp
npm install
npm run buildConfiguration
1. Get an API Key
- Sign up at converteverything.io (it's free)
- Go to API Keys and create a new key
- Copy the key (starts with
ce_)
API access is 100% free! All registered users get API access. Free tier: 5 calls/day. Upgrade for more.
2. Client Configuration
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"converteverything": {
"command": "npx",
"args": ["-y", "converteverything-mcp", "--api-key", "ce_your_api_key_here"]
}
}
}Add to ~/.claude/settings.json:
{
"mcpServers": {
"converteverything": {
"command": "npx",
"args": ["-y", "converteverything-mcp", "--api-key", "ce_your_api_key_here"]
}
}
}Or add via CLI:
claude mcp add converteverything -- npx -y converteverything-mcp --api-key ce_your_keyAdd to Cursor settings (~/.cursor/mcp.json):
{
"mcpServers": {
"converteverything": {
"command": "npx",
"args": ["-y", "converteverything-mcp", "--api-key", "ce_your_api_key_here"]
}
}
}Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"converteverything": {
"command": "npx",
"args": ["-y", "converteverything-mcp", "--api-key", "ce_your_api_key_here"]
}
}
}Open Cline settings in VS Code and add to MCP Servers:
{
"converteverything": {
"command": "npx",
"args": ["-y", "converteverything-mcp", "--api-key", "ce_your_api_key_here"]
}
}Add to ~/.config/zed/settings.json:
{
"context_servers": {
"converteverything": {
"command": {
"path": "npx",
"args": ["-y", "converteverything-mcp", "--api-key", "ce_your_api_key_here"]
}
}
}
}Add to ~/.continue/config.json:
{
"experimental": {
"modelContextProtocolServers": [
{
"transport": {
"type": "stdio",
"command": "npx",
"args": ["-y", "converteverything-mcp", "--api-key", "ce_your_api_key_here"]
}
}
]
}
}Run directly from the command line:
# With API key as argument
npx converteverything-mcp --api-key ce_your_key
# With environment variable
export CONVERTEVERYTHING_API_KEY=ce_your_key
npx converteverything-mcp
# Short form
npx converteverything-mcp -k ce_your_keyFor stdio-based integrations, the server communicates via stdin/stdout using the MCP protocol.
Alternative: Environment Variables
All clients also support passing the API key via environment variable:
{
"mcpServers": {
"converteverything": {
"command": "npx",
"args": ["-y", "converteverything-mcp"],
"env": {
"CONVERTEVERYTHING_API_KEY": "ce_your_api_key_here"
}
}
}
}CLI Options
| Option | Short | Description |
|--------|-------|-------------|
| --api-key | -k | Your ConvertEverything.io API key |
| --base-url | -u | Custom API URL (for development) |
| --help | -h | Show help message and exit |
| --version | -v | Show version number and exit |
Available Tools
get_supported_formats
Get a list of all supported file formats organized by category.
User: What formats can you convert?
Claude: [Uses get_supported_formats] I can convert between 93+ formats including...get_usage
Check your current API usage and limits.
User: How many conversions do I have left today?
Claude: [Uses get_usage] You've used 5 of your 100 daily conversions...convert_file
Convert a file from one format to another.
User: Convert my-video.mov to mp4
Claude: [Uses convert_file] Starting conversion...Parameters:
file_path(required): Path to the file to converttarget_format(required): Target format (e.g., "mp3", "pdf", "png")options(optional): Conversion settings (see below)
convert_base64
Convert a file provided as base64 data.
Parameters:
data(required): Base64-encoded file datafilename(required): Original filename with extensiontarget_format(required): Target formatoptions(optional): Conversion settings
get_conversion_status
Check the status of an ongoing conversion.
User: Is my conversion done yet?
Claude: [Uses get_conversion_status] Your conversion is complete and ready to download!download_file
Download a completed conversion.
Parameters:
conversion_id(required): The conversion IDsave_path(optional): Path to save the file
list_presets
Get available conversion presets for quick configuration.
User: What presets are available?
Claude: [Uses list_presets] Here are the available presets:
- web-optimized: Smaller files, fast loading
- high-quality: Best quality, larger files
- balanced: Good quality with reasonable size
...batch_convert
Convert multiple files at once.
User: Convert all the WAV files in my project to MP3
Claude: [Uses batch_convert] Converting 5 files to MP3...Parameters:
file_paths(required): Array of file paths to converttarget_format(required): Target format for all filespreset(optional): Use a preset (e.g., "web-optimized")options(optional): Conversion settings
wait_for_conversion
Wait for a conversion to complete with progress polling.
User: Convert this large video and let me know when it's done
Claude: [Uses convert_file, then wait_for_conversion] The conversion is now complete!Parameters:
conversion_id(required): The conversion ID to wait forpoll_interval(optional): Milliseconds between status checks (default: 2000)timeout(optional): Max wait time in milliseconds (default: 300000)
list_conversions
List your recent conversions with pagination.
User: Show me my recent conversions
Claude: [Uses list_conversions] Here are your last 10 conversions...Parameters:
page(optional): Page number (default: 1)per_page(optional): Results per page, 1-100 (default: 10)
cancel_conversion
Delete a conversion and its associated files. Note: In-progress conversions cannot be cancelled.
User: Delete that failed conversion
Claude: [Uses cancel_conversion] Conversion deleted successfully.Parameters:
conversion_id(required): The conversion ID to delete
get_file_info
Get file metadata before conversion (size, format, MIME type).
User: What's the size of this video file?
Claude: [Uses get_file_info] The file is 1.2 GB, format: MP4, MIME: video/mp4Parameters:
file_path(required): Path to the file to analyze
estimate_output_size
Estimate the output file size before conversion.
User: How big will this WAV be as MP3?
Claude: [Uses estimate_output_size] Estimated output: ~15 MB (from 150 MB WAV at 128k bitrate)Parameters:
file_path(required): Path to the source filetarget_format(required): Target formatoptions(optional): Conversion options that affect sizepreset(optional): Preset name
Compression Tools
compress_image
Compress an image file to reduce file size.
User: Compress this photo to make it smaller for email
Claude: [Uses compress_image] Compressed from 5.2 MB to 1.1 MB (79% reduction)Parameters:
file_path(required): Path to the image filequality(optional): Quality level 1-100 (default: 80)max_dimension(optional): Max width/height in pixelsretention_hours(optional): File retention 1-720 hours (default: 24, max based on tier)
compress_video
Compress a video file to reduce file size.
User: Make this video smaller for uploading
Claude: [Uses compress_video] Compressed from 500 MB to 85 MBParameters:
file_path(required): Path to the video filecrf(optional): Quality 0-51, lower is better (default: 28)preset(optional): Speed preset (ultrafast, fast, medium, slow)max_resolution(optional): Max resolution (e.g., "1920x1080", "720p")remove_audio(optional): Remove audio trackretention_hours(optional): File retention 1-720 hours (default: 24, max based on tier)
compress_pdf
Compress a PDF file to reduce file size.
User: This PDF is too large to email, can you compress it?
Claude: [Uses compress_pdf] Compressed from 25 MB to 3.2 MBParameters:
file_path(required): Path to the PDF filequality(optional): Compression quality: low, medium, high (default: medium)retention_hours(optional): File retention 1-720 hours (default: 24, max based on tier)
get_compression_usage
Check your compression usage and limits.
User: How many compressions do I have left?
Claude: [Uses get_compression_usage] You've used 15 of 100 compressions todayArchive Tools
create_archive
Create an archive from multiple files.
User: Zip up all these project files
Claude: [Uses create_archive] Created project.zip with 12 files (45 MB)Parameters:
file_paths(required): Array of file paths to includeoutput_format(optional): zip, tar, tar.gz, tar.bz2, or 7z (default: zip)archive_name(optional): Custom name for the archivecompression_level(optional): 1-9 (default: 6)retention_hours(optional): File retention 1-720 hours (default: 24, max based on tier)
Advanced Conversion Tools
reconvert
Re-run a previous conversion with different settings.
User: Can you redo that last conversion but with higher quality?
Claude: [Uses reconvert] Re-converting with quality set to 95...Parameters:
conversion_id(required): ID of the previous conversiontarget_format(optional): New target formatoptions(optional): New conversion options
get_thumbnail
Get a thumbnail preview for a conversion.
User: Show me a preview of that converted image
Claude: [Uses get_thumbnail] Here's a thumbnail preview...Parameters:
conversion_id(required): The conversion IDsave_path(optional): Path to save the thumbnail
batch_convert_api
True batch conversion using the API's batch endpoint (more efficient for large batches).
User: Convert all 50 of these files to PDF
Claude: [Uses batch_convert_api] Batch started with ID batch_abc123...Parameters:
file_paths(required): Array of file pathstarget_format(required): Target format for all filesoptions(optional): Conversion options
get_batch_status
Check the status of a batch conversion.
User: How's that batch conversion going?
Claude: [Uses get_batch_status] 45 of 50 complete, 5 still processing...Parameters:
batch_id(required): The batch ID
File Sharing Tools
list_my_files
List your shareable files.
User: What files do I have available to share?
Claude: [Uses list_my_files] You have 5 files ready to share...Parameters:
page(optional): Page number (default: 1)per_page(optional): Results per page (default: 20)
create_share_link
Create a shareable download link for a file.
User: Generate a link I can share for that converted video
Claude: [Uses create_share_link] Here's your shareable link: https://converteverything.io/s/abc123Parameters:
conversion_id(required): The conversion IDexpires_hours(optional): Hours until link expires (default: 24)
share_via_email
Share a file directly via email.
User: Email that PDF to [email protected]
Claude: [Uses share_via_email] Email sent to [email protected] with download linkParameters:
conversion_id(required): The conversion IDrecipient_email(required): Email address to send tomessage(optional): Custom message to include
Cloud Import Tools
list_cloud_providers
List available cloud storage providers.
User: What cloud services can I import from?
Claude: [Uses list_cloud_providers] You can import from Google Drive, Dropbox, OneDrive, and Boxlist_cloud_connections
List your connected cloud storage accounts.
User: What cloud accounts do I have connected?
Claude: [Uses list_cloud_connections] You have Google Drive ([email protected]) connectedlist_cloud_files
Browse files in a connected cloud storage account.
User: Show me the files in my Google Drive
Claude: [Uses list_cloud_files] Here are your Google Drive files...Parameters:
connection_id(required): Cloud connection IDfolder_id(optional): Folder to browse (root if not specified)page_token(optional): For pagination
import_from_cloud
Import a file from cloud storage for conversion.
User: Import that video from my Dropbox and convert it to MP4
Claude: [Uses import_from_cloud, then convert_file] Importing and converting...Parameters:
connection_id(required): Cloud connection IDfile_id(required): Cloud file IDtarget_format(optional): Convert immediately after importoptions(optional): Conversion options (if converting)
Conversion Presets
Presets provide pre-configured conversion settings optimized for different use cases. Use them with the preset parameter in convert_file, convert_base64, or batch_convert.
| Preset | Best For | Details |
|--------|----------|---------|
| web-optimized | Websites, fast loading | Lower bitrates, smaller dimensions, stripped metadata |
| high-quality | Archival, professional use | Maximum quality settings, minimal compression |
| smallest-size | Email attachments, storage | Aggressive compression, smaller output |
| balanced | General purpose | Good quality with reasonable file sizes |
| print-ready | Physical printing | 300 DPI, printer-quality PDF |
| archive | Long-term storage | Lossless where possible, preserves quality |
Preset Example
User: Convert my podcast.wav to MP3 for web
Claude: [Uses convert_file with preset: "web-optimized"]
Converting with web-optimized settings (128kbps, 44.1kHz stereo)...User: Convert these photos for print
Claude: [Uses batch_convert with preset: "print-ready"]
Converting with print-ready settings (300 DPI, maximum quality)...Conversion Options
Audio Options
Perfect for MP3 conversions, podcasts, and music:
{
"bitrate": "320k",
"sample_rate": 48000,
"channels": 2,
"normalize": true
}Video Options
For video format conversions, streaming, and social media:
{
"resolution": "1920x1080",
"fps": 30,
"crf": 23,
"preset": "medium",
"audio_bitrate": "192k",
"remove_audio": false
}Image Options
For image conversions, web optimization, and print:
{
"quality": 90,
"max_dimension": 2048,
"strip_metadata": true,
"dpi": 300
}Document Options
For PDF conversions and office documents:
{
"pdf_quality": "printer",
"page_size": "a4",
"orientation": "portrait"
}MCP Resources
The server exposes format documentation as MCP Resources that AI assistants can read to understand supported formats.
| Resource URI | Description |
|--------------|-------------|
| converteverything://formats | Overview of all format categories |
| converteverything://formats/audio | Audio formats (mp3, wav, flac, etc.) |
| converteverything://formats/video | Video formats (mp4, mkv, mov, etc.) |
| converteverything://formats/image | Image formats (jpg, png, webp, etc.) |
| converteverything://formats/document | Document formats (pdf, docx, etc.) |
| converteverything://presets | Available conversion presets |
| converteverything://subscription | Your current tier, limits, and usage |
Resources allow AI assistants to have contextual knowledge about supported formats without making API calls.
MCP Prompts
Pre-built prompts for common conversion tasks:
| Prompt | Description |
|--------|-------------|
| convert-for-web | Convert files to web-optimized formats |
| batch-convert-folder | Convert all files in a folder |
| optimize-images | Optimize images for web or print |
| convert-video-for-streaming | Convert video to streaming format |
| document-to-pdf | Convert documents to PDF |
Example Conversations
Convert an image
User: Convert screenshot.png to a high-quality JPEG
Claude: I'll convert that PNG to JPEG for you with high quality settings.
[Uses convert_file with options: {"quality": 95}]
The conversion is complete! Your file has been converted to JPEG.Convert a video
User: I need to convert this MOV file to MP4 for web use
Claude: I'll convert your MOV to MP4 with web-optimized settings.
[Uses convert_file with options: {"crf": 23, "preset": "medium"}]
Done! The MP4 is ready for download.Batch conversion
User: Convert all the screenshots in ~/Desktop to JPG for the web
Claude: [Uses batch_convert with preset: "web-optimized"]
Converting 12 PNG files to JPG with web-optimized settings...
All 12 conversions started. I'll monitor their progress.
[Uses wait_for_conversion for each]
All done! 12 files converted successfully.Check conversion history
User: What did I convert recently?
Claude: [Uses list_conversions]
Here are your last 10 conversions:
1. report.pdf → docx (completed, 2 hours ago)
2. video.mov → mp4 (completed, yesterday)
...Format inquiry
User: What video formats can I convert to?
Claude: [Uses get_supported_formats]
You can convert to these video formats: mp4, avi, mkv, mov, webm, wmv, flv, m4v, 3gp, ts, vob, mts, mpeg, m2ts, divxLarge File Handling
As of version 2.1.0, the MCP server automatically handles large files using chunked uploads:
- Files > 30MB are automatically split into 10MB chunks
- Parallel uploads (3 concurrent) for faster transfer speeds
- Better reliability - failed chunks can be retried without restarting the entire upload
- Memory efficient - only one chunk is loaded into memory at a time
This is transparent to users - just use convert_file as normal and the server handles the rest.
User: Convert my 500MB video to MP4
Claude: [Uses convert_file - automatically uses chunked upload for large files]
Starting conversion... (uploading in 50 chunks)Security
This MCP server:
- Only uses the public ConvertEverything.io API
- Requires your personal API key (never shared)
- Validates all file paths to prevent directory traversal
- Sanitizes filenames before upload
- Uses HTTPS for all API communication
- Does not store any files or credentials
- Uses chunked uploads for large files (>30MB) for reliability
Your files are:
- Encrypted in transit (HTTPS/TLS)
- Processed on ConvertEverything.io servers
- Automatically deleted after your tier's retention period (6 hours to 60 days)
Troubleshooting
"API key is required"
Make sure you've set the CONVERTEVERYTHING_API_KEY environment variable in your MCP configuration.
"Invalid API key format"
API keys must start with ce_. Get your key from converteverything.io/api-keys.
"Unsupported format"
Use get_supported_formats to see all available formats. Some format combinations may not be supported.
"Daily limit exceeded"
Your subscription tier has a daily conversion limit. Upgrade to Gold for unlimited conversions.
Pricing
API access is available to all registered users. Here's what you get:
| | Basic | Bronze | Silver | Gold | |---|:---:|:---:|:---:|:---:| | Price | Free | $5.99/mo | $9.99/mo | $24.99/mo | | Conversions/Day | 20 | 50 | 100 | Unlimited | | API Calls/Day | 5 | 200 | 400 | Unlimited | | API Rate Limit | 5/min | 30/min | 60/min | 120/min | | Max File Size | 500 MB | 2 GB | 5 GB | 10 GB | | Storage Cap | 5 GB | 150 GB | 250 GB | 650 GB | | File Retention | 24 hours | 7 days | 15 days | 30 days | | Compressions/Day | 20 | 50 | Unlimited | Unlimited | | Archives/Day | 20 | 50 | Unlimited | Unlimited | | Batch Files | 20 | 50 | 100 | Unlimited | | Webhooks/Day | — | — | 100 | Unlimited | | Cloud Import | — | Google, Dropbox | Google, Dropbox | All providers |
👉 View Full Pricing | Get API Key
Annual plans save 25% — Gold annual works out to $18.74/month.
Development
# Clone the repository
git clone https://github.com/converteverything/converteverything-mcp.git
cd converteverything-mcp
# Install dependencies
npm install
# Build
npm run build
# Run in development mode
CONVERTEVERYTHING_API_KEY=ce_your_key npm run devLicense
MIT License - see LICENSE for details.
Links
- 🏠 ConvertEverything.io — Main site
- 📖 API Documentation — Full API docs
- 🔑 Get API Key — Manage your keys
- 💰 Pricing — Plans & features
- 🐛 GitHub Issues — Report bugs
- 📧 Contact — Get in touch
