SimpleServerSetup について
SimpleServerSetupは、SSEとSTDIOによるクライアント・サーバー通信を示すPython製計算機プロジェクトです。基本的なサーバー構成を学び、ローカルまたはネットワーク経由の計算を試す用途に向いています。
主な機能
- 01計算機の演算
- 02SSE通信モード
- 03STDIO通信モード
- 04モード別のクライアント
活用シーン
- 01二つの通信方式を学習
- 02ターミナルで計算
- 03SSE接続で計算要求を送信
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
SimpleServerSetup
**Server-Sent Events(SSE)と標準入出力(STDIO)**という2つのクライアント・サーバー通信方式を使って、電卓の操作を実演するシンプルな Python プロジェクトです。Python における基本的なクライアント・サーバーアーキテクチャと、2つの通信方式について学ぶのに最適です。
ファイル構成
SimpleServerSetup/
├── .gitignore
├── .python-version
├── README.md
├── client-sse.py
├── client-stdio.py
├── pyproject.toml
├── requirements.txt
├── server.py
├── uv.lock
- .gitignore:Git で無視するファイルやディレクトリを指定します。
- .python-version:Python のバージョン管理ファイルです。
- README.md:プロジェクトのドキュメントです。
- client-sse.py:Server-Sent Events(SSE)を使用してサーバーと通信する Python クライアントです。
- client-stdio.py:コマンドラインでのやり取りに標準入出力(STDIO)を使用する Python クライアントです。
- pyproject.toml:プロジェクトのメタデータとビルド設定です。
- requirements.txt:必要な Python パッケージを列挙します。
- server.py:SSE モードと STDIO モードの両方に対応するメインのサーバーロジックです。
- uv.lock:環境を再現するための依存関係ロックファイルです。
主な用語
- Server-Sent Events(SSE):HTTP 経由でサーバーからクライアントへリアルタイムの更新をプッシュできるウェブ技術です。
- 標準入出力(STDIO):ターミナルでユーザーとやり取りする従来の方法です。キーボードから入力し、画面に出力を表示します。
プロジェクトの仕組み
SimpleServerSetupでは、電卓サービスを2つのモードで実行できます。
-
SSE モード:
- サーバー(
server.py)が SSE 用の HTTP エンドポイントを起動します。 - SSE クライアント(
client-sse.py)がサーバーに接続し、計算リクエストを送信して、リアルタイムのイベントストリームとして結果を受け取ります。 - ライブ更新が必要なウェブベースまたはネットワーク接続型のアプリケーションに適しています。
- サーバー(
-
STDIO モード:
- サーバー(
server.py)は、コマンドラインクライアント(client-stdio.py)からのリクエストも処理できます。 - クライアントは標準入力で式を送信し、標準出力で結果を受け取ります。
- ターミナルから直接、手早くローカルで計算するのに最適です。
- サーバー(
どちらのモードも同じサーバーロジックを使用するため、一貫した計算動作が保証されます。
インストールと使い方
前提条件:
- Python 3.7 以降
インストール:
git clone https://github.com/DionBenFernandes-Dev/SimpleServerSetup.git
cd SimpleServerSetup
pip install -r requirements.txt
プロジェクトの実行:
-
サーバーを起動する:
python server.py -
STDIO クライアントを使用する:
python client-stdio.py指示に従って式を入力すると、すぐに結果が表示されます。
-
SSE クライアントを使用する:
python client-sse.pyこのクライアントはサーバーに接続し、SSE 経由で計算を処理します。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。