Skip to main content
Glama
millik66n
by millik66n

Rhino MCP

El puente de baja fricción entre Rhino y Grasshopper para Codex, Claude y Cursor.

La experiencia en Windows es deliberadamente breve:

  1. Descargue y ejecute RhinoMCP-Windows-Setup.

  2. Elija Codex, Claude o Cursor.

  3. Abra Rhino, abra Grasshopper y comience a dar instrucciones.

No se requiere Rhino Package Manager, clonación de repositorio, instalación de Python, uv, entorno Conda, script de Python de Rhino, archivo de Grasshopper, cambio de ruta de Python, comando de terminal ni configuración de MCP editada a mano como parte de la instalación normal.

Instalación

Requiere Rhino 8.0 o superior y el cliente de IA que desee usar. Rhino 8.1 es compatible sin actualizar Rhino. Cierre Rhino, descargue el único archivo RhinoMCP-Windows-Setup-*.exe desde la última versión y haga doble clic en él. El instalador pregunta por el cliente de IA y luego automáticamente:

  • instala los puentes de Rhino y Grasshopper usando el instalador incluido de Rhino;

  • instala un servidor MCP autónomo con su entorno de ejecución completo;

  • escribe la entrada MCP de Codex, Claude o Cursor de forma segura;

  • selecciona el perfil de herramientas de Grasshopper seguro;

  • ejecuta las comprobaciones del doctor; y

  • agrega una entrada normal a Aplicaciones instaladas de Windows para una eliminación limpia.

El instalador no necesita que Rhino esté en línea, no descarga dependencias y Rhino MCP nunca se actualiza a sí mismo. Instalar una versión diferente siempre requiere ejecutar deliberadamente otro instalador.

Para implementación administrada o silenciosa, la misma descarga admite:

.\RhinoMCP-Windows-Setup-0.3.3.exe /CLIENT=codex /SILENT

Los valores válidos de cliente son codex, claude y cursor. Reinicie el cliente de IA seleccionado después de la configuración. Los usuarios de Codex pueden ejecutar /mcp para confirmar que rhino-mcp está habilitado.

Related MCP server: Grasshopper MCP

Qué aparece en Rhino

El panel acoplable Rhino MCP se abre automáticamente cada vez que se inicia Rhino. Permanece visible hasta que el usuario lo oculta, se mantiene oculto durante el resto de esa sesión y vuelve a aparecer en el siguiente inicio de Rhino. Ejecute el comando RhinoMCP en cualquier momento para mostrarlo u ocultarlo manualmente.

El panel se ajusta a la franja normal de paneles/encabezados de Rhino. Su titular muestra Conectado — listo para dar instrucciones a Rhino, Rhino MCP está en ejecución — esperando al cliente de IA o un mensaje accionable de detenido/no configurado. También muestra:

  • servidor MCP conectado o en espera

  • puente de Rhino conectado o detenido

  • Grasshopper disponible o no en ejecución

  • cliente de IA y perfil de herramientas seleccionados

  • puertos de Rhino y Grasshopper

  • registros recientes

  • botones Reiniciar, Crear cubo de prueba y Copiar comando del doctor

El instalador incluye ambas compilaciones de tiempo de ejecución de Rhino 8. Rhino usa automáticamente net7.0 en su tiempo de ejecución normal o net48 si Rhino está configurado para el tiempo de ejecución heredado de .NET Framework; el usuario no necesita elegir ni configurar esto.

La prueba de conexión crea un cubo de una unidad, lo verifica y lo elimina. Si la limpieza está deshabilitada, el cubo de prueba se deja en el documento.

Comandos avanzados

El botón Copiar comando del doctor del panel de Rhino copia la ruta completa correcta para los usuarios del instalador. Las instalaciones desde el código fuente y desde el paquete de Python pueden usar:

rhino-mcp setup [codex|claude|cursor]
rhino-mcp doctor [--json]
rhino-mcp status [--json]
rhino-mcp update
rhino-mcp uninstall [--all]
rhino-mcp config [codex|claude|cursor]
rhino-mcp config --profile basic|grasshopper|developer

doctor informa estados de aprobado/fallido/en espera para el paquete, la configuración, cada cliente de IA, Rhino, Grasshopper y el lanzador del servidor. Que Rhino y Grasshopper estén cerrados se muestra como WAIT, con la siguiente acción exacta, en lugar de como rastros de socket.

Perfiles de herramientas

Básico (predeterminado)

