Gausium OpenAPI MCP サーバー
このプロジェクトは、Gausium OpenAPI へのブリッジとして機能する MCP (モデル制御プロトコル) サーバーを実装し、AI モデルやその他のクライアントが標準化されたインターフェースを介して Gausium ロボットと対話できるようにします。
リポジトリ: https://github.com/cfrs2005/mcp-gs-robot
建築
サーバーは、懸念事項を分離し保守性を促進する階層化アーキテクチャに従います。
MCPプロトコルフロー
下の図は、AI モデルが MCP プロトコルを介して Gausium ロボットと対話する方法を示しています。
特徴
サーバーは現在、MCP ツールとして次の機能をサポートしています。
list_robots
: APIキーでアクセスできるロボットを一覧表示します。( List Robots APIに基づいています)get_robot_status
: 特定のロボットのシリアル番号から詳細なステータスを取得します。( Get Robot Status APIに基づく)list_robot_task_reports
: 特定のロボットの清掃タスクレポートを取得します。オプションで時間フィルタリングも可能です。( List Robot Task Reports APIに基づいています)list_robot_maps
: 特定のロボットに関連付けられたマップを一覧表示します。( List Robot Maps APIに基づいています)
プロジェクト構造
このプロジェクトは、Python のベスト プラクティスに基づいた構造化されたレイアウトに従います。
src/gs_openapi/config.py
: ベース URL、API パス、環境変数名が含まれます。src/gs_openapi/auth/token_manager.py
: OAuth トークンの取得と更新を管理します。src/gs_openapi/api/
:httpx
を使用して Gausium OpenAPI エンドポイントを直接呼び出す関数を含むモジュール (robots.py
、maps.py
) が含まれています。src/gs_openapi/mcp/gausium_mcp.py
: API 呼び出しとトークン管理を統合するGausiumMCP
クラスを定義します。main.py
:GausiumMCP
を初期化し、@mcp.tool()
を使用して API 機能を MCP ツールとして登録し、基本的なログ記録を構成し、mcp.run()
を使用してサーバーを起動します。
セットアップと実行
- リポジトリをクローンします。
uv
を使用して仮想環境を作成し、アクティブ化します。uv
を使用して依存関係をインストールします。- **資格情報の構成:**アプリケーションでは、Gausium API 資格情報が環境変数として設定される必要があります。
GS_CLIENT_ID
: Gausium アプリケーションのクライアント ID。GS_CLIENT_SECRET
: Gausium アプリケ��ション クライアント シークレット。GS_OPEN_ACCESS_KEY
: Gausium OpenAPI アクセス キー。
これらはシェルで直接設定できます:
(または、開発用に
src/gs_openapi/config.py
を変更しますが、資格情報はコミットしないでください)。 - サーバーを実行します。デフォルトでは、
http://0.0.0.0:8000
でSSEトランスポートを使用してサーバーを起動します。必要に応じて、main.py
変更してstdio
トランスポートを使用するように設定できます。
MCPクライアントの接続
サーバーが実行される場合、MCP クライアント (Cursor や他の互換性のあるツールなど) は適切なトランスポート (SSE または stdio) を介してサーバーに接続し、定義されたツールを利用できるようになります。
カーソルとの使用
以下は、Cursor がこの MCP サーバーと対話する方法の例です。
デバッグ
デバッグ情報を得るためにサーバーログを監視できます。main.py main.py
基本的なログ設定では、タイムスタンプ、レベル、ソース情報が提供されます。
以下は操作中のサーバーログ出力の例です。
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
GS 清掃ロボットを制御し、ロボットのリスト表示、ステータス監視、ナビゲーション コマンド、タスク実行、リモート制御操作をサポートするモデル制御プロトコル プラグイン。
Related MCP Servers
- AsecurityAlicenseAqualityA control server that enables AI assistants to interact with Ecovacs robot vacuums through MCP protocol, supporting device listing, cleaning control, charging control, and status queries.Last updated -414PythonMIT License
- -securityFlicense-qualityA Python-based server that enables AI assistants to control robots by integrating the Model Context Protocol (MCP) with ROS 2, allowing for natural language commands that translate into robot movement via the /cmd\_vel topic.Last updated -56Python
- AsecurityFlicenseAqualityA Model Context Protocol server that enables natural language interactive control of Universal Robots collaborative robots, allowing users to control robot motion, monitor status, and execute programs through direct commands to large language models.Last updated -293Python
- -securityFlicense-qualityImplements a Model Control Protocol server integrated with Google Gemini LLM, providing a flexible framework for building AI-powered applications.Last updated -Python