@evolinkai/mcp
v1.11.0
Published
Generate AI videos, images & music with one API key. 150+ models (Seedance, Kling, Veo, Sora, GPT Image, Suno...).
Readme
@evolinkai/mcp
Generate AI videos, images & music with one API key. 150+ models including Seedance, Kling, Veo, Sora, GPT Image, Suno, and more.
Unreleased search-fee fix: for the seven reviewed media routes, search defaults
to off. Keep it off unless the user explicitly requests or approves it. If the
agent thinks search is needed, explain the extra per-search rates and unknown
total, then wait for consent before enabling it. A task approval without search
does not authorize adding search. When enabled, estimates return search_charges
with current per-search rates. Unknown counts produce a partial zero-search subtotal excluding search
fees; a single task may perform no searches or multiple searches. Expected counts
are assumptions, not execution limits. Explain these charges before approval.
EvoLink Media is an MCP (Model Context Protocol) server that gives AI assistants like Claude the ability to generate multimedia content through a unified API.
Quick Start
npx @evolinkai/mcpSet your API key:
export EVOLINK_API_KEY="your-key-here"Get your API key at evolink.ai/dashboard/keys.
MCP Configuration
Claude Desktop
{
"mcpServers": {
"evolink-mcp": {
"command": "npx",
"args": ["-y", "@evolinkai/mcp@latest"],
"env": {
"EVOLINK_API_KEY": "your-key-here",
"EVOLINK_UPLOAD_ALLOWED_DIRS": "/absolute/path/to/media"
}
}
}
}Cursor
Go to Settings → MCP and add:
- Command:
npx -y @evolinkai/mcp@latest - Environment:
EVOLINK_API_KEY=your-key-here
Available Tools
| Tool | Description | Cost |
|------|-------------|------|
| search_models | Find image, video and audio models by type and keywords | Free |
| recommend_models | Compare documented alternatives and reference inputs | Free |
| search_docs | Find versioned model-reference excerpts and official links | Free |
| get_model | A model's parameters, prices and an example input | Free |
| estimate_cost | Check an input and estimate its cost, without submitting | Free |
| generate_image | Generate or edit images (waits up to 40 s for the result) | Paid |
| generate_video | Generate a video (returns a task_id) | Paid |
| generate_audio | Generate music, songs or speech (returns a task_id) | Paid |
| get_task | Check a task, waiting up to 45 s; result links and final charge | Free |
| list_tasks | Read up to 50 tasks, or find recent ones | Free |
| get_task_usage | Summarize retained completed-task costs with coverage metadata | Free |
| upload_file | Turn a media file into a link for generation input | Free |
| check_balance | Account balance, this key's spend, top-up link | Free |
There is no server-side approval step: generate tools are marked destructive and the assistant must quote with estimate_cost first; client settings control prompts. max_cost_usd guards the submission estimate, not final settlement. Every submit carries an idempotency key; repeating an uncertain call with its original client_request_id prevents double charges. Inputs are checked before submission, and errors include a next step. Local upload paths must be inside EVOLINK_UPLOAD_ALLOWED_DIRS. An API-key helper implementing credential get may be configured with EVOLINK_CREDENTIAL_HELPER. The browser-login @evolinkai/cli is an independent OAuth client and does not export API keys or implement this helper contract.
get_model includes versioned input/submission schemas and additional runtime constraints. search_docs searches bundled model references; recommendations explain editorial reasons and documented inputs, not model quality or task totals. list_tasks returns pages; since/until filter the selected page only. get_task_usage scans at most 20 pages of retained account-wide tasks, sums valid completed-task reported costs and reports missing costs and coverage. It excludes payment/refund ledgers and is not an invoice or final budget. There is no cancellation tool.
Models
150+ image, video and audio models (Seedance, Kling, Veo, Sora, Suno, GPT Image, Nano Banana and more). Use search_models to browse them with prices.
A successful get_task may report status: failed without being a tool error; error.code and error.message are what the API reports (the message on one line, without secrets, service addresses or non-EvoLink links). A failed task is not charged: the credits reserved at submission are returned automatically (billing_note). Failed/cancelled tasks expose billing.refund_status; an old gateway without this evidence remains unknown, and refunded is omitted, so a cancelled task without evidence stays unverified. A completed refund refers to the account balance only, with the recorded credits and timestamp; key-limit restoration is not established by this record. A different generation requires a fresh estimate and explicit user approval.
Paid request failures use submission_state (not_submitted, rejected, outcome_unknown, or accepted) independently of the error category. Only a local pre-submit refusal or recognized gateway admission rejection reports charged: no. A generic 5xx, transport/body failure or unverified success response reports charged: unknown; recover the original task or identical request ID before creating another paid intent. For these request errors, remote prose and suggestions are replaced with public guidance; console actions use the official origin and allowed paths.
License
Apache-2.0 — EvoLink AI
