RhinoMcpServer

RhinoMcpServer

🚀 Rhino MCP 服务器

本项目为 Rhino 3D 打造了 Model Context Protocol (MCP) 服务器,借助该服务器,像 Claude 这类 AI 助手能够通过 Model Context Protocol 与 Rhino 进行交互,实现从 AI 接口直接创建和操作 3D 对象。

⚠️ 重要提示

该项目目前处于积极开发阶段,尚未正常工作。Rhino 插件在创建对象时遇到问题。我们正在积极寻求社区的支持以帮助解决这些问题。如果您有使用 Rhino API 开发、C# 插件或 MCP 集成的经验,请考虑贡献代码。如需联系,请在 GitHub 上打开问题报告。

✨ 主要特性

  • 为 Rhino 3D 实现 MCP 服务器,让 AI 助手可通过 MCP 与 Rhino 交互。
  • 支持从 AI 接口直接创建和操作 3D 对象。

📚 详细文档

系统架构

系统由 Python 组件实现 MCP 服务器以及 C# 组件与 Rhino 集成。以下是系统组件的交互概述:

graph TD
%% 客户端应用程序
client[客户端应用程序] --> socketProxy

%% Socket 代理
subgraph "Python Socket 代理"
socketProxy[socket_proxy.py] --> daemonServer
end

%% 守护服务器
subgraph "Python 守护服务器"
daemonServer[daemon_mcp_server.py] --> combinedServer
end

%% 组合 MCP 服务器
subgraph "Python 组合 MCP 服务器"
combinedServer[combined_mcp_server.py]
mcp[FastMCP] --> tools
combinedServer --> mcp
combinedServer --> rhinoConn
subgraph "MCP 工具"
tools[MCP 工具方法]
end
rhinoConn[RhinoConnection]
end

%% Rhino 插件组件
subgraph "C# Rhino 插件"
rhinoPlugin[RhinoMcpPlugin.cs]
socketServer[RhinoSocketServer.cs]
utilities[RhinoUtilities.cs]
commands[RhinoMcpCommand.cs]

rhinoPlugin --> socketServer
rhinoPlugin --> commands
socketServer --> utilities
end

%% 组件间的连接
rhinoConn <==> socketServer

%% 日志组件
subgraph "日志系统"
logManager[log_manager.py]
nlogConfig[NLog.config]
end

combinedServer --> logManager
rhinoPlugin --> nlogConfig

%% Rhino 程序
rhino[Rhino.exe]

开发

项目结构

  • combined_mcp_server.py:主要的 MCP 服务器实现文件
  • diagnose_rhino_connection.py:用于测试 Rhino 连接的诊断工具
  • log_manager.py:用于管理和分析日志的工具
  • server_launcher.sh:启动任何服务器实现的统一脚本
  • logs/:包含所有日志文件的目录
  • 0 关注
  • 0 收藏,11 浏览
  • system 提出于 2025-09-30 17:45

相似服务问题