Cbetamcp について
Cbetamcpは、Cloudflare Workers上で動作するCBETA仏典データ向けのMCPサーバーです。仏典を検索・参照するAIアシスタント向けに、検索や目録、典籍内容の取得機能を提供し、stdioを使うクライアント用のブリッジも備えています。
主な機能
- 01キーワード・典籍・著者・分類検索
- 02経文・著者・王朝の目録参照
- 03典籍情報・内容・目次の取得
- 04Cloudflare Workersへのデプロイ
- 05HTTPエンドポイントとstdioブリッジ
活用シーン
- 01仏典から語句を検索
- 02特定の典籍の情報と内容を取得
- 03著者・王朝・経文別に目録を参照
MCP 対応
/mcpでCBETAの検索、目録、典籍取得ツールを公開します。mcp-bridge.jsにより、stdioを使うMCPクライアントからWorkersのHTTPエンドポイントへ接続できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Cbeta MCP Workers
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 に自分でデプロイし、カスタムドメインを設定する必要があります。以下の手順に従ってください。
1. Fork してデプロイする
- 本プロジェクトを自分の GitHub に Fork します
- ローカルにクローンします:
git clone https://github.com/YOUR_USERNAME/CbetaMCP.git cd CbetaMCP - 依存関係をインストールします:
npm install - Cloudflare にログインします:
npx wrangler login - デプロイします:
npm run deploy
2. カスタムドメインを設定する(⚠️ 重要な手順)
workers.dev ドメインは使用できません。必ず自分のドメインを設定してください。
手順 1:カスタムドメインを Cloudflare に追加する
- Cloudflare Dashboard にログインします
- 自分の Workers プロジェクトを選択します
- Settings > Triggers > Custom Domains に進みます
- Add Custom Domain をクリックします
- ドメインを入力します。例:
cbeta.yourdomain.commcp.yourdomain.comcbeta-mcp.yourdomain.com
手順 2:ドメインが Cloudflare でホストされていることを確認する
- ドメインには Cloudflare の DNS を使用する必要があります
- Cloudflare にドメインを追加すると、DNS レコードが提供されます
- ドメイン登録業者の設定画面で、DNS を 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 データが返されれば成功です。
3. Workers のアドレスを取得する
デプロイしてカスタムドメインを設定すると、次のようなアドレスが取得できます:
https://cbeta.yourdomain.com
注意:Cloudflare が提供する *.workers.dev アドレスは使用しないでください。呼び出しには使えません。
3. MCP クライアントを設定する
本プロジェクトには mcp-bridge.js ファイルが含まれており、MCP クライアントと Cloudflare Workers の橋渡しをします。2 つの環境変数を設定する必要があります。
環境変数の説明
| 環境変数 | 説明 | 例 |
|---|---|---|
SERVER_URL | 必須 - Cloudflare Workers のカスタムドメインアドレス | https://cbeta.yourdomain.com/mcp |
MCP_BRIDGE_PATH | 任意 - mcp-bridge.js のパス。デフォルトは ./mcp-bridge.js | /absolute/path/to/mcp-bridge.js |
設定例
方法 1:デフォルトの相対パスを使用する(推奨)
mcp-bridge.js が MCP 設定ファイルと同じディレクトリにあることを確認します:
{
"mcpServers": {
"cbeta": {
"command": "node",
"args": ["./mcp-bridge.js"],
"env": {
"SERVER_URL": "https://cbeta.yourdomain.com/mcp"
}
}
}
}
⚠️ 注意:workers.dev ではなく、自分のカスタムドメインを使用してください。
方法 2:環境変数でパスを指定する
最初に環境変数を設定します:
# 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"
}
}
}
}
技術スタック
- Cloudflare Workers
- TypeScript
- Zod(データ検証)
- MCP(Model Context Protocol)
インストール
npm install
開発
npm run dev
デプロイ
npm run deploy
設定と使用方法
デプロイが完了したら、MCP クライアントでこの 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
設定ファイルの場所:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%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 サーバーの設定:
{
"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
設定方法:
- OpenCode の設定を開きます
- MCP Servers の設定を見つけます
- 以下の設定を追加します:
{
"mcpServers": {
"cbeta": {
"command": "node",
"args": ["./mcp-bridge.js"],
"env": {
"SERVER_URL": "https://cbeta.yourdomain.com/mcp"
}
}
}
}
- 設定を保存して再読み込みします
呼び出し例
設定が完了したら、会話内で CBETA ツールを直接呼び出せます。例:
- 「般若心経に関する内容を検索して」
- 「『金剛経』の詳細情報を調べて」
- 「禅宗の典籍をすべて一覧表示して」
AI アシスタントは対応する MCP ツールを自動的に呼び出し、CBETA の仏典データを取得します。
HTTP による直接呼び出し
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": "般若"
}
}
}'
API エンドポイント
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
本プロジェクトでは CBETA API(https://api.cbetaonline.cn/)を使用しています。
许可证
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。