MCP for Rhino — Connect AI Agents to Rhino
Agents that understand documents, not just commands. Inspect layers, units and tolerances first, then build geometry that respects the file you actually have open.
- Host software
- Rhino 7, Rhino 8, Rhino 9 (WIP track)
- Runtime
- RhinoCommon / .NET 7 + Python 3 bridge
- Transport
- stdio (local) and streamable HTTP (studio)
- Install
- Yak package + npx dccmcp-rhino
- Grasshopper
- Solver control, slider input, bake-back, definition introspection
- Platforms
- Windows, macOS
- Last reviewed
- 2026-09-20
What is MCP for Rhino?
MCP for Rhino is a local MCP server plus a Rhino plugin that connects AI agents to a real Rhino session. Agents discover 8 typed tools — including doc.inspect, curve.create, surface.loft and block.instance_place — and call them to inspect, create, modify and validate work inside the live application.
Unlike generated Rhino scripts, every call is validated against your current document, classified as read, write or execute, and recorded in an audit log. Rhino stays open, the document stays live, and destructive operations are checkpointed so they can be rolled back.
It works with Claude Code, Codex, Cursor, GitHub Copilot, Claude Desktop, Gemini CLI, Trae, Doubao, Qwen Code, CodeBuddy, Custom MCP clients over stdio or streamable HTTP.
- Host software: Rhino 7, Rhino 8, Rhino 9 (WIP track)
- Runtime: RhinoCommon / .NET 7 + Python 3 bridge
- Transport: stdio (local) and streamable HTTP (studio)
What goes wrong when agents drive Rhino without a contract
Tolerances and units silently break geometry
A model that assumes millimetres produces garbage in a document set to feet. Agents need the document context before they create anything.
Grasshopper definitions are opaque to automation
Agent-driven parametric work usually means scripting components blind. Without introspection, the agent cannot tell which sliders matter or which outputs to bake.
Bake operations pollute the document
Uncontrolled bake-back fills layers with unnamed geometry, breaks block definitions and makes downstream drafting unreliable.
How MCP for Rhino keeps intent, structure and traceability intact
Document-aware geometry
Every geometry tool receives unit and tolerance context from doc.inspect, so a curve created by an agent lands at the radius your document expects.
Grasshopper introspection
Enumerate inputs and outputs, read slider ranges, set values, resolve, then bake specific outputs to named layers — the whole loop is scriptable and reviewable.
Named-layer discipline
Bake-back targets are declared explicitly. The agent must select or create a layer, and every inserted object carries provenance metadata.
Blocks and instances, not duplicates
Place and transform block instances instead of exploding geometry, keeping large models fast and drawings consistent.
MCP for Rhino tools — every tool and its risk class
doc.inspectUnits, tolerances, layers, groups, blocks, named views and object counts.readcurve.createLines, arcs, polylines and interpolated curves with validated parameters.writesurface.loftLoft, revolve, extrude and sweep operations over typed curve inputs.writeblock.instance_placePlace and transform block instances with rotation and scale constraints.writegrasshopper.set_inputSet slider, toggle, value-list and panel inputs by nickname with range checks.writegrasshopper.solveTrigger a solve, wait for completion and return structured output metadata.executegrasshopper.bakeBake named outputs to explicit layers with provenance attributes.writeexport.geometryExport selections to STEP, IGES, DWG, OBJ or 3MF with unit conversion.execute
Install MCP for Rhino in four steps
Pre-release. These commands describe the interface we are shipping for MCP for Rhino — the packages are not published yet. Get notified when MCP for Rhino launches.
Install the Rhino plugin
Install the Yak package from the Rhino Package Manager, or via the command line on build machines.
yak install dccmcp-rhino
Start the bridge
The bridge connects your MCP client to the running Rhino document and to any open Grasshopper definitions.
npx dccmcp-rhino@latest serve --doc active
Register the server
Register the bridge with Claude Code, Codex, Cursor, OpenClaw or any other MCP client. Point it at the running document, or let it launch Rhino headlessly for batch work.
{
"mcpServers": {
"rhino": { "command": "npx", "args": ["dccmcp-rhino", "serve"] }
}
}Bind a definition
Point the agent at one or more .gh files so it can introspect inputs and outputs before it changes anything.
dccmcp-rhino bind ./facade-generator.gh
MCP for Rhino works with the agents you already use
- Claude Code
- Codex
- Cursor
- GitHub Copilot
- Claude Desktop
- Gemini CLI
- Trae
- Doubao
- Qwen Code
- CodeBuddy
- Custom MCP clients
Any other MCP-compatible client works too — one config entry, stdio by default.
Other MCP integrations that pair with Rhino
10 integrations available
Compare tool lists, support matrices and policies for every supported application.
Questions teams ask before they install
Yes. Point the server at a .gh or .ghx file and it will introspect components, inputs, outputs and slider ranges. You do not need to rewrite definitions for the agent to use them.
doc.inspect returns the document unit system and tolerances, and geometry tools normalize to them. If the agent requests a value that violates tolerance constraints, the call is rejected with an explanation instead of silently producing bad geometry.
No. Rhino 7 and Rhino 8 are both supported, with an early track for Rhino 9 WIP. Some Grasshopper introspection features are richer on Rhino 8 and newer.
Bake targets are explicit. The agent must declare an existing or new layer, and each inserted object gets provenance attributes naming the definition, run ID and timestamp.
Yes. The bridge supports a headless mode for CI and batch pipelines, subject to your Rhino licensing terms for unattended use.
Put an agent inside your real tools — without putting your pipeline at risk
Install an integration, set a policy, and let your agent inspect, build and validate work in Blender, Maya, Houdini, 3ds Max, Rhino, ZBrush, Photoshop, FreeCAD, QGIS or OpenCV. Free to start, local by default.
macOS · Windows · Linux — no cloud dependency required