概要
ROS MCPサーバーは、ユーザーがLLMを介して入力した自然言語コマンドをロボット制御用のROSコマンドに変換する機能群を提供することで、ロボットが複雑なタスクを実行し、様々な環境に効果的に適応するのを支援するように設計されています。さらに、 rosbridge
を利用することで、 ROS
とROS2
両方のシステムで動作するように構成されており、WebSocketベースの通信により、多様なプラットフォームに幅広く適用可能です。
このプロジェクトに基づく研究については、以下のリンク先のビデオをご覧ください。
サポートされているタイプ
- ジオメトリメッセージ/ツイスト
- センサーメッセージ/画像
- センサーメッセージ/ジョイント状態
特徴
- WebSocket ベースのユニバーサル互換性: rosbridge を使用して ROS および ROS2 システムの両方と通信し、ROS のバージョンに関係なくシームレスな統合を可能にします。
- クロスプラットフォーム サポート: Linux、Windows、MacOS で動作し、さまざまな開発および展開環境に適しています。
- LLM および AI システムとの簡単な統合: MCP 機能を介して自然言語コマンドをロボットのアクションに直接変換できます。
- 拡張機能セット: MCP ツール インターフェイスを拡張することで、新しいロボット制御機能やセンサー機能を簡単に追加できます。
- ROS ノードの変更は不要: ロボットのコアコードを変更することなく、既存の ROS/ROS2 トピックおよびサービスと対話します。
- ネイティブ ROS/ROS2 コマンドの互換性: オプションでローカル ROS/ROS2 ライブラリの使用をサポートしているため、WebSocket ベースの制御と並行してネイティブ ROS コマンドとツールを実行できます。
貢献
貢献を歓迎します!
タイプミスの修正、新しい機能の追加、改善の提案など、どのような場合でもご協力をお願いいたします。
このプロジェクトに貢献する方法の詳細については、貢献ガイドラインに従ってください。
インストール
Smithery経由でインストール
Smithery経由で Claude Desktop 用のros-mcp-server
自動的にインストールするには:
ローカルにインストールする
uv
インストール
uv
をインストールするには、次のコマンドを使用します。
または
- 仮想環境を作成してアクティブ化する(オプション)
MCP サーバーの構成
MCP 設定を mcp.json に設定します。
Claude Desktop を使用する場合は、次のコマンドを使用して mcp.json を見つけることができます。
- macOS/Linux
- ウィンドウズ
MCP機能
関数のリストはMCPFUNCTIONS.mdにあります。
使い方
1. rosbridge に接続するための IP とポートを設定します。
server.py
を開き、LOCAL_IP
、ROSBRIDGE_IP
、ROSBRIDGE_PORT
を変更します。(ROSBRIDGE_PORT
のデフォルト値は9090
です)
2. rosbridge サーバーを実行します。
ROS1
ROS2
3. ros-mcp-server
をインポートした AI システムを実行します。
4.「ロボットを前進させる」と入力します。
5. rosbridge_server
とros topic
を確認します。
rosbridge_server
ros topic
シミュレーションテスト
NVIDIA Isaac Sim シミュレーション環境内で MOCA モバイル マニピュレータを使用した MCP ベースの制御。
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
ROS と ROS2 の両方と互換性のある自然言語コマンドを通じて直線速度と角速度の正確な操作を可能にする機能を提供することで、ロボットの動作制御を容易にします。
Related Resources
Related MCP Servers
- AsecurityFlicenseAqualityEnables users to control the cursor in Figma through verbal commands using an agentic AI agent, streamlining the design process with a new interaction method.Last updated -192,5141JavaScript
- -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 -42Python
- AsecurityAlicenseAqualityA server built on the Model Context Protocol that enables controlling the Unitree Go2 robot using natural language commands, which are translated into ROS2 instructions for the robot to perform corresponding actions.Last updated -126PythonApache 2.0
- -securityFlicense-qualityA Python server that enables remote control of Bittle robots via Bluetooth using the Model Context Protocol (MCP), allowing users to programmatically send movement and pose commands.Last updated -Python