Mirvio Cloud Video Tools
Process video and audio through MCP: create variants, replace metadata, reframe, compress, join, and extract frames. Remote HTTPS server with bearer-token access; jobs use your Mirvio plan allowance.
Hosted MCP Server
npx add-mcp 'https://mirvio.ai/api/mcp'Installs into Claude Code, Codex, Cursor and more
Documentation
1. Create a token
- Sign in and open Account.
- Under “MCP access for AI clients”, enter a name and select Create token.
- Copy the token. Mirvio shows it only once and stores only a hash.
- To stop access, select Revoke. The next request with that token fails.
The token goes in your client configuration, not in a chat message. Do not share it. Each token can only use your own uploads, jobs, and allowance.
2. Add the server to your client
Endpoint: https://mirvio.ai/api/mcp (Streamable HTTP, stateless). Put the token in an environment variable named MIRVIO_MCP_TOKEN.
Claude Code
claude mcp add --transport http mirvio https://mirvio.ai/api/mcp \
--header "Authorization: Bearer $MIRVIO_MCP_TOKEN"
Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"mirvio": {
"url": "https://mirvio.ai/api/mcp",
"headers": { "Authorization": "Bearer ${env:MIRVIO_MCP_TOKEN}" }
}
}
}
VS Code (.vscode/mcp.json)
{
"inputs": [
{ "type": "promptString", "id": "mirvio-token", "description": "Mirvio MCP token", "password": true }
],
"servers": {
"mirvio": {
"type": "http",
"url": "https://mirvio.ai/api/mcp",
"headers": { "Authorization": "Bearer ${input:mirvio-token}" }
}
}
}
OpenAI Codex CLI (~/.codex/config.toml)
[mcp_servers.mirvio]
url = "https://mirvio.ai/api/mcp"
bearer_token_env_var = "MIRVIO_MCP_TOKEN"
Claude Desktop and other stdio-only clients
Use the mcp-remote bridge (requires Node.js):
{
"mcpServers": {
"mirvio": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mirvio.ai/api/mcp",
"--header", "Authorization:${AUTH_HEADER}"],
"env": { "AUTH_HEADER": "Bearer paste-your-token-here" }
}
}
}
3. Run a job
- Call
get_capabilitiesfor supported operations and recipes. Then callget_accountto see your remaining cloud outputs. create_uploadreturns a signed address and acurlcommand. The client runs the command on your computer. The upload returns a receipt.confirm_uploadtakes that receipt.submit_jobsqueues the jobs. Each Creative Mesh variant uses one cloud output. Other operations use one each. The client must setacknowledgeVideoJobsto the exact output count (up to 40), or the request fails without a charge. A repeatedrequestKeyreturns the first batch without a second charge.get_job_statusshows progress. Jobs run asynchronously, usually within a few minutes. A job that fails, or a queued job that does not finish within 6 hours, returns its cloud output. A finished job keeps its charge, even if its result expires before you download it.get_download_urlreturns a link that works for 5 minutes. Results expire after 24 hours.
Tools and costs
| Tool | What it does | Cost |
|---|---|---|
get_capabilities | Supported operations, limits, and effect recipes | Free |
get_account | Plan, remaining cloud outputs, and costs | Free |
create_upload | Signed upload address and a curl command for one file | Free |
confirm_upload | Confirm the upload with its receipt | Free |
submit_jobs | Queue 1–10 video or audio operations | 1 per variant or operation |
get_job_status | Status of each job in a batch | Free |
get_download_url | Signed 5-minute download link for a finished job | Free |
Reframe targets 9:16, 16:9, 1:1, or 4:5 with a crop or a blurred background. Compress targets a file size from 100 KB to 1 GB. Metadata replaces device and capture tags.
Try these workflows
- “Add an upward RGB pixel scan to the first seven seconds of this video. Make one Creative Mesh variant.”
- “Use Side Voice + Center Layer with this video and my separate center audio track.”
- “Join these three clips, extract twelve thumbnails, and make a 9:16 version with a blurred background.”
Upload and confirm every source file first. The audio effect requires a separate center track and explicit agreement: the base voice cancels when played in mono. The client can read starting settings from get_capabilities. These reproduce effect types; they do not recover the exact settings of another video.
Supported operation names: reframe, compress, metadata,creative_mesh, audio_mesh, thumbnails,audio_split, video_join, and audio_join. A join uses confirmed upload IDs in the desired order. Download a completed result and upload it again when you want to use it as the source for a later step.
The same jobs in the web tools
Each MCP job runs the same cloud tool as the web form. Read what each tool changes before you connect a client.
Limits
- Authentication uses a personal bearer token. Clients that connect only through OAuth, such as claude.ai web connectors and ChatGPT connectors, are not supported yet.
- The client must be able to run
curl(or another HTTP request) to upload the file. - Upload limits are the same as the web tools: 2 GB per file and 100 files or 10 GB a day; 250 MB per file and 20 files on the free trial.
- Up to 10 active tokens per account.