Máy chủ MCP
UberLLM là một máy chủ MCP tại https://api.uberllm.dev/mcp. Một tác nhân kết nối với nó có thể liệt kê các mô hình, định giá một yêu cầu, tạo và chỉnh sửa hình ảnh, tạo video và kiểm tra số dư của bạn, mà không cần viết các lệnh gọi HTTP.
Nó được liệt kê trong Sổ đăng ký MCP chính thức với tên dev.uberllm/mcp, vì vậy các máy khách (client) đọc sổ đăng ký có thể thêm nó bằng tên.
Nó sử dụng Streamable HTTP transport. Đăng nhập bằng cùng một API key mà bạn dùng cho /v1, được gửi dưới dạng Authorization: Bearer ull_.... Một lệnh gọi công cụ được tính phí, giới hạn và từ chối chính xác như cùng một yêu cầu gửi đến API: cùng mức giá, cùng giới hạn chi tiêu cho mỗi key, và các yêu cầu thất bại không tốn phí.
Mã Claude
Thay $KEY bằng API key của bạn, hoặc đặt KEY trong shell của bạn trước:
claude mcp add --transport http uberllm https://api.uberllm.dev/mcp --header "Authorization: Bearer $KEY"
Thêm --scope user để sử dụng nó trong mọi dự án. Chạy claude mcp list để kiểm tra xem nó đã kết nối chưa.
Claude Desktop
Claude Desktop kết nối với một máy chủ từ xa bằng một khóa thông qua
mcp-remote (cần Node.js). Mở
Cài đặt → Nhà phát triển → Chỉnh sửa cấu hình và thêm:
{
"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" }
}
}
}
Tiêu đề không có khoảng trắng sau : một cách cố ý: trên Windows, Claude Desktop
không trích dẫn khoảng trắng bên trong args. Khởi động lại Claude Desktop sau khi lưu.
Cursor và các client khác
Các client đọc một file mcpServers (ví dụ: ~/.cursor/mcp.json của Cursor) yêu cầu:
{
"mcpServers": {
"uberllm": {
"url": "https://api.uberllm.dev/mcp",
"headers": { "Authorization": "Bearer ull_your_key_here" }
}
}
}
Công cụ
| Công cụ | Chức năng | Có tốn phí |
|---|---|---|
list_models |
Các mô hình bạn có thể gọi ngay bây giờ, cùng với giá của chúng. type là chat, image, video hoặc music; search giữ các mô hình có ID hoặc tên chứa các từ khóa. |
Không |
get_model |
Một mô hình: giá của nó và, đối với mô hình đa phương tiện, parameters, một JSON Schema của các tùy chọn mà yêu cầu của nó chấp nhận. |
Không |
quote |
Kiểm tra yêu cầu hình ảnh, video, âm nhạc hoặc chuyển văn bản thành giọng nói dựa trên mô hình và định giá nó, mà không tạo ra bất cứ thứ gì. Trả về cost_usd, giá niêm yết, và max_cost_usd, số tiền được giữ trong khi nó chạy và số tiền tối đa sẽ được tính phí. |
Không |
generate_image |
Tạo hình ảnh từ một prompt. Trả về các liên kết và usage.cost_usd. Với return_image: true, các hình ảnh cũng được trả về trong câu trả lời. |
Có |
edit_image |
Thay đổi hình ảnh trong image_url (hoặc các hình ảnh trong input_images) theo prompt. Sử dụng một mô hình chỉnh sửa, chẳng hạn như mô hình có ID kết thúc bằng -edit. |
Có |
start_video |
Bắt đầu một video và trả về một job. Gửi idempotency_key để việc thử lại không bao giờ bắt đầu hoặc thanh toán cho một video thứ hai. |
Có, khi video được tạo |
get_job |
Một job video hoặc âm nhạc: trạng thái, tiến độ và, một khi nó thành công, các liên kết tệp và chi phí của nó. | Không |
wait_job |
Chờ cho đến khi một job kết thúc, tối đa timeout_seconds (tối đa 50). Nếu done là false, hãy gọi lại. |
Không |
balance |
Số tiền bạn có thể chi tiêu ngay bây giờ và số tiền đang được giữ cho các yêu cầu và job vẫn đang chạy, tính bằng đô la Mỹ. | Không |
Các tùy chọn mà một mô hình liệt kê trong parameters schema của nó (ví dụ duration_seconds,
resolution hoặc aspect_ratio) nằm trong options trên quote, generate_image,
edit_image và start_video. Gửi max_cost (đô la Mỹ) trên một công cụ có tốn phí
để từ chối bất cứ thứ gì có thể tốn kém hơn.
Một video mất khoảng 30 giây đến vài phút. Quy trình thông thường là
get_model, quote, start_video, sau đó wait_job cho đến khi trạng thái là
succeeded, failed, canceled hoặc expired.
Tệp
Liên kết kết quả (/v1/media/artifacts/...) cần cùng một API key trong tiêu đề Authorization để tải xuống. Tệp được giữ trong khoảng 3 giờ sau khi một công việc hoàn thành; liên kết hình ảnh trong khoảng 15 phút. Xem
Tạo video hoặc hình ảnh để biết chi tiết của từng yêu cầu.
Lỗi
Khi API từ chối một cuộc gọi, công cụ sẽ trả về một kết quả lỗi mang theo thông báo và mã lỗi riêng của API, ví dụ insufficient_credits hoặc max_cost_too_low. Các mã này là những mã trong Lỗi.
Bạn có thể kết nối và liệt kê các công cụ mà không cần khóa, để các thư mục và người kiểm tra MCP có thể thấy máy chủ làm gì. Mỗi cuộc gọi công cụ đều cần khóa của bạn: nếu không có khóa, nó sẽ được trả lời 401 trước khi bất kỳ công cụ nào chạy, và không có gì được đọc hoặc chi tiêu.
Kiểm tra kết nối
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/call","params":{"name":"balance","arguments":{}}}'
Nó trả lời với số dư của bạn. Nếu không có dòng Authorization, nó trả lời 401;
thay vào đó hãy gửi "method":"tools/list" để xem các công cụ mà không cần khóa.