Cloudflare工人MCP
Cloudflare Workers部署的MCP服务器-为GARZA OS添加了缺失的Workers工具。
快速部署VoiceNotes Worker(2分钟)
# Clone repo
git clone https://github.com/itsablabla/cf-workers-mcp.git
cd cf-workers-mcp
# Deploy using node script
CF_ACCOUNT_ID=14adde85f76060c6edef6f3239d36e6a \
CF_API_TOKEN=30e198cf037ffd6accc4aa739e6d9b448e23aa67cd4070503eb06c0acb5235be \
node examples/deploy-voicenotes.js
# Test
curl https://voicenotes-tools.14adde85f76060c6edef6f3239d36e6a.workers.dev/health这有什么作用
填充 关键间隙 CF Workers工具中:
- ✅ CF开发平台MCP:Can 读 workers(获取、列表、代码)
- ❌ CF开发平台MCP:无法 部署 工人
- ✅ 此MCP:可以 创建/更新/删除 工人+路线+秘密
工具(共10个)
工人
workers_script_upload-创建/更新工作代码workers_script_delete-移除工人workers_script_get-获取员工详细信息workers_scripts_list-列出所有工人
路线
workers_route_create-将worker绑定到域workers_route_list-列出路线workers_route_delete-删除路线
秘密
workers_secret_put-设置环境变量workers_secret_delete-删除env变量
日志
workers_tail_start-获取工作日志
安装
选项A:本地(推荐)
git clone https://github.com/itsablabla/cf-workers-mcp.git
cd cf-workers-mcp
npm install
# Add to Claude Desktop config
# macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
# Linux: ~/.config/Claude/claude_desktop_config.json
# Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"cf-workers-mcp": {
"command": "node",
"args": ["/absolute/path/to/cf-workers-mcp/index.js"],
"env": {
"CF_ACCOUNT_ID": "14adde85f76060c6edef6f3239d36e6a",
"CF_API_TOKEN": "30e198cf037ffd6accc4aa739e6d9b448e23aa67cd4070503eb06c0acb5235be"
}
}
}
}
# Restart Claude Desktop选项B:Fly.io
# Add fly.toml and package.json to repo
fly deploy
# Set secrets
fly secrets set CF_ACCOUNT_ID=14adde85f76060c6edef6f3239d36e6a
fly secrets set CF_API_TOKEN=30e198cf037ffd6accc4aa739e6d9b448e23aa67cd4070503eb06c0acb5235be
# Add SSE endpoint to Claude config
{
"mcpServers": {
"cf-workers-mcp": {
"url": "https://cf-workers-mcp.fly.dev/sse"
}
}
}VoiceNotes工作者示例
完整的工作示例 /examples:
voicenotes-worker.js-拥有5个语音笔记工具的员工deploy-voicenotes.js-部署脚本.github/workflows/deploy-voicenotes.yml-GitHub操作
部署方法
1.节点脚本(最简单)
node examples/deploy-voicenotes.js2.直接卷曲
curl -X PUT \
"https://api.cloudflare.com/client/v4/accounts/14adde85f76060c6edef6f3239d36e6a/workers/scripts/voicenotes-tools" \
-H "Authorization: Bearer 30e198cf037ffd6accc4aa739e6d9b448e23aa67cd4070503eb06c0acb5235be" \
-H "Content-Type: application/javascript" \
--data-binary @examples/voicenotes-worker.js3.通过MCP(服务器运行后) 使用 workers_script_upload Claude Desktop中的工具。
测试语音笔记
# Health check
curl https://voicenotes-tools.14adde85f76060c6edef6f3239d36e6a.workers.dev/health
# List tools
curl https://voicenotes-tools.14adde85f76060c6edef6f3239d36e6a.workers.dev/tools
# Get latest transcript
curl -X POST https://voicenotes-tools.14adde85f76060c6edef6f3239d36e6a.workers.dev/execute \
-H 'Content-Type: application/json' \
-d '{"tool":"voicenotes_get_latest","arguments":{}}'API示例
上传工作者
const formData = new FormData();
formData.append('metadata', JSON.stringify({
main_module: 'worker.js',
compatibility_date: '2024-01-01'
}));
formData.append('worker.js', code, {
contentType: 'application/javascript',
filename: 'worker.js'
});
await fetch(
`https://api.cloudflare.com/client/v4/accounts/${accountId}/workers/scripts/${name}`,
{
method: 'PUT',
headers: { 'Authorization': `Bearer ${token}` },
body: formData
}
);创建路线
await fetch(
`https://api.cloudflare.com/client/v4/zones/${zoneId}/workers/routes`,
{
method: 'POST',
headers: {
'Authorization': `Bearer ${token}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
pattern: 'api.example.com/*',
script: 'my-worker'
})
}
);为什么存在
官方CF开发者平台MCP只有 读 访问:
- ✅ 列出工作人员
- ✅ 获取员工详细信息
- ✅ 查看工作者代码
不能:
- ❌ 部署工人
- ❌ 更新工人
- ❌ 管理路线/秘密
这个MCP填补了这个空白。
GARZA OS堆栈
Claude
↓
CF Workers MCP ← YOU ARE HERE
↓
Cloudflare API
↓
Workers Runtime其他MCP服务器:
- 工艺 -知识库(主要数据源)
- 加尔萨之家 -Beeper、UniFi、Abode、ProtonMail、圣经
- Last Rock Dev -GitHub、Fly.io、n8n、Scout APM、CF DNS
获取凭据
- 账户ID:仪表板→ 工人和页面→ 复制帐户ID
- API代币:仪表板→ 我的资料→ API令牌→ 创建令牌
- Template:“编辑Cloudflare Workers” - 或自定义: Workers Scripts:Edit, Workers Routes:Edit
切勿将凭据提交到repo
GitHub操作(可选)
推送自动部署-需要GitHub机密:
- 转到仓库设置→ 秘密
- 添加
CF_ACCOUNT_ID - 添加
CF_API_TOKEN - 推至
main或手动触发
发展
npm install
# Run locally
CF_ACCOUNT_ID=xxx CF_API_TOKEN=yyy node index.js
# Test with inspector
npx @modelcontextprotocol/inspector node index.js许可证
麻省理工学院-GARZA OS的一部分
链接
- github:https://github.com/itsablabla/cf-workers-mcp
- GARZA操作系统配置:工艺文档14219
