Skip to main content
Glama
kbangaru-cyber

RhinoMCP

RhinoMCP: Rhino 3D 用 MCP サーバー

Model Context Protocol を介した AI 駆動の 3D モデリング、解析、診断、Grasshopper 統合のための 105 ツール

RhinoMCP は、基本的なプリミティブから高度なサーフェスモデリング(ロフト、スイープ、回転)、ブール演算、メッシュ診断、ブロック管理、Grasshopper によるパラメトリックデザインまでをカバーする包括的なツールセットを通じて、Claude を Rhino 3D に接続します。

アーキテクチャ

┌────────────────┐   stdio    ┌──────────────┐   TCP/JSON    ┌──────────────┐
│ Claude Desktop │◄──────────►│  rhino_mcp   │◄─────────────►│    Rhino 3D  │
│                │   (MCP)    │  (Python)    │  localhost:   │  listener.py │
│                │            │  server.py   │    9876       │  (inside     │
└────────────────┘            └──────────────┘               │   Rhino)     │
                                                             └──────────────┘

MCP サーバーrhino_mcp/)。FastMCP を使用した Python パッケージ。stdio を介して Claude と通信し、TCP を介して Rhino と通信します。

Rhino リスナーrhino/listener.py)。Rhino 内で実行される Python スクリプト。TCP サーバーを開き、JSON コマンドを受信し、RhinoCommon/rhinoscriptsyntax を使用して実行し、結果を返します。

Related MCP server: Grasshopper MCP

機能

ジオメトリ作成(21 ツール)

ツール

説明

create_point, create_points

単一または一括のポイント作成

create_line, create_polyline

ラインとポリライン

create_curve

補間 NURBS カーブ

create_circle, create_arc, create_ellipse

円形ジオメトリ

create_rectangle

長方形ポリライン

create_sphere, create_box, create_cylinder, create_cone, create_torus

ソリッドプリミティブ

create_extrusion, create_pipe

カーブに沿った押し出しとパイプ

create_surface_from_points, create_mesh

NURBS サーフェスとメッシュ

create_text

テキストドット

create_loft

断面を通るロフトサーフェス

create_sweep1, create_sweep2

単一および 2 レールスイープ

create_revolve

軸を中心としたプロファイルの回転

create_planar_surface, create_patch

平面サーフェスとパッチサーフェス

トランスフォーム(8 ツール)

move, rotate, scale, scale_non_uniform, mirror, copy, array_linear, array_polar

ブール演算(3 ツール)

boolean_union, boolean_difference, boolean_intersection

修正(18 ツール)

ツール

説明

delete, set_color, set_material, set_name, set_layer

基本修正

group, ungroup

グループ化

join, explode

ジオメトリの結合と分解

trim, split

カーブのトリムと分割

offset_curve, offset_surface

ジオメトリのオフセット

fillet_edge, chamfer_edge, fillet_curves

エッジ処理

cap_planar_holes

開いた Brep のキャップ

extend_curve, rebuild_curve

カーブ編集

project_to_surface

サーフェスへのカーブ投影

duplicate_edge, duplicate_border

エッジ/境界の抽出

ブロックとインスタンス(4 ツール)

create_block, insert_block, list_blocks, explode_block

ユーザーデータ(2 ツール)

set_user_text, get_user_text: メタデータ、BIM データ、コストなどを保存します。

レイヤー(6 ツール)

list_layers, create_layer, delete_layer, set_layer_color, set_layer_visibility, set_current_layer

マテリアル(3 ツール)

list_materials, create_material, assign_material

解析(10 ツール)

ツール

説明

get_bounding_box, get_area, get_volume, get_length

測定

distance, closest_point

空間クエリ

intersect

オブジェクト間の交差を検出

get_curvature

曲率解析

is_point_on_surface, is_point_in_solid

ポイント包含テスト

診断(4 ツール)

ツール

説明

check_objects

有効性を確認し、不良ジオメトリを検出

get_naked_edges

サーフェスのギャップを検出

check_mesh

メッシュ品質解析

repair_mesh

メッシュ問題を自動修正

ビュー(5 ツール)

zoom_extents, set_view, capture_view(base64 オプション付き)、list_views, set_display_mode

Grasshopper(3 ツール)

gh_run_script, gh_set_slider, gh_get_outputs

コード実行(2 ツール)

run_python, run_command: rhinoscriptsyntax と RhinoCommon への完全なアクセス

元に戻す/やり直す(2 ツール)

undo, redo

シーン(4 ツール)

scene_info, get_objects, get_object(エッジ情報付きの詳細)、select_objects

インポート/エクスポート(2 ツール)

export(.3dm、.obj、.stl、.step、.iges、.fbx)、import_file

