Rendobar

com.rendobar由 rendobar.com 发布官方发布者v1.13.0更新于 Oct 24, 2026

Transform video, audio and images, and generate media from prompts. FFmpeg, captions, models.

已验证Streamable HTTP可网页运行云端与基础设施文件与存储媒体与设计

概览

AI 生成的概览

Rendobar 官方 MCP 服务器,提供无服务器媒体处理:让助手运行 FFmpeg 任务、压缩、加字幕,以及生成或编辑图像。

可以做什么
  • 上传本地文件并取回托管 URL,用作任务输入
  • 实时列出任务类型、提交任意类型任务、查询状态与结果、列出近期任务、取消运行中的任务
  • 转换媒体:FFmpeg 命令、JSON 时间线合成、按体积预算压缩、字幕烧录与动态字幕、媒体信息检查
  • 生成与编辑媒体:文生图、按文字指令编辑最多四张参考图、放大增强
  • 查询账户余额、套餐限制与并发任务数
  • 列出已连接的存储桶及其文件,并把任务输出写回存储桶
适用场景
适合让助手在不本地安装 FFmpeg 的情况下处理视频、音频或图片,例如裁剪或静音片段、压到指定文件大小、烧录字幕,或生成标题图和放大图像。需要读取本机文件时选本地包;托管端点无法访问磁盘。
运行要求
可使用远程端点(浏览器 OAuth 或 Bearer 密钥),或通过 npx 运行本地 npm 包,需要 Node 20.10 及以上。本地服务器通过 RENDOBAR_API_KEY、--api-key 参数或 Rendobar CLI 登录写入的凭据文件认证。执行任务需要有余额的 Rendobar 账户;存储相关工具需要 2026 年 9 月 13 日之后创建的密钥。
安装前请注意
任务会从 Rendobar 余额中扣费,昂贵操作前先查余额。传给 upload_file 的文件会上传到 Rendobar 服务器,任务输入与输出按其套餐的保留策略存储。本地服务器可读取你明确指定的任意路径。匿名遥测(工具名、是否成功、耗时、声明的意图)会发送至 PostHog,可用 DO_NOT_TRACK=1 或 RENDOBAR_TELEMETRY=0 关闭。任务可把输出写入已连接的存储桶。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Rendobar,将其添加到工作区。
  2. 连接 所需的 凭据。它们会被私密存储,绝不会在公开页面上展示。
  3. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/com.rendobar%2Fmcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。 客户端会在首次连接时完成 OAuth 登录。

{
  "mcpServers": {
    "rendobar": {
      "type": "http",
      "url": "https://api.rendobar.com/mcp"
    }
  }
}

README

[Rendobar]

@rendobar/mcp

Serverless media processing for AI agents.
The official Model Context Protocol server for Rendobar.

Docs  ·  npm  ·  Glama  ·  Discord

[npm version] [npm downloads] [MIT license] [Node version]

@rendobar/mcp is the official Model Context Protocol server for Rendobar, a serverless media processing API. The server runs locally over stdio and reads files straight from your disk, so an AI agent can take a file off your machine, process it on Rendobar's infrastructure, and hand back a hosted URL.

Rendobar covers both sides of media work.

Transform what you have. Run any FFmpeg command against video, audio or images the way you would write it locally. Inspect a file and get a normalized summary plus the full ffprobe report. Compose video from a declarative JSON timeline. Compress to a target size or quality, where the encoder searches candidate encodes and returns the smallest file that clears the bar. Burn in subtitles from SRT, VTT or ASS, or let it transcribe when none is given.

Generate what you do not. Create an image from a text prompt on hosted open-weight diffusion models. Edit up to four reference images from a written instruction, no masks and no coordinates. Upscale on a one-step diffusion restoration model that reconstructs detail rather than only sharpening. The same model-backed layer drives the transcription and keyword highlighting behind animated captions, so this is not an image-only capability.

The job list grows over time, so this README names families rather than types. list_job_types reads the current set live from the registry on every call.

Published to npm as @rendobar/mcp and to the official MCP Registry as com.rendobar/mcp.

Without it

You: Mute the first 3 seconds of intro.mp4.

The agent tells you to install FFmpeg. Then you go looking for how to gate a filter on a timestamp, land on volume=enable='lt(t,3)', and lose another few minutes to quote escaping in your shell. Nobody remembers that syntax, which is the problem.

With it

You: Mute the first 3 seconds of intro.mp4.

