GH_mcp_server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| extract_geometryB | Extract geometric data from an existing object. Args: file_path: Path to the .3dm file object_index: Index of the object to extract data from Returns: Geometric data in a readable format |
| measure_distanceB | Measure the distance between two objects in a Rhino file. Args: file_path: Path to the .3dm file object_index1: Index of the first object object_index2: Index of the second object Returns: Distance measurement information |
| analyze_rhino_fileC | Analyze a Rhino (.3dm) file. Args: file_path: Path to the .3dm file Returns: Analysis of the file contents |
| list_objectsB | List all objects in a Rhino file. Args: file_path: Path to the .3dm file Returns: Information about objects in the file |
| execute_grasshopper_codeC | Execute given Python code. Args: code: The given code to execute file_path: Path where the generated code will be saved Returns: Result of the executing code |
| add_grasshopper_componentC | Add a component from an existing Grasshopper plugin. Args: component_name: Name of the component component_type: Type/category of the component parameters: Component parameters and settings Returns: Result of the operation |
| connect_grasshopper_componentsC | Connect parameters between Grasshopper components. Args: source_id: Source component ID source_param: Source parameter name target_id: Target component ID target_param: Target parameter name Returns: Result of the operation |
| run_grasshopper_definitionB | Run a Grasshopper definition. Args: file_path: Path to the .gh file (or None for current definition) save_output: Whether to save the output output_path: Path to save the output (if save_output is True) Returns: Result of the operation |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| grasshopper_GHpython_generation_prompt | Creates a prompt template for generating Grasshopper Python code with proper imports and grammar. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 8 tools
Most tools have distinct purposes, but 'execute_grasshopper_code' is ambiguous because it executes Python code, not Grasshopper code, potentially causing confusion with other Grasshopper-related tools.
All tool names follow a verb_noun snake_case pattern, which is consistent. However, 'execute_grasshopper_code' is misleading as it executes Python code, not Grasshopper code, slightly breaking the semantic consistency.
With 8 tools, the server covers core Grasshopper and Rhino operations without being excessive. Each tool serves a clear function within the expected scope.
The tool set lacks creation and modification capabilities for Rhino objects and components. Missing tools for creating new geometry, saving files, or deleting objects, which are essential for a complete workflow.