A side-by-side look at the Mediamcp and MCP Server MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Mediamcp for multimedia process work as a local process; choose MCP Server for multimedia process as a local process. You can also run both side by side in one mcpServers block.
OPENROUTER_API_KEY.generate_image, edit_image, generate_video.list_models, get_model_schema, run_model.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Multimedia Process | Multimedia Process |
| Quality signal | 65/100 · Great | 65/100 · Great |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | API key required | Not declared |
| Pricing | BYOK (pay the provider) | Not declared |
| Required env vars | OPENROUTER_API_KEY | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 4 | 34 |
| Directory activity | 5 views 0 installs 0 upvotes | 1 views 0 installs 0 upvotes |
| Tools | 6 | 11 |
| Full listing | View Mediamcp | View MCP Server |
generate_imageGenerate one or more images from a text prompt using a cloud AI model. Every image is saved to disk and its absolute path is returned, along with a small inline preview. Use edit_image instead when starting from an existing image.edit_imageEdit or transform existing image(s) with a text instruction — restyle, add or remove elements, change background, or combine several images into one scene. The result is saved to disk and its absolute path is returned, along with a small inline preview.generate_videoGenerate a video from a text prompt, and optionally from an input image (image-to-video). Async job: starts generation, then waits and polls. Video generation typically takes 1-5 minutes. The finished file is saved to disk and its absolute path is returned. If waiting times out, a polling_url is returned — pass it to check_video_status later instead of starting a new (billed) job. For image-to-video, pass first_frame_image so the clip animates from that exact picture (e.g. a still produced by generate_image). Image inputs require an image-to-video-capable model such as 'bytedance/seedance-2.0', 'bytedance/seedance-2.0-fast', or 'google/veo-3.1'.check_video_statusCheck a previously started video generation job (from generate_video's polling_url or video id). If the job has completed, downloads the video, saves it to disk, and returns the absolute path.list_modelsList image- and video-capable model slugs available on the configured endpoint, with pricing where known. Use this to pick a `model` value for generate_image, edit_image, or generate_video.check_configDiagnose the mediamcp server setup: endpoint, API key presence and validity, default models, and output directory writability. Run this first when any other mediamcp tool fails.list_modelsSearch the live WaveSpeed model catalog (image, video, audio, 3D). Returns model IDs usable with run_model. Do not invent model IDs — always pick one returned by this tool.get_model_schemaGet a model's real input schema (required fields, properties, defaults). Call this before run_model so inputs match what the model actually accepts.run_modelRun any WaveSpeed model. input keys come from get_model_schema; unknown keys are rejected before submission. Local files: pass "@./path" string values — they are uploaded and replaced with hosted URLs (bare paths are NOT uploaded). Returns the prediction id right away (done=false); call get_prediction with that id and wait_seconds until done=true to get the output URLs. The task keeps running on the server. Pass wait_seconds here to wait for a quick model in the same call.get_priceEstimate the cost of a run before executing it (no charge). Provide the same input you would pass to run_model — pricing often depends on inputs like duration or resolution, and a quote made without them can be lower than the real charge.get_balanceShow the WaveSpeed account credit balance, with the link to top up.list_predictionsList past predictions (run history), newest window first. Defaults to the last 24 hours; pass since/until (ISO or YYYY-MM-DD) for other ranges. Use get_prediction with an id for one task in full.list_billingsList itemized charges and refunds (billing records). Requires an API key with Billing access.get_usageUsage statistics: spend, request counts, daily series and per-model breakdown. Defaults to the last 7 days. Requires an API key with Billing access.delete_predictionsDelete finished predictions from this account's run history, up to 100 at a time. They stop appearing in list_predictions and get_prediction, and this tool cannot bring them back. Runs that are still going are left alone, and only the key's own organization's records are deleted. Ask the user first, and pass confirm: true only after they agreed to delete these ids.upload_fileUpload a local file to WaveSpeed and get its hosted URL (identical bytes reuse the same upload for 24h). Usually unnecessary — run_model handles "@./path" inputs itself.get_predictionFetch the status and outputs of a past or in-flight prediction by id — use to pick up a run that returned done=false. Pass wait_seconds to keep waiting for it to finish.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"legolev-mediamcp": {
"command": "npx",
"args": [
"-y",
"mediamcp"
],
"env": {
"OPENROUTER_API_KEY": "YOUR_OPENROUTER_API_KEY_HERE"
}
}
}
}
{
"mcpServers": {
"mcp-215": {
"command": "npx",
"args": [
"-y",
"@wavespeed/mcp"
]
}
}
}