MCP 服务器
UberLLM 是一个位于 https://api.uberllm.dev/mcp 的 MCP 服务器。连接到它的代理可以列出模型、为请求定价、制作和编辑图像、制作视频以及查询余额,而无需编写 HTTP 调用。
它在 官方 MCP 注册表 中被列为 dev.uberllm/mcp,因此读取注册表的客户端可以通过名称添加它。
它使用可流式传输的 HTTP 传输。使用您用于 /v1 的相同 API key 登录,以 Authorization: Bearer ull_... 的形式发送。工具调用会像对 API 的相同请求一样被计费、限制和拒绝:相同的价格、相同的每个 key 的消费限额,并且失败的请求不收取任何费用。
Claude Code
将 $KEY 替换为您的 API key,或者先在您的 shell 中设置 KEY:
claude mcp add --transport http uberllm https://api.uberllm.dev/mcp --header "Authorization: Bearer $KEY"
添加 --scope user 以便在每个项目中都使用它。运行 claude mcp list 来检查它是否已连接。
Claude 桌面版
Claude 桌面版通过 mcp-remote (需要 Node.js) 使用密钥连接到远程服务器。打开
设置 → 开发者 → 编辑配置 并添加:
{
"mcpServers": {
"uberllm": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://api.uberllm.dev/mcp", "--header", "Authorization:${UBERLLM_AUTH}"],
"env": { "UBERLLM_AUTH": "Bearer ull_your_key_here" }
}
}
}
请求头在 : 之后没有空格是故意的:在 Windows 上,Claude 桌面版不会引用 args 中的空格。保存后重启 Claude 桌面版。
Cursor 和其他客户端
读取 mcpServers 文件的客户端(例如 Cursor 的 ~/.cursor/mcp.json)接受:
{
"mcpServers": {
"uberllm": {
"url": "https://api.uberllm.dev/mcp",
"headers": { "Authorization": "Bearer ull_your_key_here" }
}
}
}
工具
| 工具 | 功能 | 花费 |
|---|---|---|
list_models |
您现在可以调用的模型及其价格。type 是 chat、image、video 或 music;search 保留 ID 或名称中包含这些词的模型。 |
否 |
get_model |
一个模型:其价格,以及对于媒体模型,parameters,一个包含其请求选项的 JSON Schema。 |
否 |
quote |
根据模型检查图像、视频、音乐或文本转语音请求并定价,但不实际生成任何内容。返回 cost_usd(标价)和 max_cost_usd(运行时预留的金额以及最高计费金额)。 |
否 |
generate_image |
根据提示生成图片。返回链接和 usage.cost_usd。如果使用 return_image: true,图片也会在响应中返回。 |
是 |
edit_image |
根据提示更改 image_url 中的图片(或 input_images 中的多张图片)。使用编辑模型,例如 ID 以 -edit 结尾的模型。 |
是 |
start_video |
开始生成视频并返回一个任务。发送 idempotency_key 以确保重试不会启动或支付第二个视频的费用。 |
是,当视频生成时 |
get_job |
一个视频或音乐任务:状态、进度,以及成功后,其文件链接和成本。 | 否 |
wait_job |
等待任务结束,最长 timeout_seconds(最多 50)。如果 done 是 false,请再次调用。 |
否 |
balance |
您现在可以花费的金额以及为正在运行的请求和任务预留的金额,以美元计。 | 否 |
模型在其 parameters schema 中列出的选项(例如 duration_seconds、
resolution 或 aspect_ratio),在 quote、generate_image、
edit_image 和 start_video 上会作为 options 传入。在消费工具上
发送 max_cost(美元),以拒绝任何可能花费更多的请求。
一个视频大约需要 30 秒到几分钟。通常的流程是
get_model、quote、start_video,然后 wait_job,直到状态为
succeeded、failed、canceled 或 expired。
文件
结果链接 (/v1/media/artifacts/...) 需要在 Authorization header 中提供相同的 API key 才能下载。文件在任务完成后会保留大约 3 小时;图片链接会保留大约 15 分钟。请参阅 创建视频或图片 以了解每个请求的详细信息。
错误
当 API 拒绝调用时,工具会返回一个错误结果,其中包含 API 自己的消息和代码,例如 insufficient_credits 或 max_cost_too_low。这些代码在 Errors。没有有效 key 的请求会在任何工具运行之前收到 401 的响应。
检查连接
curl https://api.uberllm.dev/mcp \
-H "Authorization: Bearer $KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'