太字 = v2.0 の新機能

前提条件

  • Rhino 7 または 8(Windows または Mac)

  • Python 3.10+

  • uv パッケージマネージャー(インストール

インストール

1. クローンとインストール

git clone https://github.com/kbangaru-cyber/rhino-mcp.git
cd Rhino_MCP
uv sync

2. Rhino リスナーの起動

Rhino で:

  1. ツール > PythonScript > 実行 に移動

  2. rhino/listener.py を選択

  3. 次のように表示されるはずです:

============================================================
  RhinoMCP Listener v2.0.0
  Listening on 127.0.0.1:9876
  Registered handlers: 90
  Ready for MCP connection (Claude)
============================================================

3. Claude Desktop の設定

Claude Desktop

claude_desktop_config.json を編集:

{
  "mcpServers": {
    "rhino": {
      "command": "uv",
      "args": ["--directory", "/ABSOLUTE/PATH/TO/Rhino_MCP", "run", "rhino-mcp"],
      "env": {
        "RHINO_MCP_HOST": "127.0.0.1",
        "RHINO_MCP_PORT": "9876",
        "RHINO_MCP_TIMEOUT": "30"
      }
    }
  }
}

使用例

シンプルな建物フォームを作成

「建物のボリュームとして 10x8x4 メートルのボックスを作成し、中央に半径 2、高さ 6 のシリンダーをタワーとして追加してください。それらを結合し、すべてのエッジに半径 0.3 のフィレットを適用してください。」

モデルの問題を診断

「シーン内のすべてのオブジェクトに問題がないか確認してください。ナaked エッジ(露出エッジ)を見つけて、何を修正する必要があるか教えてください。」

パラメトリックデザイン

「プロファイルカーブを作成して回転させ、花瓶の形状を作成してください。次に、その周りに装飾用シリンダーの極配列を作成してください。」

組み込みプロンプト

RhinoMCP にはガイド付きワークフロープロンプトが含まれています:

  • model-from-description: テキスト記述から 3D モデルを作成するための構造化ワークフロー

  • diagnose-model: モデルの問題を発見して修正するための体系的なアプローチ

  • parametric-design: Grasshopper/パラメトリックワークフローのガイド

リソース

サーバーはライブデータを MCP リソースとして公開します:

URI

説明

rhino://scene/info

現在のシーン概要

rhino://layers

レイヤーツリー

rhino://materials

マテリアル一覧

rhino://blocks

ブロック定義

設定

環境変数

デフォルト

説明

RHINO_MCP_HOST

127.0.0.1

Rhino リスナーホスト

RHINO_MCP_PORT

9876

Rhino リスナーポート

RHINO_MCP_TIMEOUT

30

コマンドタイムアウト(秒)

開発

# Install dev dependencies
uv sync --extra dev

# Run tests (no Rhino needed)
uv run pytest -v

# Lint
uv run ruff check .

# Type check
uv run mypy rhino_mcp

統合テスト

Rhino が実行され、リスナーがアクティブな状態で:

uv run pytest -v -m integration

プロトコル

コマンドは TCP 経由で送信される JSON オブジェクトです(改行区切り):

{"id": "abc123", "action": "create_sphere", "params": {"center": [0,0,0], "radius": 5}}

レスポンス:

{"id": "abc123", "ok": true, "result": {"guid": "d3e4f5..."}}

スレッドセーフティ

Rhino リスナーは、Rhino 8+ で Rhino.RhinoApp.InvokeOnUiThread() を使用して、すべてのジオメトリ操作が UI スレッドで実行されるようにします。Rhino 7 では、操作は直接実行されます(単一クライアント接続では安全です)。

ライセンス

MIT。LICENSE を参照してください。

著者

Karthick Raja B Gポートフォリオ · GitHub

関連プロジェクト: SPIDER、計算ジオメトリと空間解析のための Grasshopper プラグイン。

A
license - permissive license
B
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to interact with Autodesk Revit to query project data, manage elements, and execute generated code via the Model Context Protocol. It provides full compatibility with GitHub Copilot and Claude to automate BIM modeling workflows.
    13
    91
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    GOLEM-3DMCP implements the Model Context Protocol to give AI agents direct, programmatic control of Rhino 8 — create geometry, run booleans, drive Grasshopper, capture viewports, and execute arbitrary Python scripts, all through natural language. Works with Claude Code, Cursor, Windsurf, and any MCP-compatible host.
    12
    MIT

View all related MCP servers

Related MCP Connectors

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

  • DXF and PDF/X-4 for AI agents: structured facts, PNG renders, an interactive in-chat viewer.

  • Free OpenAI-compatible inference with signed provenance receipts and 3 focused MCP tools.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kbangaru-cyber/Rhino-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server