jsonc
upload_file  { "path": "~/clips/intro.mp4" }// → { "downloadUrl": "https://cdn.rendobar.com/u/abc123/intro.mp4", "sizeBytes": 4821004 }
submit_job   { "type": "ffmpeg",               "inputs": { "intro.mp4": "https://cdn.rendobar.com/u/abc123/intro.mp4" },               "params": { "command": "-i intro.mp4 -af \"volume=enable='lt(t,3)':volume=0\" -c:v copy out.mp4" } }// → { "jobId": "job_9f2a", "status": "waiting" }
get_job      { "jobId": "job_9f2a", "wait": true }// → complete · $0.01 · https://cdn.rendobar.com/o/job_9f2a/out.mp4

The agent writes the filter. Rendobar runs it. Nothing gets installed on your machine, and -c:v copy means the video stream is never re-encoded.

Two more things to ask for

Hit a size budget.

You: Get demo.mov under 25 MB so I can email it.

jsonc
upload_file  { "path": "~/recordings/demo.mov" }// → { "downloadUrl": "https://cdn.rendobar.com/u/7c1e/demo.mov", "sizeBytes": 251658240 }
submit_job   { "type": "compress.target",               "inputs": { "source": "https://cdn.rendobar.com/u/7c1e/demo.mov" },               "params": { "for": "web", "target": { "maxSize": "25MB" } } }// → { "jobId": "job_4b8d", "status": "waiting" }
get_job      { "jobId": "job_4b8d", "wait": true }// → complete · https://cdn.rendobar.com/o/job_4b8d/out.mp4 · 23.8 MB

You give it the ceiling, not a bitrate. The encoder searches candidate encodes and returns the smallest file that still clears the quality bar, so you are not guessing at CRF values to land under a mail server's limit.

Generate an image.

You: Make a 1920x1080 title card for a video about deep sea diving.

jsonc
submit_job   { "type": "image.generate",               "inputs": {},               "params": { "model": "standard",                           "prompt": "Title card for a deep sea diving documentary. Shafts of light through deep blue water, small diver silhouette, empty space across the upper third for a title.",                           "width": 1920, "height": 1080 } }// → { "jobId": "job_2fa7", "status": "waiting" }
get_job      { "jobId": "job_2fa7", "wait": true }// → complete · https://cdn.rendobar.com/o/job_2fa7/out.png

inputs is empty because nothing is being transformed. Ask for a tier (economy, standard, premium) and the platform picks the model, or pin an exact model id to reach its own controls. Requested dimensions are snapped to what the chosen model can actually render.

The rest of the surface

Six more tools, and the prompts that reach them.

You: What can Rendobar actually do?

jsonc
list_job_types {}// → { "jobTypes": [ { "type": "compose", "tag": "Compose",//                     "summary": "Render a video from a declarative JSON timeline",//                     "acceptsMedia": ["video", "image", "audio"] }, ... ],//     "guidance": "..." }

Read live from the job registry on every call, which is why nothing in this README enumerates job types. A new one appears here without a release.

You: How much credit is left?

jsonc
get_account {}// → { "balance": "$4.86", "balanceUsd": 4.86, "plan": "free", "isPro": false,//     "limits": { "concurrentJobs": 1, "maxFileSize": "500 MB", "jobTimeoutMin": 60 } }

Worth a call before submitting something expensive.

You: What did I run this morning?

jsonc
list_jobs { "status": "complete", "limit": 5 }// → { "jobs": [ { "id": "job_9f2a", "type": "ffmpeg", "status": "complete",//                 "createdAt": "2026-08-04T09:12:00Z", "cost": "$0.01",//                 "output": { "url": "https://cdn.rendobar.com/o/job_9f2a/out.mp4" } } ] }

The compact row is enough to find a result you lost. Call get_job when you need the full output.

You: Stop that one, I picked the wrong file.

jsonc
cancel_job { "jobId": "job_9f2a" }// → { "id": "job_9f2a", "status": "cancelled" }

Works on waiting, dispatched and running jobs. A running job's upstream execution is stopped too, so you are not billed for work you cancelled.

You: Where can this land once it's done?

jsonc
list_storage {}// → { "storage": [ { "id": "prod-media", "provider": "s3", "bucket": "acme-prod-media",//                     "access": "deliver", "defaultDestination": true, "pending": false } ],//     "note": "..." }

