Ejemplo de Servidor MCP について
Ejemplo de Servidor MCPは、MCPの学習やサーバー構築に取り組む開発者向けのPythonサンプルリポジトリです。MCPの構成と機能の種類に加え、`uv`での環境設定やClaude Desktopへの接続手順を紹介します。
主な機能
- 01MCPサーバー実装の例
- 02クライアント・サーバー構成の説明
- 03リソース、ツール、プロンプトの紹介
- 04`uv`によるプロジェクト設定手順
- 05Claude Desktopへの接続方法
活用シーン
- 01MCPサーバーの基本構成を学ぶ
- 02PythonでMCPのサンプルプロジェクトを作る
- 03MCPのリソース、ツール、プロンプトを理解する
- 04Claude Desktopのサーバー設定をトラブルシューティングする
MCP 対応
LLMクライアントと連携するサーバーの構築方法を示す、MCPサーバーの実装例です。READMEではリソース、ツール、プロンプトなどのMCP機能を説明しています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP サーバーの例
このリポジトリには、Model Context Protocol(MCP)サーバーの実装が含まれています。 このコードは、さまざまな大規模言語モデル(LLM)クライアントと統合できる、機能的なMCPサーバーの構築方法を示します。
MCPとは?
MCP(Model Context Protocol)は、アプリケーションが大規模言語モデル(LLM)にコンテキストを提供する方法を標準化するオープンプロトコルです。MCPはAIアプリケーションのUSB-Cポートとして機能し、AIモデルをさまざまなデータソースやツールに接続するための標準化された方法を提供します。

主なメリット
- LLMが直接利用できる、事前構築済みの統合が増え続けています。
- LLMのプロバイダーやベンダーを柔軟に切り替えられます。
- 自社のインフラストラクチャ内でデータを保護するためのベストプラクティスを利用できます。
アーキテクチャの概要
MCPはクライアント・サーバーアーキテクチャに従っており、ホストアプリケーションは複数のサーバーに接続できます。
- MCPホスト:Claude Desktop、IDE、またはMCP経由でデータにアクセスするAIツールなどのプログラムです。
- MCPクライアント:サーバーと1対1の接続を維持するプロトコルクライアントです。
- MCPサーバー:Model Context Protocol経由で特定の機能を公開する軽量なプログラムです。
- データソース:MCPサーバーがアクセスできるローカルデータ(ファイル、データベース)とリモートサービス(API)の両方です。
MCPの主な概念
MCPサーバーは、主に次の3種類の機能を提供できます。
- リソース:クライアントが読み取れる、ファイルに似たデータです(APIレスポンスやファイルの内容など)。
- ツール:LLMが呼び出せる関数です(ユーザーの承認が必要です)。
- プロンプト:ユーザーが特定のタスクを完了するのに役立つ、事前定義済みのテンプレートです。
システム要件
- Python 3.10以上
- MCP SDK 1.2.0以上
- パッケージマネージャー
uv
はじめに
パッケージマネージャーuvのインストール
macOS/Linuxの場合:
curl -LsSf https://astral.sh/uv/install.sh | sh
Windowsの場合:
iwr -useb https://astral.sh/uv/install.ps1 | iex
インストール後、uvコマンドを利用できるよう、必ずターミナルを再起動してください。
プロジェクトの設定
- プロジェクトを作成して初期化します。
# Crear un nuevo directorio para el proyecto
uv init mcp-server
cd mcp-server
# Crear y activar el entorno virtual
uv venv
source .venv/bin/activate # En Windows: .venv\Scripts\activate
# Instalar dependencias
uv add "mcp[cli]" httpx
- サーバーの実装ファイルを作成します。
touch main.py
サーバーの実行
- MCPサーバーを起動します。
uv run main.py
- サーバーは接続を受け付ける準備が整います。
Claude Desktopへの接続
- 公式サイトからClaude Desktopをインストールします。
- MCPサーバーを使用するようClaude Desktopを設定します。
ファイル ~/Library/Application Support/Claude/claude_desktop_config.json を編集します。
{
"mcpServers": {
"mcp-server": {
"command": "uv",
"args": [
"--directory",
"/RUTA/ABSOLUTA/A/TU/mcp-server",
"run",
"main.py"
]
}
}
}
- Claude Desktopを再起動します。
トラブルシューティング
Claude Desktopがサーバーを検出しない場合:
- 設定ファイルのパスと権限を確認します。
- 設定内の絶対パスが正しいことを確認します。
uvがインストールされ、利用可能であることを確認します。- Claude Desktopのログを確認し、エラーがないか調べます。
ライセンス
このプロジェクトはMITライセンスの下でライセンスされています。詳細については、LICENSEファイルを参照してください。
連絡先
- Leandro Rivera:[email protected]
- Linkedin:https://www.linkedin.com/in/leandrorivera/
コーディングをお楽しみください! 🚀
このプロジェクトが役に立ったら、GitHubで⭐を付けてください! 😊
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。