Keratin

A custom Model Context Protocol (MCP) bridge connecting Claude AI to Rhinoceros 3D for text-to-parametric design.

Python · Rhino 7 · MCP · LLM Orchestration · AI-Assisted Development

The Problem

I wanted to see if an LLM could perform parametric design from a text prompt, but I couldn't get a ready-made MCP server compatible with my license of Rhino3D.

Most modern AI tools are built for the latest software versions. I had a license for Rhino 7, and existing bridges simply didn't support it. I didn't want to abandon the experiment—I wanted to bridge the gap between conversational AI and complex 3D geometry manipulation.

The Architecture & Direction

I designed the solution by breaking down existing MCP servers built for other versions of the software. Then, I turned to Claude and asked what it would take to make something like that possible for Rhino 3D 7 instead of 8.

The AI laid out the problems and provided hypothetical architectures. The final design required two components communicating over a local TCP socket:

We built them one at a time and debugged as we went until we had a product that actually accomplished something. Now, Claude can create geometry, manage layers, run boolean operations, drive Grasshopper, and execute arbitrary RhinoScript—all from a conversation.

What this proves

This project was built purely out of curiosity, but it demonstrates my core methodology: I don't need to know how to write every line of code to build a complex system. I need to understand the architecture, break down the problem, and direct an AI to implement the solution.

By specifying the logic and iterating through the bugs, I built a bridge that allows a Large Language Model to perform parametric design tasks in a legacy CAD environment. The engineering judgment is mine; the execution is AI-assisted.