Mcp Server Demo について
Mcp Server Demoは、MCPサーバーとクライアントを試すための入門用リポジトリです。デモ、ドキュメントアシスタント、US Weatherの例と、エンドツーエンドのメッセージテストを含みます。
主な機能
- 01デモMCPサーバー
- 02ドキュメントアシスタントのサーバーとクライアント
- 03US Weatherサーバー
- 04エンドツーエンドのメッセージテスト
活用シーン
- 01MCPサーバーの実行例を学ぶ
- 02ドキュメントアシスタントの通信を試す
- 03MCPの初期化と応答を確認する
MCP 対応
MCPサーバーの例とドキュメントアシスタントのクライアントを収録しています。エンドツーエンドのMCPメッセージテストも用意されています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
インストール方法は未掲載です
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ツール一覧はまだ取得されていません
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP サーバーとクライアントを使い始めるためのリポジトリです。
参考資料: デモ ドキュメントアシスタント 米国の天気
MCP サーバーを実行するには
uv run python server/demo.py
uv run python server/doc_assistant.py
uv run python server/us_weather.py
MCP クライアントを実行するには
uv run python client/doc_assistant_client.py
エンドツーエンドのメッセージシーケンスをテストするには
uv --directory <path-to-your-server-directory> run demo.py
uv --directory <path-to-your-server-directory> run doc_assistant.py
uv --directory <path-to-your-server-directory> run us_weather.py
標準出力のコンソールで、以下を1つずつ入力します:
jsonc
CopyEdit
// 1️⃣ Client → Server ─── initialize ──────────────────────────────────────────
{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2025-03-26",
"clientInfo": { "name": "demo-client", "version": "1.0.0" },
"capabilities": { "tools": {}, "resources": {} }
}
}
/* 3️⃣ Client → Server ─── initialized notification -- no id (fire-and-forget) */
{ "jsonrpc": "2.0", "method": "notifications/initialized" }
/* 4️⃣ Client → Server ─── tools/list ───────────────────────────────────────── */
{ "jsonrpc": "2.0", "id": 2, "method": "tools/list" }
/* 6️⃣ Client → Server ─── tools/call ───────────────────────────────────────── */
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "calculate_sum",
"arguments": { "a": 4, "b": 3 }
}
}
以下のような応答が表示されます:
/* 2️⃣ Server → Client ─── InitializeResult ─────────────────────────────────── */
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"protocolVersion": "2025-03-26",
"serverInfo": { "name": "demo-server", "version": "1.0.0" },
"capabilities": {
"tools": { "listChanged": true },
"resources": {}
}
}
}
/* 5️⃣ Server → Client ─── list result -- includes inputSchema ─────────────── */
{
"jsonrpc": "2.0",
"id": 2,
"result": {
"tools": [
{
"name": "calculate_sum",
"description": "Add two numbers together",
"inputSchema": {
"type": "object",
"properties": {
"a": { "type": "number" },
"b": { "type": "number" }
},
"required": ["a", "b"]
}
}
]
}
}
/* 7️⃣ Server → [external world] ─ (does the addition) ─────────────────────── */
/* 8️⃣ Server → Client ─── result -- structure per schema/2025-03-26 ───────── */
{
"jsonrpc": "2.0",
"id": 3,
"result": {
"content": [
{ "type": "text", "text": "7" }
]
}
}
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。