Skip to main content

Rhino integration through the Model Context Protocol

Project description

RhinoClaw Server

Python MCP server that connects AI agents to Rhino 3D via the Model Context Protocol.

Overview

This server bridges AI agents (Claude, Cursor, etc.) to Rhino through:

  • FastMCP: Python MCP implementation
  • TCP Socket: Communication with Rhino plugin on localhost:1999

Installation

# Install uv (if not already installed)
# macOS: brew install uv
# Windows: powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

# Install dependencies
cd rhinoclaw_server
uv pip install -e .

Usage

# Development mode
uv run python -m rhinoclaw

# Or via uvx (installed)
uvx rhinoclaw

Note: Start the Rhino plugin first (mcpstart in Rhino command line).

Project Structure

rhinoclaw_server/
├── src/rhinoclaw/
│   ├── server.py          # Main server, FastMCP setup
│   ├── tools/             # MCP tool implementations
│   │   ├── create_object.py
│   │   ├── modify_object.py
│   │   ├── get_document_info.py
│   │   └── ...
│   ├── utils/             # Helper utilities
│   └── prompts/           # AI prompts
├── dev/                   # Development scripts
│   ├── dev_test.py        # Basic testing
│   └── dev_castle.py      # Example: castle generation
└── pyproject.toml         # Package configuration

Available Tools

For the complete and up-to-date tool list, see USAGE.md.

Categories:

  • System: ping, get_document_info, get_logs, set_debug_mode
  • Object Creation: create_object, create_objects, create_text, create_text_dot
  • Object Manipulation: modify_object, delete_object, select_objects, get_object_properties, set_object_properties
  • Boolean Operations: boolean_operation (union, difference, intersection)
  • Transform: copy_object, mirror_object, array_linear, array_polar
  • Curves: offset_curve, fillet_curves, chamfer_curves
  • Surfaces: loft_curves, extrude_curve, revolve_curve
  • Dimensions: create_linear_dimension, create_angular_dimension, create_radial_dimension
  • Layers & Materials: create_layer, create_material, assign_material_to_layer
  • Scripts: execute_rhinoscript_python_code

Development

# Run tests
uv run python dev/dev_test.py

# Build package
uv build

# Publish to PyPI
uv publish

Documentation

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rhinoclaw-0.7.2.tar.gz (570.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rhinoclaw-0.7.2-py3-none-any.whl (579.5 kB view details)

Uploaded Python 3

File details

Details for the file rhinoclaw-0.7.2.tar.gz.

File metadata

  • Download URL: rhinoclaw-0.7.2.tar.gz
  • Upload date:
  • Size: 570.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rhinoclaw-0.7.2.tar.gz
Algorithm Hash digest
SHA256 8647e68b020302d14164f3ad9faed38ee19b0bb0e754adde5de39cbfd2e135cb
MD5 69743d8273671888726ceb581b92472a
BLAKE2b-256 388038231f1c44d870f732f7e5846a66f9c4873ce15db1181b4083002e298694

See more details on using hashes here.

File details

Details for the file rhinoclaw-0.7.2-py3-none-any.whl.

File metadata

  • Download URL: rhinoclaw-0.7.2-py3-none-any.whl
  • Upload date:
  • Size: 579.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rhinoclaw-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 573acff38d45557296ef1aad6814c49d53491c59e56b3c24741763babbcc0ad3
MD5 c8bcc2b70cf8752fed626445754f6004
BLAKE2b-256 be9881ae74c826123432208c1f9d967ce9e7ce5e337bd442f5c0754d3925a1de

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page