The buckets connected on the Storage page, without the endpoint or region an agent has no use for. Use the id in destinations, or as storage://<id>/<path> in any input.

You: What's already in the archive bucket?

jsonc
list_storage_files { "storageId": "raw-archive" }// → { "folders": [ { "prefix": "2026/", "uri": "storage://raw-archive/2026/" } ],//     "files": [ { "key": "notes.txt", "size": 800, "lastModified": "2026-09-01T00:00:00.000Z",//                  "uri": "storage://raw-archive/notes.txt" } ],//     "cursor": null }

Every entry carries its own storage:// uri, ready to hand straight to submit_job. Pass a folder's prefix to go one level deeper.

Install

Rendobar has two MCP servers. Pick by whether the agent needs your filesystem.

@rendobar/mcp (this package)Hosted (api.rendobar.com/mcp)
Transportstdio, spawned by your clientStreamable HTTP
Reads local filesYes. That is the reason it existsNo. The server has no disk
AuthAPI keyOAuth in the browser, or a Bearer key
Best forClaude Desktop, Cursor, Cline, Zedclaude.ai, ChatGPT, hosted gateways

Hosted, no API key, one command:

bash
claude mcp add --transport http rendobar https://api.rendobar.com/mcp

Local, for filesystem access. Get a key at app.rendobar.com → Settings → API Keys, then:

bash
claude mcp add rendobar -s user --env RENDOBAR_API_KEY=rb_... -- npx -y @rendobar/mcp

Already ran rb login with the Rendobar CLI? Drop --env. The server finds the credentials file.

Claude Desktop, Cursor, Cline, Windsurf

Same block for all four. Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows). Cursor: ~/.cursor/mcp.json on every OS. Windsurf: ~/.codeium/windsurf/mcp_config.json on every OS. Cline: MCP panel → Configure.

On Linux, use Cursor, Windsurf, Cline, Zed, VS Code or Continue. Claude Desktop has no Linux build, so it is the one client on this list you cannot use there. The server itself runs fine on Linux.

json
{  "mcpServers": {    "rendobar": {      "command": "npx",      "args": ["-y", "@rendobar/mcp"],      "env": { "RENDOBAR_API_KEY": "rb_..." }    }  }}

Restart the client afterwards.

Zed, VS Code, Continue

Zed uses context_servers instead of mcpServers, in ~/.config/zed/settings.json:

json
{  "context_servers": {    "rendobar": {      "source": "custom",      "command": "npx",      "args": ["-y", "@rendobar/mcp"],      "env": { "RENDOBAR_API_KEY": "rb_..." }    }  }}

VS Code 1.101+, in .vscode/mcp.json, prompts for the key instead of storing it:

json
{  "servers": {    "rendobar": {      "command": "npx",      "args": ["-y", "@rendobar/mcp"],      "env": { "RENDOBAR_API_KEY": "${input:rendobarKey}" }    }  },  "inputs": [{ "id": "rendobarKey", "type": "promptString", "password": true, "description": "Rendobar API Key" }]}

Continue, in .continue/mcpServers/rendobar.yaml:

yaml
type: stdiocommand: npxargs: ["-y", "@rendobar/mcp"]env:  RENDOBAR_API_KEY: rb_...

Runs on macOS, Linux and Windows. Every release is tested on all three in CI. There are no native dependencies, so architecture does not matter: x64 and arm64 both work. Needs Node 20.10 or later, and the server checks at startup and exits with a clear message on older versions.

Tools

ToolPurpose
upload_fileUpload a local file. Returns a URL to use in submit_job.
list_job_typesEvery active job type, read live. Call this first.
submit_jobSubmit a job of any type.
get_jobStatus and result. Pass wait: true to long-poll for ~50s.
list_jobsRecent jobs.
cancel_jobCancel a waiting, dispatched or running job.
get_accountBalance, plan limits, active job count.
list_storageBuckets connected on the Storage page, for storage:// inputs and destinations.
list_storage_filesFolders and files in a connected bucket, each with its storage:// URI.

Job types

ffmpeg is the one to reach for first. It takes a command the way you would write it locally, runs it on hosted infrastructure, and hands back a URL: transcode, trim, mux, filter, concat, whatever the flags allow. Pass params.compute as gpu to force NVENC encoding (Pro plan), or leave it on auto and Rendobar routes CUDA commands to a GPU and everything else to CPU.

Beyond that there are purpose-built types for timeline composition, compression to a size budget, subtitle burn-in, animated captions, media inspection, image generation, image editing, and image upscaling.

