Cartesi Knowledge MCP Server
Cartesi Knowledge MCP Server
PostgreSQLから厳選されたCartesi開発者リソースを、ストリーミング可能なHTTP経由でAIエージェントに公開する、本番環境を意識したModel Context Protocolサーバーです。
現在の機能
FastMCP (
mcp[cli]1.26.x) とstreamable_http_app()— セッションの寿命が正しく実行されるよう、FastMCPのStarletteアプリを本番環境で直接使用します(src/main.pyのcreate_app()を参照)。知識データベースへの読み取り専用アクセスのための Async SQLAlchemy + asyncpg。
階層化レイアウト: 設定とログ (
src/core/)、DBセッションとモデル (src/db/)、リポジトリ、ドメインサービス (src/domain/resource_service.py)、スキーマ、フォーマッタ、およびsrc/server/下のサーバーモジュール。トランスポートセキュリティ: DNSリバインディング保護、および
src/server/server.pyで設定可能なallowed_hosts/allowed_origins(デプロイ先のホスト名に合わせて拡張してください)。プレーンHTTPヘルスチェック: MCPルートと並行して
GET /healthzが{"status":"ok"}を返します。
知識のレスポンスはメタデータとリンク(タイトル、URI、canonical_url、ドキュメントルート)です。これらには取得されたページ本文全体は含まれません。エージェントが生のHTMLやマークダウンを必要とする場合は、外部URLを取得する必要があります。
ワークフローツール (prepare_cartesi_*、send_input_to_application、prepare_*_deposit_instructions、get_cartesi_app_logic_guidance) は、ユーザーのコンピューター用の手順とコマンドテンプレートのみを返します。これらは、このサーバーからCartesi CLI、cast、またはチェーンRPCを実行することはありません。
要件
Python ≥ 3.11 (
pyproject.tomlを参照。同梱のDockerfileはPython 3.12を使用します)。src/db/models.pyおよびResourceServiceで想定されている、厳選されたリソーススキーマが投入されたPostgreSQLデータベース。
環境変数
.env.example を .env にコピーして調整してください。デフォルト値とフィールド名は src/core/config.py で定義されています(特に DATABASE_URL、APP_HOST、APP_PORT、MCP_BASE_URL、ページネーション制限)。
インストール
uv を使用(推奨):
uv syncpip を使用:
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt実行
python -m src.mainuv run python -m src.mainuv run uvicorn src.main:create_app --factory --host 0.0.0.0 --port 8000MCPエンドポイントは以下のストリーミング可能なHTTPです:
http://<host>:<port>/mcp(デフォルト:http://0.0.0.0:8000/mcp)
Docker
このリポジトリには、uv で依存関係をインストールし、python -m src.main を実行するマルチステージの Dockerfile が含まれています。実行時に DATABASE_URL やその他の環境変数を設定してください(-e やオーケストレーター経由など)。
推奨されるクライアントテスト
MCP InspectorまたはMCP互換クライアントを使用して、以下に接続してください:
http://localhost:8000/mcpMCPリソース
URI | 目的 |
| サーバー名、環境、 |
| カタログ: リソースURI、ツール名、プロンプト、推奨されるエージェントフローのインデックス |
| 正規化されたリソースメタデータ |
| ドキュメントリソースビュー(同じ形状。ドキュメント以外のIDはエラー) |
| 親コンテキストを持つ単一のドキュメントルート |
| リポジトリの同期 / 新鮮度メタデータ |
| タグごとにグループ化されたリソース |
| ソースごとにグループ化されたリソース |
MCPツール(登録名)
これらはクライアントが見る name= の値です(Pythonのハンドラー名とは異なる場合があります)。
知識
summarize_knowledge_base— カバレッジ、カウント、オリエンテーションget_knowledge_taxonomy— 既知のタグとソースのタイトルsearch_knowledge_resources— クエリ、タグ、ソース、種類による検索get_resource_detail— IDによる1つのリソース、オプションのルートlist_resource_doc_routes— ドキュメントリソースのルートsearch_documentation_routes— リソース全体のルート検索list_resources_for_tag/list_resources_for_sourceget_repository_sync_statusbuild_debugging_context— 問題に焦点を当てたリソースとルートのバンドル
ホスト側のCartesiワークフロー(手順のみ)
prepare_cartesi_create_command— 安定版v1.5.x対アルファ版v2.0の作成ガイダンスprepare_cartesi_build_commandprepare_cartesi_run_commandsend_input_to_application— InputBox +castテンプレートprepare_erc20_deposit_instructions— ERC20Portalフローprepare_erc721_deposit_instructions— ERC721Portalフローprepare_erc1155_deposit_instructions— ERC1155SinglePortalフローget_cartesi_app_logic_guidance— アドレス帳、ポータル、バウチャー、通知、レポート
MCPプロンプト
debug_cartesi_issue— 厳選された知識を使用した構造化デバッグfind_cartesi_docs— トピックのドキュメントルート発見explain_repository_context— リポジトリリソース + ステータスサマリー
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Mugen-Builders/MCP-Server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server