@rendobar/mcp is a Model Context Protocol server that gives an AI agent the same operations as the REST API: submit jobs, upload local files, poll status. Run it locally with npx, or connect the remote HTTP server from a browser.
Connect a client
Get an API key at app.rendobar.com under Settings, API Keys. Copy therb_... value. Then add Rendobar to your client.
- Claude Desktop
- Cursor
- Claude Code
- VS Code
- Other clients
Edit the config file, then restart Claude Desktop.
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
get_account and reports your balance. If you see “No Rendobar API key found” in the client’s MCP logs, the env block didn’t reach the server. See Common fixes.
Needs Node 20.10 or later. The server checks at startup and exits with a clear message if it’s older.
Tools
Both servers expose the same five job tools. The local server addsupload_file (reads a file off disk in one call). The remote server swaps in upload_media, which hands you a curl command to upload first.
| Tool | Purpose | Returns |
|---|---|---|
submit_job | Submit any active job type. inputs maps name to URL, params carries type-specific options. | { jobId, status, url? } |
get_job | Poll one job by ID. Shape grows with status (progress while running, cost and output when complete). | { id, type, status, output?, ... } |
list_jobs | Recent jobs, filterable by status and type. | { jobs[], total } |
cancel_job | Cancel a waiting or dispatched job. CONFLICT once it’s running. | { id, status: "cancelled" } |
get_account | Balance, plan, and limits. No parameters. | { balance, plan, isPro, limits } |
upload_file | Local only. Read a file from disk, upload to ephemeral storage. | { downloadUrl, sizeBytes } |
upload_media | Remote only. Return an upload endpoint and curl command for the user to run. | { uploadEndpoint, instructions, ... } |
output.file.url for the file to play or download, or output.data for a computed answer. The output shape is the same for every job type. Failures come back as isError: true with { error: { code, message } }. Common codes: UNAUTHORIZED, INSUFFICIENT_CREDITS, RATE_LIMITED, VALIDATION_ERROR, NOT_FOUND, CONFLICT, INVALID_JOB_TYPE.
submit_job enumerates current job types at server startup. ffmpeg is the only Live type today. See the FFmpeg reference for accepted commands.
Worked example: burn captions
Hand Claude Desktop a local clip and an.srt, then say:
Burn the captions inThe agent runs the flow in tool calls you can watch in the panel:~/Videos/clip.srtinto~/Videos/clip.mp4and give me the result. Use Rendobar.
upload_filefor the.mp4, then for the.srt. Each returns adownloadUrl.submit_jobwithtype: "ffmpeg", both URLs asinputs, and a command using-vf subtitles.get_jobevery few seconds untilstatus: "complete", thenoutput.file.url.
cdn.rendobar.com for 24 hours, then auto-delete.
Remote server for web and mobile
Browser and phone clients can’t run a local stdio process. Point them at the remote HTTP server athttps://api.rendobar.com/mcp instead. Job submission and polling are identical. The one difference: the remote server can’t read your disk, so upload_media returns a curl command you run yourself, then paste the downloadUrl back into the chat.
In claude.ai, open Settings, Connectors, Add custom connector. In ChatGPT, open Settings, Apps & Connectors, Custom. Both want:
- URL:
https://api.rendobar.com/mcp - Authentication: Bearer token, your
rb_...key
Common fixes
No Rendobar API key found
No Rendobar API key found
The
env block in your client config didn’t reach the server, or the key has the wrong prefix (it must start with rb_). Verify the config the client actually loaded. In Claude Desktop, Settings, Developer, Open MCP Log Folder shows the launch command and the env vars it received. The server reads credentials in order: --api-key flag, then RENDOBAR_API_KEY, then ~/.config/rendobar/credentials.json.Cursor or Windsurf on macOS can't find npx
Cursor or Windsurf on macOS can't find npx
A client launched from the macOS Dock inherits the GUI environment, not your shell PATH. If you installed Node via nvm or asdf,
npx isn’t on that PATH. Use the absolute path from which npx as the command. On Windows, if npx isn’t recognized, set "command": "npx.cmd".Tool calls hang or the agent sees no tools
Tool calls hang or the agent sees no tools
A hang almost always means the server crashed after the handshake. Read stderr in your client’s MCP log (Claude Desktop:
mcp-server-rendobar.log; Cursor and VS Code: Output panel, MCP) and look for "level": "error". If the handshake succeeded but tools/list is empty, the package is likely corrupt: run npm cache clean --force then npx -y @rendobar/mcp@latest --version.See also
- FFmpeg reference: the main job type
submit_jobcalls - Authentication: the API key model for both transports
- Errors: full code list behind
isErrorresponses - Plan limits: file-size caps and concurrency by plan