Skip to Content
MediaTofu

MCP server

Connect AI clients to your account and run media jobs from them.

MediaTofu has a remote Model Context Protocol server, so AI clients such as Claude and ChatGPT can run jobs on your account. Everything they do is scoped to your account and uses the same plan limits as the API.

Jobs started over MCP use your account's compute minutes, the same as jobs started from the API. Read-only tools cost nothing.

The server URL is:

https://mcp.mediatofu.com/mcp

Connect with an API key

Clients that let you set headers can use an API key. Create one in the dashboard and send it with every request:

{
  "mcpServers": {
    "mediatofu": {
      "url": "https://mcp.mediatofu.com/mcp",
      "headers": { "Authorization": "Bearer mt_your_key" }
    }
  }
}

Connect with OAuth

Connector clients sign in with OAuth, so you never paste a key. Add https://mcp.mediatofu.com/mcp as a custom connector and the client sends you to app.mediatofu.com. Sign in with your emailed link and choose Allow.

To disconnect a client, go to API keys in the dashboard and use Connected apps. It loses access at once.

Tools

ToolWhat it doesUses compute
run_ffmpegRuns one FFmpeg command, using {{key}} placeholders as in Run FFmpeg.Yes
probeReads a file's format and streams.Yes
compressRe-encodes a video to a smaller MP4.Yes
convertConverts video or audio to another format.Yes
resizeResizes a video.Yes
trimCuts a section without re-encoding.Yes
thumbnailGrabs one frame as a JPEG.Yes
extract_audioSaves a video's soundtrack as audio.Yes
gifTurns part of a video into a GIF.Yes
get_jobReads a job's status, outputs and errors.No
list_jobsLists your jobs, newest first.No
get_usageShows your plan, compute used and limits.No

The simple tools take the same parameters as their API endpoints. A job uses at least one second of compute, and a job that fails because of its command still uses the time it ran for.

Inputs are https URLs or the id of a file you've already uploaded. Files can't be uploaded over MCP.

Jobs and waiting

A job tool waits up to 20 seconds for the job to finish. If it's still queued or running after that, the tool returns the job's id and status, and the client can follow up with get_job. The job keeps running either way.

Webhooks aren't available from MCP tools.

Errors

When a job can't start, for example because of bad parameters, a plan limit or too many concurrent jobs, the tool returns the same message as the API's error. An expired or revoked sign-in or key gets a 401, and the client asks you to reconnect.

On this page