关于 replicate-mcp-server
replicate-mcp-server 为 MCP 客户端提供 Replicate 模型目录的创作与编排工具,涵盖图像、视频、音频、语音、LLM、视觉和 3D 等任务。它支持模型发现、批量与 DAG 工作流;生成工具会等待任务完成并将输出下载到本地。
主要功能
- 01图像、视频、音频和语音生成
- 02LLM、视觉、转录及图像处理工具
- 03语音克隆、3D 生成与口型同步
- 04批量预测与 DAG 流程编排
- 05模型搜索、推荐及费用估算
- 06等待任务完成并下载输出
适用场景
- 01从文本生成图像、视频或音乐
- 02转录音频并将摘要转换为语音
- 03批量生成变体或编排多步媒体处理
- 04对图像进行放大、修补或去除背景
MCP 相关
该 MCP 服务通过 stdio 和 HTTP/SSE 向 MCP 客户端暴露 Replicate 模型调用、发现、训练、部署和编排工具。调用生成工具时会等待结果,并在本地连接方式下自动下载输出。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
36收录的工具列表 · 更新于 2 天前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| seed | integer | 否 | 用于生成可复现输出的随机种子。 |
| model | any | 否 | 可以是精选键(flux-schnell、flux-dev、flux-pro、sd-3.5-large、recraft-v3、recraft-v4.1、flux-2-max、seedream、ideogram-v2、imagen-3),也可以是类似 "owner/name" 或 "owner/name:version" 的 Replicate 标识符。 |
| prompt | string | 是 | 描述要生成图像的文本提示词。 |
| download | boolean | 否 | 是否将生成的文件下载到本地。默认值为 true。为 false 时,仅返回 Replicate URL(URL 在约 24 小时后过期)。 |
| timeout_ms | integer | 否 | 等待预测的最长毫秒数。超时后返回预测 ID,以便通过 replicate_get_prediction 轮询。默认值:300000 (5min)。 |
| extra_input | object | 否 | 合并到请求中的模型专用额外输入(例如 {guidance: 3.5})。使用 replicate_get_model_schema 查看模型接受的参数。 |
| num_outputs | integer | 否 | 要生成的图像数量(1-4)。 |
| aspect_ratio | enum | 否 | 宽高比。Flux 模型支持。默认值为 1:1。1:1 | 16:9 | 9:16 | 4:3 | 3:4 | 21:9 | 3:2 | 2:3 |
详细介绍
Replicate MCP 服务
这是一款通用、跨平台的 MCP 服务,可让任何 MCP 客户端——Claude Desktop、claude.ai 网页应用(Connectors)、Cursor、VS Code 中的 Cline / Continue,或你自己的应用——原生访问完整的 Replicate 目录:图像生成、视频、音乐、语音、超分辨率、分割、大模型、声音克隆、3D、口型同步,以及 Replicate 托管的任何其他内容。
它支持两种传输方式:stdio(本地桌面应用/编辑器集成的标准方式)和 HTTP/SSE(供远程/网页客户端及你自己的服务使用)。
连接到 MCP 客户端后,只需提出这样的请求:
“生成一个暴风雨中灯塔的电影感镜头,画面比例为 21:9” “写一段 30 秒的合成波乐曲” “制作一段 5 秒的视频,内容是一架纸飞机飞过城市” “用英式男声朗读这段文字” “将这张图片放大 4 倍”
……助手便会调用合适的 Replicate 模型,等待结果,并(在本地/stdio 配置中)将输出下载到你的设备。
安装
最快方式——通过 Smithery 一键安装:打开服务页面,复制适用于你客户端(Claude、Cursor、VS Code、Cline、Windsurf 等)的 Install 代码片段。它会配置服务并提示你输入 Replicate 令牌。(通过 Smithery 托管的网关路由——最简单,无需本地配置。)
令牌保留在本地——npm + stdio(你的 Replicate 令牌不会离开你的设备):
npx -y replicate-mcp-server
……也可以将其添加到任意 MCP 客户端的配置中(完整步骤请参阅安装)。
**Claude Desktop 单文件安装:**从发布页面下载最新的 [.mcpb,然后将其拖到 Claude Desktop 上。
已在运行(自带令牌):https://replicate-mcp.sena-labs.dev/mcp — HTTP/SSE,多租户;在 x-replicate-api-token 标头中传入你的令牌。
连接后,试试下面的示例提示词。
试用
客户端连接后,用自然语言提出请求——助手会选择合适的工具,等待结果,并将输出下载到本地:
“生成一个暴风雨中灯塔的电影感镜头,画面比例为 21:9” “5 秒视频哪个模型最便宜?然后用它生成。” — 推荐 → 生成 “制作 4 个狐狸标志的变体,采用扁平矢量风格” — 批量处理(并发) “转录这段音频、总结内容,然后大声朗读摘要” — DAG 工作流 “将这张图片放大 4×” · “写一段 30 秒的合成波乐曲” · “用英式男声朗读这段内容” “开始用我的数据集微调 Flux LoRA,并在完成后告诉我” — 训练
发现工具(replicate_recommend_model、replicate_search_models、replicate_estimate_cost)和 5 个内置工作流提示词,可帮助它在无需你指定模型的情况下串联多步骤任务。
包含内容
36 个工具和 66 个精选模型,既能满足常见场景下的便捷使用需求,也能灵活应对其他各种需求。每个生成/运行工具都会等待任务完成并自动将输出下载到你的设备——只需提出一次请求,返回的就是本地文件,而不是需要你持续跟进的任务 ID:
精选生成工具
| 工具 | 用途 |
|---|---|
replicate_generate_image | 文本 → 图像。精选模型:Flux Schnell / Dev / Pro / 2-Max、SD 3.5、Recraft v3 / v4.1、Seedream、Ideogram v2、Imagen 3。 |
replicate_generate_video | 文本(或图像)→ 视频。精选模型:Kling Pro、Minimax、Hunyuan、Luma Ray、Wan 2.2、Grok Video、Seedance。 |
replicate_generate_audio | 文本 → 音乐 / 歌曲。精选模型:MusicGen、ACE-Step(完整歌曲,含歌词)、Riffusion、MiniMax Music。 |
replicate_generate_speech | 文本 → 语音(TTS)。精选模型:Kokoro、Minimax Speech、Chatterbox、Gemini TTS、Grok TTS。 |
replicate_chat | 通过大模型将文本转换为文本。精选模型:Llama 3.1 405B、Llama 3 70B / 8B、Mistral 7B、Mixtral 8x7B、DeepSeek-R1。 |
replicate_vision | 图像 → 文本。精选模型:LLaVA 13B / 1.6 34B、BLIP-2、Qwen2-VL。 |
replicate_upscale_image | 图像 → 更高分辨率的图像。精选模型:Real-ESRGAN、Clarity Upscaler、Clarity Pro、SwinIR、GFPGAN。 |
replicate_remove_background | 图像 → 透明 PNG。精选模型:rembg、BiRefNet、BRIA RMBG。 |
replicate_transcribe_audio | 音频/视频 → 文本。精选模型:Whisper、Distil-Whisper、WhisperX(说话人分离)、ElevenLabs Scribe。 |
replicate_inpaint | 基于蒙版编辑图像。精选模型:Flux Fill Pro、SD inpaint、Ideogram v2 edit。 |
replicate_segment | 图像 → 蒙版。精选模型:SAM 2、Grounded-SAM(文本提示词)。 |
replicate_embed_text | 文本 → 向量嵌入。精选模型:BGE、Jina v3、MPNet。 |
语音、3D 和虚拟形象工具
| 工具 | 用途 |
|---|---|
replicate_clone_voice | 文本 + 参考样本 → 克隆音色的语音。精选模型:XTTS v2、OpenVoice v2。 |
replicate_generate_3d | 文本或图像 → 3D 网格(GLB/OBJ)。精选模型:Hunyuan 3D、Rodin、TripoSR。 |
replicate_lipsync | 肖像 + 文本/音频 → 口型同步的说话视频。精选模型:Video Avatar、SadTalker。 |
编排工具
| 工具 | 用途 |
|---|---|
replicate_batch_start / replicate_batch_status | 在后台任务中并发运行最多 50 个预测;轮询进度和结果。 |
replicate_pipeline_start / replicate_pipeline_status | 运行由预测组成的 DAG — 独立步骤并行执行,下游步骤通过 "$stepId.urls[0]" 模板引用连接。 |
replicate_recommend_model | 按优先级(速度 / 成本 / 质量 / 均衡)对类别中的精选模型排序,并估算成本 — 为你提供模型选择建议。 |
replicate_refresh_models | 发现尚未纳入精选注册表的热门 Replicate 模型。 |
微调(训练)
| 工具 | 用途 |
|---|---|
replicate_create_training | 使用你的数据集和参数,在可训练的基础模型(例如 Flux LoRA)上启动微调 / 训练任务。 |
replicate_get_training | 按 ID 轮询训练任务(状态、日志、生成的模型版本)。 |
replicate_list_trainings | 列出近期训练任务(ID、模型、状态、时间戳)。 |
replicate_cancel_training | 按 ID 取消正在进行的训练任务。 |
部署
| 工具 | 用途 |
|---|---|
replicate_list_deployments | 列出你的 Replicate 部署(所有者/名称、当前模型和版本)。 |
replicate_get_deployment | 查看某个部署(模型、版本、硬件、自动伸缩最小值/最大值)。 |
replicate_run_deployment | 对部署运行预测 — 等待任务完成并自动下载输出,与精选生成工具相同。 |
预测管理 + 成本
| 工具 | 用途 |
|---|---|
replicate_list_predictions | 最近的预测历史(ID、模型、状态、时间戳)。 |
replicate_cancel_prediction | 按 ID 取消正在进行的异步任务。 |
replicate_estimate_cost | 根据精选价格表预估调用前的美元成本。 |
通用/发现工具
| 工具 | 用途 |
|---|---|
replicate_run_model | 使用任意输入运行 任何 Replicate 模型(用于处理精选工具未涵盖的情况)。 |
replicate_search_models | 在 Replicate 目录中进行自由文本搜索。 |
replicate_get_model_schema | 获取任意模型的 OpenAPI 输入架构。 |
replicate_get_prediction | 轮询长时间运行的预测(视频、长歌曲)。 |
replicate_upload_file | 将文件上传到 Replicate 存储空间(通过本地 file_path 或 base64_data/数据 URI);返回可供其他工具使用的 URL。 |
输出:
- 图像/视频/音频:下载到
~/Downloads/replicate-mcp/<model>/<prediction_id>/(可配置)。同时返回本地路径和原始 Replicate URL。对于图像,响应还会包含内嵌的 base64 预览(调整大小以确保低于 Claude Desktop 的 1 MB 工具结果限制;较大的图像则改用 URL 嵌入),以及三种嵌入代码片段(带保存按钮、由<details>包裹的 iframe 查看器、自适应<img>或 Markdown 图像),以便聊天客户端以内嵌形式按原始尺寸显示结果。 - 文本(大模型、视觉、分类器):模型的回复会显示在
text_output中,并打印在工具响应顶部,方便 Claude 直接读取。
编辑手头的图像
编辑工具(replicate_upscale_image、replicate_inpaint、replicate_remove_background、replicate_vision、图像转视频、唇形同步、图像转 3D)都需要 URL。要将文件转换为 URL,请使用 replicate_upload_file:
- 你有本地路径(Claude Desktop):
replicate_upload_file({ file_path: "C:/Users/you/photo.jpg" })→ URL → 传递给编辑工具。如果将图像拖放/粘贴到聊天中,请先将其保存到磁盘——服务无法直接读取聊天附件,而 Claude Desktop 无法将大型图像的精确字节内容作为工具参数传递。 - 你在内存中有文件字节(带代码容器的 claude.ai 网页版):在容器中读取上传的文件,将其编码为 base64,然后调用
replicate_upload_file({ base64_data: "data:image/png;base64,..." })→ URL → 编辑工具。base64_data接受纯 base64 字符串或完整的data:<mime>;base64,...URI。 - 你已有 URL:直接将其传递给编辑工具——无需上传。
为什么选择这个,而不是官方 Replicate MCP?
Replicate 提供了自己的官方 MCP(npm 上的 replicate-mcp,托管在 mcp.replicate.com)。它是一款出色、免费且始终保持最新的REST API 一对一桥接工具——由 Stainless 根据 Replicate 的 OpenAPI 规范生成,包含约 37 个通用工具,对应各个端点(账户、集合、部署、文件、硬件、模型、预测、训练、Webhook),还提供 --tools=dynamic 模式和 Deno「代码模式」沙箱。
这个服务面向不同的用途。官方 MCP 是一个轻量、通用的 API 桥接工具:要生成图像,你需要使用原始模型 ID 和原始输入 JSON 调用 create_predictions,LLM 还得自行查找每个模型的输入架构;它会返回 starting,但不会等待任务完成或下载文件(你可以选择使用 Prefer: wait,但等待时间最多为 60 秒,之后还得手动轮询)。这个服务则是一个开箱即用的创意工作室:提供以任务为导向的工具、合理的默认值、精心挑选的模型注册表、内置编排和成本感知功能——每个生成/运行工具都会等待任务完成,并自动将输出下载到本地。
| 维度 | 官方 Replicate MCP | 本服务(sena-labs) |
|---|---|---|
| 理念 | 轻量通用 API 桥接工具(REST 一对一映射) | 以任务为导向的创意工作室 |
| 工具 | 约 37 个通用 REST 工具(另有动态/代码模式) | 36 个任务工具(generate_image/video/audio/speech/3d、clone_voice、lipsync、upscale、inpaint、segment、remove_background、transcribe、vision、chat、embed) |
| 媒体辅助工具 | 无——原始 predictions.create + 原始输入 JSON | 专为特定用途打造的工具,并提供合理的默认值(宽高比等) |
| 运行体验 | 返回 starting;可选择使用 Prefer: wait(≤60 秒),之后需手动轮询 | 等待任务完成并自动将输出下载到本地 |
| 模型筛选 | 无——模型需自行指定,架构也需自行查找 | 60 多个精选模型 + recommend_model + 智能路由 + search_models + get_model_schema |
| 编排 | 无 | 异步批处理(batch_start/status)+ DAG 流水线(pipeline_start/status) |
| 成本 | 无 | 预先估算美元成本的 estimate_cost |
| 微调 + 部署 | 有(通用 REST) | 有——create/get/list/cancel_training + list/get/run_deployment(运行时会等待并下载) |
| 额外功能 | OAuth、自动同步至 API | 5 个工作流提示词 + 2 个 MCP 资源(目录 + 功能) |
| REST 覆盖范围 | 原始 API 覆盖面更广(集合、文件、硬件、Webhook、账户) | 专注于创意任务,以及在此基础上的编排/成本功能 |
| 托管 / 官方状态 | 官方、免费,托管于 mcp.replicate.com,支持 OAuth 和自动同步 | 可自托管、多租户(每位用户使用各自的令牌),支持 stdio + HTTP/SSE |
**简而言之:**如果你需要全面、始终保持最新的原始 REST API 访问能力(以及提供 OAuth 的免费托管端点),官方 MCP 是更合适的选择。如果你希望使用经过筛选、具备编排和成本感知能力的创意工作流,只需描述需求,就能拿到完成的文件——无需查询架构、手动轮询或手动下载,那么本服务更适合你。两者可以互补:使用官方 MCP 处理全面的 API 接入,使用本服务完成创意工作。
前置条件
- Node.js ≥ 20(使用原生
fetch和 Web Streams) - 拥有 API 令牌的 Replicate 账户:https://replicate.com/account/api-tokens
- MCP 客户端——例如 Claude Desktop(macOS/Windows/Linux)、claude.ai Web 应用、Cursor、Cline / Continue(VS Code),或任何自定义 MCP 主机。以下操作指南以 Claude Desktop 为例;同一段
command/args/env配置适用于任何客户端的 MCP 配置。对于远程/Web 客户端,请参阅 HTTP / SSE 传输。
安装
1. 克隆并构建
git clone <this-repo> replicate-mcp-server
cd replicate-mcp-server
npm install
npm run build
这会生成 dist/index.js,作为服务的入口文件。
2. 获取 Replicate API 令牌
- 前往 https://replicate.com/account/api-tokens
- 点击 Create token
- 复制令牌(以
r8_...开头)
3. 将其连接到 MCP 客户端(以下以 Claude Desktop 为例)
下面的 MCP command / args / env 配置块在所有客户端中都相同,只有配置文件的位置不同(Cursor:~/.cursor/mcp.json;Cline/Continue:扩展的 MCP 设置;自定义主机:你自己的启动器)。对于 Claude Desktop,请找到配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
添加 replicate 条目(与已有内容合并):
{
"mcpServers": {
"replicate": {
"command": "node",
"args": ["/ABSOLUTE/PATH/TO/replicate-mcp-server/dist/index.js"],
"env": {
"REPLICATE_API_TOKEN": "r8_your_token_here"
}
}
}
}
⚠️ 请使用
dist/index.js的绝对路径。在此配置中,波浪号(~)和相对路径均无法使用。
可选:设置自定义下载目录:
"env": {
"REPLICATE_API_TOKEN": "r8_...",
"REPLICATE_DOWNLOAD_DIR": "/Users/you/my-replicate-outputs"
}
4. 重启 Claude Desktop
完全退出并重新打开 Claude Desktop。你应该会在工具面板中看到“replicate”(聊天窗口底部的锤子图标)。
VS Code(原生 MCP)
VS Code 内置了 MCP 支持。此仓库提供了一个可直接使用的 .vscode/mcp.json,它会在本地运行已发布的 npm 包,并提示你输入令牌(以掩码形式存储,绝不会写入文件):
{
"inputs": [
{ "type": "promptString", "id": "replicate_token", "description": "Replicate API token", "password": true }
],
"servers": {
"replicate": {
"type": "stdio",
"command": "npx",
"args": ["-y", "replicate-mcp-server"],
"env": { "REPLICATE_API_TOKEN": "${input:replicate_token}" }
}
}
}
在 VS Code 中打开此文件,然后点击 replicate 服务上方的 Start(或运行 MCP: List Servers)。VS Code 只会提示你输入一次令牌。
关于 Smithery“一键安装”的说明: 它会将 VS Code 连接到 Smithery 的托管网关(
mcp.smithery.run),由 Smithery 的基础设施运行服务,并在每次调用时通过该网关传递你的个人 Replicate 令牌。对于个人 API 令牌,建议使用上面的本地 stdio 配置——令牌不会离开你的计算机。
使用示例
连接后,只需自然地向助手提出需求(示例采用 Claude 的表达方式,但任何支持 MCP 的助手都可以使用):
图像
生成一只在薄雾森林中的折纸狐狸,宽高比为 16:9。
带文字的高质量图像
为一家名为“Crema”的咖啡店制作一个徽标——使用 Recraft。
视频
制作一段 5 秒的视频,内容是一架纸飞机在霓虹灯照亮的城市中滑翔。使用 Kling Pro。
(视频需要 1–5 分钟。如果调用超时,Claude 会自动通过
replicate_get_prediction轮询。)
音乐
创作一段 20 秒的器乐合成器浪潮循环,带有强劲的低音线。
带歌词的歌曲
使用 ACE-Step 模型,根据以下歌词生成一首悲伤的独立民谣歌曲:[...]
语音
用英国女性的声音朗读这段文字:[...]
与大模型聊天
请 Llama 3 70B 用两句话解释量子纠缠。
图像理解
查看这张照片 [URL],告诉我前景中有哪些物体。
放大
使用 Real-ESRGAN 将这张图像放大 4 倍:[URL]
移除背景
去除这张产品照片的背景:[URL]
其他需求
在 Replicate 中搜索“speech to text”,然后转录这段音频:[URL]
(Claude 会通过
replicate_search_models→replicate_run_model选择 Whisper。)
异步预测的工作方式
图像生成通常只需几秒钟。视频、长篇音乐和某些大型模型可能需要几分钟。服务会透明地处理这些情况:
- 你调用
replicate_generate_video。 - 服务通过每 2 秒轮询一次 Replicate,最多等待
timeout_ms(默认 5 分钟)。 - 如果在此期间完成 → 你会获得 URL 和本地路径。
- 如果未完成 → 返回
pending: true和prediction_id。Claude 之后可以调用replicate_get_prediction来获取结果。
如果你希望在当前调用中等待,可以将 timeout_ms 增至 30 分钟:
生成一段 10 秒的 Hunyuan 视频。最多等待 20 分钟。
配置
| 环境变量 | 默认值 | 用途 |
|---|---|---|
REPLICATE_API_TOKEN | (必填) | 你的 Replicate API 令牌。 |
REPLICATE_DOWNLOAD_DIR | ~/Downloads/replicate-mcp | 生成文件的保存位置。 |
费用
Replicate 按计算时间的秒数收费,具体费用因模型而异。预估费用:
- Flux Schnell 图像:约 $0.003
- Flux Dev 图像:约 $0.025
- Flux 1.1 Pro 图像:约 $0.04
- Kling 1.6 Pro 5 秒视频:约 $0.45
- MusicGen 30 秒片段:约 $0.05
- Kokoro TTS:每次请求约 $0.001
- Llama 3 70B 聊天:每 1K 个 token 约 $0.001
- LLaVA 13B 视觉:每张图像约 $0.001
- Real-ESRGAN 4x 放大:每张图像约 $0.003
当前费率请参阅 https://replicate.com/pricing;使用情况请查看账单控制面板。
故障排除
“REPLICATE_API_TOKEN environment variable is not set”
你尚未将令牌填入 Claude Desktop 配置的 env 块中。请仔细检查 JSON,然后重启 Claude Desktop。
Claude Desktop 中显示“Server disconnected”
通常是路径问题。请确保 dist/index.js 的路径是绝对路径,且文件存在。手动测试:
REPLICATE_API_TOKEN=r8_... node /ABSOLUTE/PATH/dist/index.js
你应该会在 stderr 中看到 replicate-mcp-server v1.0.0 ready. API token detected.。按 Ctrl+C 退出。
模型不在精选列表中
直接使用模型的完整标识符即可:model: "stability-ai/sdxl" 的效果相同。或者使用 replicate_search_models 查找模型。
需要指定模型的特定版本
使用 owner/name:version_hash 格式:model: "black-forest-labs/flux-schnell:bf53bdb93d739c9c915091cfa5f49ca662d11273a5eb30e7a2ec1939bcf27a00"。
下载的文件缺失
检查 REPLICATE_DOWNLOAD_DIR。文件按 <dir>/<sanitized-model>/<prediction-id>/output-N.<ext> 的格式组织。
部署为平台(v3.0+)
除了单个本地 stdio 客户端外,该服务也可作为多用户平台运行——提供 HTTP/SSE 传输(用于 claude.ai 网页连接器、远程编辑器和自定义应用)、多令牌池、由 Webhook 驱动的异步完成、Docker 和 npm 分发。
HTTP / SSE 传输
将服务作为 HTTP 服务运行,而不是使用 stdio:
# Local-only, no auth — for development.
node dist/index.js --http --port 8088
# LAN-exposed with Bearer auth — behind a private network.
node dist/index.js --http --host 0.0.0.0 --port 8088 --api-key your-shared-secret
客户端向 http://host:port/mcp 发送 JSON-RPC POST 请求,内容如下:
Authorization: Bearer your-shared-secret
Content-Type: application/json
Accept: application/json, text/event-stream
Mcp-Session-Id: <set by server on initialize, echoed on follow-ups>
健康检查(无需身份验证):GET /health → {"status": "ok"}。
npm 安装(发布后)
npx replicate-mcp-server --http --port 8088 --api-key SECRET
# or as a Claude Desktop launcher:
npx replicate-mcp-server
Docker
docker build -t replicate-mcp-server .
docker run --rm \
-e REPLICATE_API_TOKEN=r8_... \
-e LOG_LEVEL=info \
-p 8088:8088 \
replicate-mcp-server
默认的 CMD 会以 HTTP 模式在 0.0.0.0:8088 上启动。若要将端口暴露到专用网络之外,请通过 docker run ... replicate-mcp-server --http --api-key SECRET 添加 --api-key。
多令牌轮询池
对于团队/多租户部署,可为服务配置多个 Replicate 账户,以扩大速率限制余量:
REPLICATE_API_TOKEN_POOL=r8_account_a,r8_account_b,r8_account_c \
node dist/index.js --http --port 8088
每次 Replicate API 调用都会轮换使用池中的令牌。如果只配置了一个令牌,则回退到单个 REPLICATE_API_TOKEN。
Webhook 接收器(事件驱动的完成处理)
如果服务可从公共互联网访问,你可以用 Webhook 回调取代轮询:
REPLICATE_WEBHOOK_PUBLIC_URL=https://your.domain/webhook \
REPLICATE_WEBHOOK_PORT=8089 \
node dist/index.js --http --port 8088
Replicate 会将预测完成通知 POST 到公共 URL;服务无需轮询,即可完成等待中的工具调用。每个预测都有随机令牌,用于验证对应的回调。
Smithery 上架
此服务已上线 Smithery:smithery.ai/server/sena-labs/replicate-mcp-server——已扫描(36 个工具、5 个提示词、2 个资源),可一键安装到 Claude、Cursor、VS Code、Cline、Windsurf 和其他 MCP 客户端。smithery.yaml 定义了安装时的配置界面(令牌、可选令牌池、日志级别、下载目录)。
claude.ai 网页连接器
若要将其作为连接器列入 claude.ai 网页应用:
- 使用 HTTPS 公开部署服务(Render / Fly.io / Cloudflare / 位于 TLS 终止反向代理之后的裸机 VPS)。
- 在 https://console.anthropic.com/settings/connectors 注册 MCP HTTP 端点。
- 用户从 claude.ai → Settings → Connectors → Add custom 添加该连接器。
Anthropic 会人工审核连接器——请提供他们要求的 OAuth 流程/API 密钥输入表单,以及公开的 /mcp URL。
架构
src/
├── index.ts # MCP server, tool registration, response formatting (handler factory)
├── replicate.ts # API client, polling, output extraction (URLs + text), file download with retry
├── schemas.ts # Zod schemas for tool inputs (with .strict())
├── models.ts # Curated model registry per category (8 categories)
└── constants.ts # Shared constants (timeouts, paths, character limits)
test/
├── stdio-test.mjs # End-to-end MCP handshake + tool registration test (response correlation)
└── unit/ # node:test unit suites for pure helpers
├── extract-urls.test.mjs
├── extract-texts.test.mjs
├── infer-filename.test.mjs
└── sanitize.test.mjs
服务器使用 stdio 传输(本地 Claude Desktop 集成的标准方式)和 MCP TypeScript SDK 的现代 registerTool API。所有工具输入都通过带有 .strict() 强制校验的 Zod 架构进行验证,不会有未知参数漏过校验。
8 个精选生成工具共用一个 makeGenerationHandler 工厂;每个工具只需声明如何将自己的特定输入字段映射到 Replicate 请求体。输出 URL 通过递归遍历预测结果的 output 字段提取,该字段可以是字符串、数组、嵌套对象,或以上任意组合。文本输出(来自 LLM / 视觉 / 分类器模型)也通过同一遍历器呈现,因此响应中会包含非 URL 字符串。文件使用 Node 的 stream/promises.pipeline() 流式写入磁盘,避免数 GB 的视频占满内存。下载遇到临时故障(网络错误或 5xx)时会以指数退避重试一次;4xx 错误则立即失败。
测试
npm run build
node --test test/unit/*.test.mjs # 43 unit tests on pure helpers
node test/stdio-test.mjs # End-to-end MCP handshake + tool/list + tool/call sanity check
支持与联系
- 错误和功能请求 — 提交 issue;这是最快的反馈渠道,也能让所有人搜索到答案。
- 问题、集成帮助或其他事宜 — [email protected]
- 安全漏洞 — 请勿提交公开 issue。请发送邮件至 [email protected],或提交私密安全公告;有关范围和响应时间,请参阅 SECURITY.md。
如果这个项目对你有帮助,可以考虑支持其开发:
商标与免责声明
这是一个独立的社区项目。它与 Replicate, Inc. 无关联,未获其认可或赞助,也未与其建立官方联系。
- “Replicate” 和 Replicate 徽标是 Replicate, Inc. 的商标。本服务是用于连接 Replicate 公共 HTTP API 的互操作客户端;使用该名称仅用于说明兼容性(指称性合理使用),并非暗示来源或背书。如需了解 Replicate 官方 MCP 服务,请参阅 replicate.com/docs/reference/mcp。
- 基于由 Anthropic 创建的开放标准 Model Context Protocol (MCP) 构建。
- 提及的模型名称(FLUX、Recraft、Whisper、Llama 等)均为其各自所有者的商标,仅用于标识你可以运行的模型。
你有责任遵守 Replicate 服务条款以及所调用的各个模型的许可证。随附的第三方开源组件及其许可证列于 THIRD_PARTY_LICENSES.md 中。横幅和徽标使用 Inter 字体(SIL Open Font License 1.1)。
许可证
MIT — 详见 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。