Cbetamcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Cbetamcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Cloudflare Workers 版本的 Cbeta MCP 服务器,提供 CBETA 佛经数据库的 MCP 工具支持。
本项目是将 Python FastAPI 版本的 CbetaMCP 迁移到 Cloudflare Workers 的版本。
*Cloudflare Workers 提供的 `.workers.dev` 域名在某些网络环境下无法正常访问。**
https://your-worker.your-subdomain.workers.dev ❌ 无法调用https://cbeta.yourdomain.com ✅ 自定义域名
https://cbeta-mcp.yourdomain.com ✅ 子域名你需要在 Cloudflare 中为自己的 Workers 绑定自定义域名后才能正常使用。
本项目需要自己部署到 Cloudflare Workers,并绑定自定义域名。请按以下步骤操作:
git clone https://github.com/YOUR_USERNAME/CbetaMCP.git
cd CbetaMCP npm install npx wrangler login npm run deployworkers.dev 域名无法使用,必须绑定自己的域名。
#### 步骤 1:添加自定义域名到 Cloudflare
cbeta.yourdomain.commcp.yourdomain.comcbeta-mcp.yourdomain.com#### 步骤 2:确保域名在 Cloudflare 托管
#### 步骤 3:验证域名生效
# 测试你的自定义域名
curl https://cbeta.yourdomain.com/mcp -X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test"}}}'看到返回 JSON 数据即表示成功。
部署并绑定自定义域名后,你会得到这样的地址:
https://cbeta.yourdomain.com注意:不要使用 Cloudflare 提供的 *.workers.dev 地址,那个无法调用。
本项目包含 mcp-bridge.js 文件,它作为 MCP 客户端与 Cloudflare Workers 之间的桥梁。你需要配置两个环境变量:
#### 环境变量说明
| 环境变量 | 说明 | 示例 |
|---|---|---|
SERVER_URL | 必需 - 你的 Cloudflare Workers 自定义域名地址 | https://cbeta.yourdomain.com/mcp |
MCP_BRIDGE_PATH | 可选 - mcp-bridge.js 的路径,默认为 ./mcp-bridge.js | /absolute/path/to/mcp-bridge.js |
#### 配置示例
方式一:使用默认相对路径(推荐)
确保 mcp-bridge.js 与 MCP 配置文件在同一目录:
{
"mcpServers": {
"cbeta": {
"command": "node",
"args": ["./mcp-bridge.js"],
"env": {
"SERVER_URL": "https://cbeta.yourdomain.com/mcp"
}
}
}
}⚠️ 注意:使用你自己的自定义域名,不是 workers.dev
方式二:使用环境变量指定路径
先设置环境变量:
# Linux/Mac
export MCP_BRIDGE_PATH="/path/to/cbeta-mcp/mcp-bridge.js"
export SERVER_URL="https://cbeta.yourdomain.com/mcp"
# Windows PowerShell
$env:MCP_BRIDGE_PATH="C:/path/to/cbeta-mcp/mcp-bridge.js"
$env:SERVER_URL="https://cbeta.yourdomain.com/mcp"然后配置 MCP 客户端:
{
"mcpServers": {
"cbeta": {
"command": "node",
"args": ["./mcp-bridge.js"],
"env": {
"SERVER_URL": "https://cbeta.yourdomain.com/mcp"
}
}
}
}npm installnpm run devnpm run deploy部署完成后,你需要在 MCP 客户端中配置该 MCP 服务器。
由于 Cloudflare Workers 只支持 HTTP 传输,而 MCP 客户端通常使用 stdio,所以需要 mcp-bridge.js 作为中间桥梁。
#### 项目文件结构
下载/克隆项目后,你会得到以下文件:
CbetaMCP/
├── mcp-bridge.js # ⭐ 桥接脚本(使用此文件)
├── src/ # 源代码(无需修改)
├── package.json # 项目配置
├── wrangler.toml # Workers 配置
└── README.md # 本文档你只需要关注 mcp-bridge.js 文件,其他是部署到 Cloudflare 所需的代码。
#### 路径配置方式
mcp-bridge.js 支持多种路径写法:
| 方式 | 示例 | 适用场景 |
|---|---|---|
| 相对路径(推荐) | "./mcp-bridge.js" | 脚本与 MCP 配置文件同目录 |
| 绝对路径(Linux/Mac) | "/home/user/CbetaMCP/mcp-bridge.js" | 指定完整路径 |
| 绝对路径(Windows) | "C:/Users/name/CbetaMCP/mcp-bridge.js" | Windows 系统(使用正斜杠) |
| 用户目录 | "~/CbetaMCP/mcp-bridge.js" | 存放在用户主目录下 |
以下配置适用于所有 MCP 客户端。只需将 SERVER_URL 替换为你自己的 Workers 地址,并根据实际情况调整 mcp-bridge.js 的路径。
#### 配置模板
{
"mcpServers": {
"cbeta": {
"command": "node",
"args": ["./mcp-bridge.js"],
"env": {
"SERVER_URL": "https://cbeta.yourdomain.com/mcp"
}
}
}
}⚠️ 重要提醒:
args: mcp-bridge.js 的路径(相对或绝对路径)SERVER_URL: 你的 Cloudflare Workers 自定义域名地址(不是 workers.dev)#### 本地开发配置
{
"mcpServers": {
"cbeta": {
"command": "node",
"args": ["./mcp-bridge.js"],
"env": {
"SERVER_URL": "http://localhost:8787/mcp"
}
}
}
}注意:本地开发使用 localhost,生产环境必须使用自定义域名。
#### Claude Desktop
配置文件位置:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%/Claude/claude_desktop_config.json{
"mcpServers": {
"cbeta": {
"command": "node",
"args": ["./mcp-bridge.js"],
"env": {
"SERVER_URL": "https://your-worker-name.your-subdomain.workers.dev/mcp"
}
}
}
}#### Cursor
Settings > Features > MCP Servers:
{
"mcpServers": {
"cbeta": {
"command": "node",
"args": ["./mcp-bridge.js"],
"env": {
"SERVER_URL": "https://cbeta.yourdomain.com/mcp"
}
}
}
}#### Cline
MCP Server 配置:
{
"mcpServers": {
"cbeta": {
"command": "node",
"args": ["./mcp-bridge.js"],
"env": {
"SERVER_URL": "https://cbeta.yourdomain.com/mcp"
}
}
}
}提示:Cline 支持使用环境变量 ${env:VAR_NAME}
#### Windsurf
MCP 配置面板:
{
"mcpServers": {
"cbeta": {
"command": "node",
"args": ["./mcp-bridge.js"],
"env": {
"SERVER_URL": "https://cbeta.yourdomain.com/mcp"
}
}
}
}#### OpenCode
配置方法:
{
"mcpServers": {
"cbeta": {
"command": "node",
"args": ["./mcp-bridge.js"],
"env": {
"SERVER_URL": "https://cbeta.yourdomain.com/mcp"
}
}
}
}配置完成后,你可以在对话中直接调用 CBETA 工具,例如:
AI 助手会自动调用相应的 MCP 工具来获取 CBETA 佛经数据。
你也可以直接通过 HTTP POST 请求调用 MCP 服务:
curl -X POST https://cbeta.yourdomain.com/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}'调用工具示例:
curl -X POST https://cbeta.yourdomain.com/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_cbeta_keyword",
"arguments": {
"keyword": "般若"
}
}
}'POST /mcp - MCP 协议接口tools/list - 列出所有可用工具tools/call - 调用指定工具search_cbeta_keyword - 关键词搜索search_cbeta_work - 典籍搜索search_cbeta_author - 作者搜索search_cbeta_category - 分类搜索catalog_cbeta_sutra - 经文目录catalog_cbeta_author - 作者目录catalog_cbeta_dynasty - 朝代目录work_cbeta_info - 典籍信息work_cbeta_content - 典籍内容work_cbeta_toc - 目录结构本项目使用 CBETA API: https://api.cbetaonline.cn/
MIT
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.