Grasshopper桥接服务

Grasshopper MCP Bridge是一个连接Grasshopper和Claude Desktop的桥接服务器,通过Model Context Protocol (MCP)标准实现组件创建、连接和高级意图识别功能。

  • by alfredatnycu
  • C#
  • 本地部署
  • 103 星标
  • 更新于
在 GitHub 查看 alfredatnycu/grasshopper-mcp

使用说明

蚱蜢MCP桥

Grasshopper MCP Bridge是一个桥接服务器,使用模型上下文协议(MCP)标准连接Grasshopper和Claude Desktop。

特性

  • 通过MCP协议连接Grasshopper和Claude Desktop
  • 提供直观的工具功能,用于创建和连接Grasshopper组件
  • 支持高级意图识别,从简单描述自动创建复杂的组件模式
  • 包括一个组件知识库,了解常见组件的参数和连接规则
  • 提供组件指导资源,帮助Claude Desktop正确连接组件

系统架构

该系统由以下部分组成:

  1. 蚱蜢MCP组件(GH_MCP.gha):安装在Grasshopper中的插件,提供TCP服务器来接收命令
  2. Python MCP网桥服务器:连接Claude Desktop和Grasshopper MCP组件的网桥服务器
  3. 组件知识库:包含组件信息、模式和意图的JSON文件

安装说明

先决条件

  • Rhino 7或更高
  • 蚱蜢
  • Python 3.8或更高版本
  • 克劳德桌面

安装步骤

  1. 安装Grasshopper MCP组件

    方法1:下载预编译的GH_MCP.gha文件(推荐)

    下载 GH_MCP.gha 直接从GitHub存储库中下载文件并将其复制到Grasshopper组件文件夹:

    %APPDATA%\Grasshopper\Libraries\
    

    方法2:从源代码构建

    如果您更喜欢从源代码构建,请克隆存储库并使用Visual Studio构建C#项目。

  2. 安装Python MCP网桥服务器

    方法1:从PyPI安装(推荐)

    最简单的方法是使用pip直接从PyPI安装:

    pip install grasshopper-mcp
    

    方法2:从GitHub安装

    您还可以从GitHub安装最新版本:

    pip install git+https://github.com/alfredatnycu/grasshopper-mcp.git
    

    方法3:从源代码安装

    如果需要修改代码或开发新功能,可以克隆存储库并安装:

    git clone https://github.com/alfredatnycu/grasshopper-mcp.git
    cd grasshopper-mcp
    pip install -e .
    

    安装特定版本

    如果您需要安装特定版本,可以使用:

    pip install grasshopper-mcp==0.1.0
    

    或者从特定的GitHub标签安装:

    pip install git+https://github.com/alfredatnycu/grasshopper-mcp.git@v0.1.0
    

用法

  1. 开始犀牛和蚱蜢

    启动Rhino并打开Grasshopper。

  2. 将GH_MCP组件添加到画布

    在Grasshopper组件面板中找到GH_MCP组件并将其添加到画布中。

  3. 启动Python MCP网桥服务器

    打开终端并运行:

    python -m grasshopper_mcp.bridge
    

    备注:命令 grasshopper-mcp 由于Python脚本路径问题,可能无法直接工作。使用 python -m grasshopper_mcp.bridge 是推荐的更可靠的方法。

  4. 将Claude Desktop连接到MCP网桥

    方法1:手动连接

    在Claude Desktop中,使用以下设置连接到MCP网桥服务器:

    • 协议:MCP
    • 主机:本地主机
    • 端口:8080

    方法2:配置Claude Desktop以自动启动网桥

    您可以通过修改配置将Claude Desktop配置为自动启动MCP Bridge服务器:

    "grasshopper": {
      "command": "python",
      "args": ["-m", "grasshopper_mcp.bridge"]
    }
    

    此配置告诉Claude Desktop使用命令 python -m grasshopper_mcp.bridge 启动MCP服务器。

  5. 使用Claude Desktop开始使用Grasshopper

    现在,您可以使用Claude Desktop通过自然语言命令控制Grasshopper。

示例命令

以下是您可以在Claude Desktop中使用的一些示例命令:

  • 在点(0,0,0)处创建半径为5的圆
  • “将圆连接到高度为10的拉伸组件”
  • “创建一个5行5列的点网格”
  • “对所有选定对象应用随机旋转”

故障排除

如果遇到问题,请检查以下内容:

  1. GH_MCP组件未加载

    • 确保.gha文件位于正确的位置
    • 在Grasshopper中,转到“文件”>“首选项”>“库”,然后单击“取消阻止”以取消阻止新组件
    • 重启Rhino和Grasshopper
  2. 网桥服务器无法启动

    • 如果 grasshopper-mcp 命令不起作用,请使用 python -m grasshopper_mcp.bridge 相反
    • 确保安装了所有必需的Python依赖项
    • 检查端口8080是否已被其他应用程序使用
  3. 克劳德桌面无法连接

    • 确保网桥服务器正在运行
    • 验证您使用的连接设置是否正确(localhost:8080)
    • 检查网桥服务器的控制台输出是否有任何错误消息
  4. 命令未执行

    • 验证GH_MCP组件是否在Grasshopper画布上
    • 检查网桥服务器控制台是否有错误消息
    • 确保Claude Desktop已正确连接到网桥服务器

发展

项目结构

grasshopper-mcp/
├── grasshopper_mcp/       # Python bridge server
│   ├── __init__.py
│   └── bridge.py          # Main bridge server implementation
├── GH_MCP/                # Grasshopper component (C#)
│   └── ...
├── releases/              # Pre-compiled binaries
│   └── GH_MCP.gha         # Compiled Grasshopper component
├── setup.py               # Python package setup
└── README.md              # This file

贡献

欢迎投稿!请随时提交拉取请求。

许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。

致谢

  • 感谢Rhino和Grasshopper社区提供的出色工具
  • 感谢Anthropic的Claude Desktop和MCP协议

联系

如有疑问或支持,请在GitHub存储库上打开问题。