RhinoMCP

Connects Rhino 3D and Grasshopper to an AI agent so it can model geometry, read the document and wire definitions.

  • 1,213 ★ on the repository
  • Last commit
  • MIT
MCP server

Broad access

Why this level

  • The model gets an open code-execution surface inside Rhino: commands, RhinoScript-Python and RhinoCommon C#.
  • The channel between server and plugin has no authentication.
All reasons and checks

jingcheng-chen/rhinomcp

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/rhinomcp

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The model gets an open code-execution surface inside Rhino: commands, RhinoScript-Python and RhinoCommon C#.
  • The channel between server and plugin has no authentication.

This is third-party code. Review the repository files before installing.

What it does

RhinoMCP is an MCP server plus a Rhino 8 plugin that lets an agent work inside an open Rhino and Grasshopper in plain language. The agent creates points, curves, solids and surfaces, moves and recolors objects, runs booleans, lofts and extrusions, measures length, area and volume, switches layers and captures the viewport so it works from what is on screen. In Grasshopper the agent searches components and inspects their inputs and outputs before placing them, lays out and connects them, sets sliders, runs the solution and reads back warnings. A whole graph can be built in one batched operation. For harder cases it can run Rhino commands, RhinoScript-Python and RhinoCommon C#.

Who it is for. Architects and industrial designers who model in Rhino and Grasshopper and want an agent to take over routine work.

Good fit when

  • A series of similar objects must be sketched from a description.
  • A Grasshopper definition is built from scratch: components, wires, slider values.
  • The agent should check the document: layers, attributes, selection by color or name.
  • Length, area or volume of a set of objects must be measured.
  • The model is checked against a viewport capture.

Not a fit when

  • You need protection from arbitrary code execution: script tools are on by default.
  • The server is to be exposed over a network without adding authentication.
  • Rhino is older than version 8.

Example request

Place a row of columns every 2 meters along the selected curve, then measure the total volume and show a viewport capture.

MCP

Transport
stdio
Authentication
not required

Environment variables

RHINO_MCP_HOST
Rhino bridge host, 127.0.0.1 by default; non-loopback hosts are refused without `RHINO_MCP_ALLOW_REMOTE=1`
RHINO_MCP_PORT
Bridge TCP port, 1999 by default
RHINO_MCP_ENABLE_RUN_COMMAND
Value 0 disables the Rhino command tool
RHINO_MCP_ENABLE_RHINOSCRIPT
Value 0 disables RhinoScript-Python execution
RHINO_MCP_ENABLE_CSHARP
Value 0 disables RhinoCommon C# execution

Limitations

Works with Rhino 8 on Windows and macOS. `uv` is needed for `uvx`. Install the plugin through Package Manager in Rhino and type `mcpstart` each session. The server and plugin talk over unauthenticated TCP on `127.0.0.1:1999`. The `run_command`, `execute_rhinoscript_python_code` and `execute_rhinocommon_csharp_code` tools give the model an open execution surface inside Rhino; turn them off with `RHINO_MCP_ENABLE_RUN_COMMAND`, `RHINO_MCP_ENABLE_RHINOSCRIPT` and `RHINO_MCP_ENABLE_CSHARP`. Run only one server instance at a time.

How to disable. Type `mcpstop` in Rhino, remove the `rhino` entry from the client config and optionally uninstall the `rhinomcp` plugin in Package Manager.

FAQ

How do I connect it to Claude Code?

Run `claude mcp add rhino -- uvx rhinomcp@latest`. For Codex use `codex mcp add rhino --env RHINO_MCP_HOST=127.0.0.1 -- uvx rhinomcp@latest`.

Can I work with several Rhino windows?

Yes. Each Rhino takes its own port starting at 1999. Add one server entry per instance in the client and tell them apart with `RHINO_MCP_PORT`.

How do I disable script execution?

Set `RHINO_MCP_ENABLE_RHINOSCRIPT=0` and `RHINO_MCP_ENABLE_CSHARP=0`; `RHINO_MCP_ENABLE_RUN_COMMAND=0` removes Rhino command execution.

Does ChatGPT work?

Only through Codex for a local setup. ChatGPT apps connect to remote MCP servers, while `uvx rhinomcp` runs locally over stdio.

What does `mcpstatus` show?

The port, the open document and connected clients.

Discussion

No questions or reviews yet.

Official

McNeel's MCP server for Rhino 3D: Claude, Codex and Gemini CLI model geometry in an open Rhino and build Grasshopper definitions

MCP serverExtended access407Repository stars

A Rhino 8 plugin lets agents build parametric models in Grasshopper and run renders from a plain-language description.

MCP serverExtended access111Repository stars

MCP server and Ghidra plugin that lets an agent decompile binaries, follow cross-references and rename functions in an open project

MCP serverExtended access11.9KRepository stars

An MCP server for the Ghidra disassembler: hundreds of tools for reverse engineering, decompilation, renaming, structures, emulation and debugging

MCP serverBroad access6.2KRepository stars

A Ghidra extension with an MCP server: an agent reads pseudocode and disassembly, builds call graphs and edits names, types and structures via 100 tools

MCP serverBroad access810Repository stars

Blender MCP

MCP for Blender

Editors’ pick

An MCP server and Blender addon: the agent creates and edits objects, materials and scenes, pulls assets and runs Python in Blender

MCP serverBroad access34.3KRepository stars

README in short

One plugin and one client config entry cover both Rhino and Grasshopper. Tools are schema-checked before sending, with the mode set by `RHINO_MCP_VALIDATE`.

README badge

Report a problem