mcpField
M
Model Context Protocol (MCP) Server

Model Context Protocol (MCP) Server

ローカル
github.com/ellenfel開発ツール083 週間前に更新

Model Context Protocol (MCP) Server について

MCPの基本概念を学ぶためのPython製の概念実証サーバーです。FastAPIとPydanticを使ったWebSocket通信、メッセージ検証、コンテキスト管理を示します。

主な機能

  1. 01WebSocket通信
  2. 02PydanticによるMCPメッセージ処理
  3. 03モデルコンテキスト管理
  4. 04非同期リクエスト処理

活用シーン

  1. 01MCPサーバーの基本実装の学習
  2. 02MCPクライアントとサーバーの連携テスト

MCP 対応

接続クライアント向けにプロトコルメッセージを処理し、モデルコンテキストを管理するMCPサーバーを実装します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Model Context Protocol(MCP)サーバー

教育目的で作成された、Model Context Protocol サーバーの基本的な実装です。このサーバーでは、MCP の基本概念と、Python を使って実際に実装する方法を説明します。

特徴

  • FastAPI と WebSockets を使用した WebSocket ベースの通信
  • Pydantic モデルを使用した基本的な MCP メッセージ処理
  • モデルコンテキスト管理のサポート
  • シンプルなクライアントとサーバーのやり取り
  • パフォーマンス向上のための async/await サポート

はじめに

  1. 仮想環境を作成します(推奨):
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. 依存関係をインストールします:
pip install -r requirements.txt
  1. 開発サーバーを起動します:
python -m src.server
  1. サンプルクライアントを実行します:
python examples/basic_usage.py

プロジェクト構成

src/
├── server.py          # Main server implementation
├── types/            # TypeScript type definitions
│   └── mcp.py        # MCP protocol types using Pydantic
└── examples/         # Example implementations
    └── basic_usage.py # Basic client example

MCP プロトコルの概要

Model Context Protocol(MCP)は、AI モデルとのやり取りのために設計された通信プロトコルです。この実装には、以下が含まれます。

  • Pydantic モデルを使用したメッセージ形式の処理
  • コンテキスト管理
  • 基本的なプロトコル操作
  • パフォーマンス向上のための async/await サポート

TypeScript 版との主な違い

  1. Express の代わりに FastAPI を使用
  2. パフォーマンス向上のために async/await を実装
  3. データ検証とシリアライズに Pydantic を使用
  4. より Python らしいコード構成とパターン MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。