VOOZH about

URL: https://glama.ai/mcp/servers/panz2018/fastapi_mcp_sse?locale=ja-JP

⇱ ファストAPI MCP SSE by panz2018 | Glama


ファストAPI MCP SSE

モデル コンテキスト プロトコル (MCP)統合による FastAPI フレームワークを使用した Server-Sent Events (SSE) 実装。

MCPとは何ですか?

モデルコンテキストプロトコル(MCP)は、AIモデルが外部ツールやデータソースと連携できるようにするオープンスタンダードです。MCPは、AI開発におけるいくつかの重要な課題を解決します。

  • コンテキストの制限: モデルがトレーニングデータ以外の最新情報にアクセスできるようにする

  • ツール統合: モデルが外部ツールやAPIを使用するための標準化された方法を提供します

  • 相互運用性: 異なるAIモデルとツール間の共通インターフェースを作成します

  • 拡張性: 再トレーニングなしでAIシステムに新しい機能を簡単に追加できます

このプロジェクトでは、FastAPI Web アプリケーションで Server-Sent Events (SSE) を使用して MCP を実装する方法を示します。

Related MCP server: Python MCP Cat Facts

説明

このプロジェクトでは、FastAPIフレームワークを用いてモデルコンテキストプロトコル(MCP)機能を統合しながら、Server-Sent Events(SSE)を実装する方法を示します。重要な特徴は、カスタムルートを含むフル機能のFastAPIウェブアプリケーションにMCPのSSE機能をシームレスに統合できることです。

特徴

  • MCP によるサーバー送信イベント (SSE) の実装

  • カスタムルートとのFastAPIフレームワーク統合

  • MCP と標準の Web エンドポイントの両方を備えた統合 Web アプリケーション

  • カスタマイズ可能なルート構造

  • MCP と Web 機能間の懸念事項を明確に分離

建築

このプロジェクトでは、次のようなモジュラー アーキテクチャを紹介します。

  1. MCP SSEエンドポイント( /sse/messages/ )をFastAPIアプリケーションに統合します。

  2. 標準の Web ルート ( //about/status/docs/redoc ) を提供します

  3. MCP 機能と Web ルートの分離を維持する方法を示します

インストールと使用オプション

前提条件

UV パッケージ マネージャーをインストールします - Rust で書かれた高速な Python パッケージ インストーラーです。

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

オプション1: インストールなしのクイック実行

UV の実行ツールを使用してリポジトリを複製せずにアプリケーションを直接実行します。

uvx --from git+https://github.com/panz2018/fastapi_mcp_sse.git start

オプション2: 完全インストール

仮想環境を作成する

プロジェクト用の分離された Python 環境を作成します。

uv venv

仮想環境をアクティブ化する

仮想環境をアクティブ化して使用します。

.venv\Scripts\activate

依存関係をインストールする

必要なパッケージをすべてインストールします。

uv pip install -r pyproject.toml

統合サーバーを起動する

MCP SSE 機能を備えた統合 FastAPI サーバーを起動します。

python src/server.py

または

uv run start

利用可能なエンドポイント

サーバーを起動すると (オプション 1 またはオプション 2 のいずれかを使用)、次のエンドポイントが使用できるようになります。

MCP Inspectorでデバッグする

MCP 機能のテストとデバッグには、MCP インスペクタを使用します。

mcp dev ./src/weather.py

MCP Inspectorに接続する

  1. http://localhost:5173で MCP インスペクターを開きます。

  2. 接続を構成します。

    • トランスポートタイプをSSEに設定する

    • URLを入力してください: http://localhost:8000/sse

    • Connectをクリック

機能をテストする

  1. Toolsセクションに移動

  2. 利用可能な機能を表示するには、 List Toolsをクリックします。

    • get_alerts : 天気予報を取得する

    • get_forcast : 天気予報を取得する

  3. 機能を選択

  4. 必要なパラメータを入力してください

  5. 実行するにはRun Toolクリックします

アプリケーションの拡張

カスタムルートの追加

アプリケーション構造により、FastAPI の APIRouter を使用して新しいルートを簡単に追加できます。

  1. APIRouter を使用して routes.py で新しいルート ハンドラーを定義します。

    @router.get("/new-route")
    async def new_route():
     return {"message": "This is a new route"}
  2. ルータで定義されたすべてのルートは、メインアプリケーションに自動的に含まれます。

MCP統合のカスタマイズ

MCP SSE 機能は、次の方法で server.py に統合されます。

  • SSEトランスポートの作成

  • SSEハンドラーの設定

  • FastAPIアプリケーションにMCPルートを追加する

Continueとの統合

Continue VS Code 拡張機能でこの MCP サーバーを使用するには、Continue 設定に次の構成を追加します。

{
 "experimental": {
 "modelContextProtocolServers": [
 {
 "transport": {
 "name": "weather",
 "type": "sse",
 "url": "http://localhost:8000/sse"
 }
 }
 ]
 }
}
A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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/panz2018/fastapi_mcp_sse'

If you have feedback or need assistance with the MCP directory API, please join our Discord server