MeshLab-mcp について
MeshLab-MCPは、MeshLabのメッシュ操作とMCPクライアントをつなぐ拡張可能なブリッジで、Web UIやオーケストレーター向けです。FastAPIのHTTPインターフェースを、`pymeshlab`を使う独自のTCP JSONバックエンドに接続します。
主な機能
- 01MCPクライアント向けFastAPI HTTPインターフェース
- 02メッシュ操作用TCP JSONバックエンド
- 03`pymeshlab`を使用
- 04拡張可能なメッシュツールとプロトコルコマンド
活用シーン
- 01Web UIからMeshLab操作へ接続
- 02オーケストレーターの要求をメッシュ処理に転送
- 03独自のメッシュツールやプロトコルコマンドを追加
MCP 対応
FastAPI HTTPサーバーでMCPクライアントの要求を受け付け、`pymeshlab`でメッシュ操作を実行するTCPサーバーに中継します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MeshLab-MCP
pymeshlab を使用したメッシュ操作のために、FastAPI(HTTP)とカスタム TCP(JSON)バックエンドを利用する、MeshLab 向けの最小限で拡張可能な Model Context Protocol(MCP)ブリッジです。
機能
- FastAPI を使用した、MCP クライアント(Web UI、オーケストレーター)向けの HTTP API
- MeshLab プロセス(
pymeshlabを使用)と通信する TCP(JSON)バックエンド - 拡張可能:新しいメッシュツールやプロトコルコマンドを簡単に追加できます
プロジェクト構成
MeshLab-mcp/
├── meshlab_tcp_server.py # TCP server wrapping pymeshlab
├── meshlab_tcp_client.py # TCP client for server communication
├── meshlab_mcp.py # Core MCP protocol logic (extensible)
├── mcp_server.py # FastAPI HTTP server (entrypoint)
├── mcp_client.py # HTTP client for testing
├── requirements.txt
└── README.md
セットアップ手順
-
リポジトリをクローンし、ディレクトリに
cdで移動します。 -
依存関係をインストールします:
pip install -r requirements.txt -
Python Scripts ディレクトリを PATH に追加します(まだ追加していない場合):
- 例:
C:\Users\<your-username>\AppData\Roaming\Python\Python313\Scripts\ - PATH を変更した後、ターミナルを再起動します。
- 例:
-
MeshLab TCP サーバーを起動します(ターミナルで):
python meshlab_tcp_server.py -
HTTP MCP サーバーを起動します(別のターミナルで):
python -m uvicorn mcp_server:app --reloaduvicornが認識されない場合は、上記のようにフルパスを使用するか、python -m uvicorn ...形式で実行します。 -
HTTP クライアントでテストします(任意):
python mcp_client.py次のような出力が表示されます:
{'mesh_loaded': False, 'current_mesh_name': None}
MCP クライアント設定例(MeshLab との統合)
MeshLab(またはオーケストレーター)をこの MCP サーバーに接続するには、次のような設定を使用します:
{
"mcpServers": {
"meshlab": {
"command": "uvx",
"args": [
"meshlab-mcp"
],
"host": "127.0.0.1",
"port": 8000
}
}
}
command:MCP HTTP サーバーを起動するコマンドです(例:uvx meshlab-mcpまたはpython -m uvicorn mcp_server:app --reload)。host/port:HTTP API に接続できる場所です。
仕組み
- MCP クライアント(Web UI、オーケストレーター)は、FastAPI サーバーに HTTP リクエストを送信します。
- FastAPI サーバーは、これらのリクエストを MeshLab TCP サーバー(
pymeshlabを使用してメッシュ操作を実行)に中継します。 - TCP サーバーは JSON 形式で結果を返します。
拡張
meshlab_tcp_server.pyに新しいメッシュツール/コマンドを追加し、プロトコルで公開します。- 対応するメソッドを
meshlab_tcp_client.pyに追加し、新しい HTTP エンドポイントをmcp_server.pyに追加します。
トラブルシューティング
uvicornが認識されない場合は、Python Scripts ディレクトリが PATH に含まれていることを確認するか、python -m uvicorn ...を使用してください。- HTTP サーバーを起動する前に、必ず TCP サーバーを起動してください。
- メッシュ操作を行う場合は、メッシュファイルが作業ディレクトリにあることを確認してください。
次のステップ
- 新しいメッシュツールとプロトコルコマンドの開発を始めましょう!
- MeshLab の GUI やその他のツールとの高度な統合については、MeshLab のドキュメントと MCP の仕様を参照してください。
ご質問や新機能の追加をご希望の場合は、お気軽にお知らせください!
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。