Full reference: rendobar.com/docs/jobs. Or call list_job_types, which reads the registry live and is always current. This README deliberately does not enumerate them, so it cannot go stale.

Chaining

A submit_job input can point at a previous job's output, so a multi-step edit never round-trips through your disk. For ffmpeg inputs, pass { job: "job_..." }. For other types, read the output URL from get_job and pass that.

Your own storage

A file in a bucket connected on the Storage page is an input as storage://<id>/<path>. Add destinations: ["storage://<id>"] to submit_job and the output is written back to the bucket once the job completes, reported per bucket in get_job's deliveries. list_storage gives the ids and list_storage_files the paths. An API key made before September 13, 2026 cannot read storage, so create a new one. Credentials saved by rb login need a fresh rb login once rb asks for storage access.

Authentication

Three sources, first match wins:

  1. --api-key=<key> flag
  2. RENDOBAR_API_KEY environment variable
  3. ~/.config/rendobar/credentials.json on Unix, %APPDATA%\rendobar\credentials.json on Windows, written by rb login (Rendobar CLI 1.1+)

Installed as a .mcpb extension, the key goes in the extension's own settings field and none of the three above apply.

The server starts without a key so clients and directories can list its tools, and it makes no network call at startup. Nothing it advertises depends on the registry, so the job type list can never be baked into a build. list_job_types reads it live instead, and because GET /jobs/types is public it answers without a key at all. Every other tool returns a clear error until a key is set.

If you do not need Rendobar to read files off your machine, the hosted server at https://api.rendobar.com/mcp signs you in through the browser and there is no key to manage. The local server exists for disk access, and the key is the price of it.

Telemetry

The server reports anonymous usage through PostHog's MCP Analytics SDK: tool name, success, duration, and the agent's stated intent.

It never sends your parameters or responses. File URLs, job configs, and outputs are stripped before anything leaves the process. Events carry no account identity and build no person profile. It is off in CI automatically.

bash
DO_NOT_TRACK=1        # or RENDOBAR_TELEMETRY=0

Troubleshooting

Common problems

Cursor on macOS can't find npx. Launched from the Dock, Cursor gets the GUI PATH rather than your shell PATH. Use an absolute path: "command": "/Users/you/.nvm/versions/node/v20.x/bin/npx".

Windows can't find npx. Use "command": "npx.cmd" if your client doesn't resolve it.

Tools appear but calls fail with "No Rendobar API key configured". Expected with no key set. The server advertises tools so clients can list them, but calls need credentials. Set RENDOBAR_API_KEY, pass --api-key, or run rb login. Startup logs a no_api_key warning to stderr.

The server won't start. It writes JSON lines to stderr. Check your client's output panel for entries with level: "error".

Privacy Policy

Full policy: rendobar.com/privacy. What this server does specifically:

Collected. Your API key, read from the flag, the environment, or the credentials file. Job inputs you pass to a tool, and files you point upload_file at, are sent to the Rendobar API to run the job you asked for. Anonymous telemetry covers the tool name, whether it succeeded, how long it took, and the agent's stated intent.

Not collected. Tool parameters and responses. File URLs, job configs, and outputs are stripped before any telemetry leaves the process. Telemetry carries no account identity and builds no person profile. Nothing is read from your disk except the file paths you explicitly pass to upload_file.

Storage. Uploaded inputs and job outputs live in Rendobar's storage and are removed on the retention schedule for your plan. Telemetry goes to PostHog. The server keeps nothing on your machine beyond the credentials file the CLI writes.

Third parties. Rendobar (job execution and storage) and PostHog (anonymous telemetry). Opt out of telemetry entirely with DO_NOT_TRACK=1 or RENDOBAR_TELEMETRY=0.

Contact. [email protected], or open an issue on this repo.

Security

Reporting a vulnerability: see SECURITY.md.

Contributing

See CONTRIBUTING.md. For AI-assisted development, AGENTS.md and CLAUDE.md.

License

MIT

来源:README.md,提交 fecaf6f

工具

0
该服务器需要登录,因此 SourceWeft 无法在没有账号的情况下读取其工具,也未收录。已连接账号所能看到的内容可能因账号及其权限而异。

版本历史

2
  1. v1.13.0最新Oct 10, 2026
  2. v1.12.1Sep 16, 2026

评分

已满足适用检查项的 85%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分