El conjunto seguro para el uso diario:

  • rhino_status

  • get_scene_summary

  • list_layers

  • list_objects

  • get_scene_changes

  • create_geometry

  • modify_objects

  • delete_objects

  • organize_layers

  • batch_geometry

  • test_connection

  • capture_viewport

Grasshopper

Agrega contexto de definición paginado, inspección de selección/objetos y herramientas de recálculo. El .gha incluido inicia su puente automáticamente cuando se abre Grasshopper; no hay definición .gh ni componente de Python que cargar.

Desarrollador

Agrega explícitamente herramientas de Python arbitrarias de Rhino y Grasshopper. Están ausentes de los esquemas de herramientas Básico y Grasshopper, por lo que un cliente de IA no puede descubrirlas ni llamarlas accidentalmente. Las operaciones seguras de alto nivel siguen siendo preferidas.

Comportamiento de edición seguro

  • Cada solicitud de modificación obtiene un registro de deshacer de Rhino con nombre.

  • Un lote realiza todas las operaciones en una sola transacción y redibuja una vez.

  • Las herramientas de geometría y capas aceptan dry_run: true para validación y vista previa.

  • Las eliminaciones requieren IDs de objetos de Rhino explícitos.

  • Los resultados de lectura son objetos estructurados, no JSON codificado dentro de cadenas.

  • Las listas de objetos y de Grasshopper se filtran y paginan.

  • get_scene_changes envía solo adiciones, ediciones y eliminaciones desde una versión de escena suministrada.

Ejemplo de instrucción:

Create a 10 × 8 × 3 box on a layer named Massing. Dry-run it first, then create it
and show me a compressed viewport capture.

Fiabilidad y rendimiento

  • Los mensajes con prefijo de longitud de 4 bytes reemplazan el antiguo búfer de recepción gigante.

  • Las solicitudes se leen en fragmentos limitados de 64 KiB con un límite máximo de 64 MiB.

  • Las conexiones TCP de Rhino y HTTP de Grasshopper se mantienen vivas y se reutilizan.

  • Una lectura segura fallida se reconecta automáticamente una vez.

  • Las mutaciones nunca se reintentan a ciegas, lo que evita geometría duplicada.

  • Los metadatos de escena de corta duración se almacenan en caché y se invalidan después de las ediciones.

  • Los cambios de escena y los documentos grandes se paginan en lugar de devolverse repetidamente completos.

  • El contexto de Grasshopper se simplifica de forma predeterminada.

  • Las capturas de vista usan JPEG comprimido de forma predeterminada con tamaño y calidad configurables.

  • El trabajo de socket y la codificación de imágenes se ejecutan fuera del hilo de la interfaz de usuario de Rhino; solo las llamadas a la API de Rhino se transfieren a él.

  • Las descripciones de herramientas y las respuestas normales son intencionalmente compactas para reducir el uso de tokens del modelo.

Cambie los valores predeterminados de imagen con:

rhino-mcp config --image-size 1280 --image-quality 82

Compilación para desarrolladores

Paquete de Python:

python -m venv .venv
.venv/bin/pip install -e ".[dev]"
.venv/bin/pytest -q
python -m build

Complemento de Rhino 8 y archivo de Package Manager:

./scripts/build-yak.sh Release

El script compila RhinoMCP.rhp, RhinoMCP.Grasshopper.gha y un .yak en dist/.

Instalador completo de Windows (ejecutar en PowerShell en Windows):

python -m pip install -e ".[dev]" "pyinstaller==6.22.2"
choco install innosetup --yes
.\scripts\build-windows-installer.ps1

CI compila y prueba de humo el ejecutable de Windows incluido y el instalador de archivo único. Las versiones etiquetadas adjuntan el instalador, su suma de verificación SHA-256 y los artefactos manuales de desarrollador.

Arquitectura

Codex / Claude / Cursor
        │ MCP stdio
        ▼
bundled rhino-mcp.exe
        │ framed, persistent localhost TCP
        ▼
RhinoMCP.rhp ── Rhino document + dockable panel
        │
        └── RhinoMCP.Grasshopper.gha (persistent localhost HTTP)

Ambos puentes se enlazan solo a 127.0.0.1; no están expuestos a la red.

Licencia

MIT. Este repositorio es independiente y no tiene un remoto Git ascendente.

A
license - permissive license
Not graded
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
7Releases (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

View all related MCP servers

Related MCP Connectors

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to control Unreal E…

  • Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.

  • Real-time chat hub for AI agents — Claude Code, Cursor, Cline, Codex over MCP or REST.

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/millik66n/rhino-mcp'

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