mcpField
M
mcp-sse

mcp-sse

ローカル
github.com/sidharthrajaramバージョン管理30186 週間前に更新

mcp-sse について

mcp-sseは、SSE経由で接続するMCPサーバーと独立したクライアントの構成例です。稼働中のサーバーにクライアントを接続してツールを使う開発者向けで、サンプルサーバーはNational Weather Service APIを使った天気ツールを提供します。

主な機能

  1. 01SSE対応MCPサーバーの例
  2. 02独立したMCPクライアントの例
  3. 03コマンドラインでSSE接続先を指定
  4. 04気象警報と予報のツール

活用シーン

  1. 01クライアントから分離したMCPサーバーの構築
  2. 02SSEサーバーへの接続とツール利用
  3. 03クラウドネイティブなMCP通信の検証

MCP 対応

サーバーはMCP経由で気象警報と予報のツールを公開し、クライアントはSSEエンドポイントに接続してツールを呼び出します。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

MCP 用の SSE ベースのサーバーとクライアント

smithery badge

SSE ベースの MCP サーバーとそこからツールを使用するスタンドアロン MCP クライアントの動作パターンを実装したものです。こちらの元々の議論に基づいています。

使用方法

注: .env ファイル内または環境変数として ANTHROPIC_API_KEY を指定してください。

uv run weather.py

uv run client.py http://0.0.0.0:8080/sse
Initialized SSE client...
Listing tools...

Connected to server with tools: ['get_alerts', 'get_forecast']

MCP Client Started!
Type your queries or 'quit' to exit.

Query: whats the weather like in Spokane?

I can help you check the weather forecast for Spokane, Washington. I'll use the get_forecast function, but I'll need to use Spokane's latitude and longitude coordinates.

Spokane, WA is located at approximately 47.6587° N, 117.4260° W.
[Calling tool get_forecast with args {'latitude': 47.6587, 'longitude': -117.426}]
Based on the current forecast for Spokane:

Right now it's sunny and cold with a temperature of 37°F and ...

なぜこれが必要なのか?

これにより、MCP サーバーは実行中のプロセスになり、エージェント(クライアント)がいつでもどこからでも接続し、ツールを使用し、切断できるようになります。つまり、SSE ベースのサーバーとクライアントは、独立したプロセス(場合によっては異なるノード上)になることができます。これは、クライアント自身がサーバーをサブプロセスとして起動する STDIO ベースのパターンとは異なり、「クラウドネイティブ」なユースケースにより適しています。

Smithery 経由でのインストール

Smithery 経由で SSE ベースのサーバーとクライアント for Claude Desktop を自動的にインストールするには:

npx -y @smithery/cli install @sidharthrajaram/mcp-sse --client claude
サーバー

weather.py は National Weather Service API に基づいたツールを提供する SSE ベースの MCP サーバーです。MCP ドキュメントのサンプル STDIO サーバー実装から適応されています。

デフォルトではサーバーは 0.0.0.0:8080 で実行されますが、以下のようなコマンドラインの引数で設定可能です:

uv run weather.py --host <your host> --port <your port>
クライアント

client.py は SSE ベースの MCP サーバーに接続してそこからツールを使用する MCP クライアントです。MCP ドキュメントのサンプル STDIO クライアント実装から適応されています。

デフォルトではクライアントはコマンドラインの引数で提供される SSE エンドポイントに接続します:

uv run client.py http://0.0.0.0:8080/sse

コメント

MCP は初めてですか?

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

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