使用说明
项目简介
Gendl MCP Server Wrapper 是一个基于 Node.js 开发的增强型 MCP(Model Context Protocol)服务器,旨在桥接 Gendl 框架和 LLM 客户端,例如 Claude Desktop。它充当 Claude 与 Gendl 之间的接口,允许 Claude 利用 Gendl 的强大工程设计能力。
Gendl 是一个生成式编程和知识库工程 (KBE) 框架,用于定义复杂的工程问题、生成 3D 几何图形并进行知识库查询。此 MCP 服务器包装器使得 Claude 可以通过标准化的 MCP 协议与 Gendl 后端进行通信。
主要功能点
- MCP 服务器核心功能实现: 支持资源管理、工具注册与执行、Prompt 模板渲染等 MCP 协议定义的核心功能。
- Gendl 集成: 作为 Gendl 的增强型包装器,允许 LLM 客户端安全、可扩展地访问 Gendl 的上下文服务。
- 工具支持: 内置 'lisp_eval' 工具用于执行 Gendl Lisp 代码,'query_gendl_kb' 工具用于查询 Gendl 知识库,'http_request' 工具用于发起 HTTP 请求。
- Docker 容器管理: 能够自动启动和管理 Gendl Docker 容器,简化部署流程。
- 灵活配置: 支持通过命令行参数和环境变量配置 Gendl 服务器地址、端口、Docker 镜像等参数。
- 多种传输协议支持: 通过 Node.js 脚本和 JSON-RPC 协议与 MCP 客户端通信,支持 Stdio 传输协议。
安装步骤
-
安装依赖: 确保已安装 Node.js 和 Docker。然后,在仓库的 'scripts' 目录下执行以下命令安装 Node.js 依赖:
cd /projects/gendl/gwl/mcp/scripts npm install chmod +x enhanced-mcp-wrapper.js -
测试脚本: 运行以下命令测试脚本是否正常工作:
node enhanced-mcp-wrapper.js --help
服务器配置
为了使 MCP 客户端(如 Claude Desktop)能够连接到 Gendl MCP 服务器,您需要在客户端配置文件中指定服务器的启动命令和参数。以下是一个 'claude_desktop_config.json' 示例配置,展示了如何配置 'gendl' 服务器:
{ "mcpServers": { "gendl": { "command": "wsl", // 或您系统上的 Node.js 执行命令路径,例如 "node" "args": [ "/home/user/projects/gendl-mcp/scripts/enhanced-mcp-wrapper.js", // enhanced-mcp-wrapper.js 脚本的绝对路径 "--mount", "/home/user/projects:/projects" // 可选:挂载本地目录到 Docker 容器 ], "env": { "NODE_ENV": "production", "DEBUG": "*" // 可选:启用调试日志 } } }, "globalShortcut": "" }
参数说明:
- 'command': 启动 MCP 服务器的命令,通常是您系统上的 Node.js 执行命令路径 ('node' 或 'wsl node' 等)。
- 'args': 传递给 'enhanced-mcp-wrapper.js' 脚本的命令行参数,例如:
- '/home/user/projects/gendl-mcp/scripts/enhanced-mcp-wrapper.js': 'enhanced-mcp-wrapper.js' 脚本的绝对路径。请根据您的实际路径修改。
- '--mount /home/user/projects:/projects': 可选参数,用于将宿主机的 '/home/user/projects' 目录挂载到 Docker 容器的 '/projects' 目录。您可以根据需要添加或修改挂载点。
- 其他可选参数,例如 '--host', '--swank-host-port', '--http-host-port' 等,请参考 'README.md' 文件中的 "Command-Line Arguments" 部分进行配置。
- 'env': 可选的环境变量配置,例如:
- 'NODE_ENV: "production"': 设置 Node.js 运行环境为生产环境。
- 'DEBUG: "*"': 启用详细的调试日志输出。
注意:
- 请根据您的实际环境修改 'command' 和 'args' 中的路径。
- 确保 MCP 客户端配置文件(例如 'claude_desktop_config.json')与您的 MCP 服务器配置相匹配。
基本使用方法
-
启动 MCP 服务器: 根据您在 'claude_desktop_config.json' 中配置的 'command' 和 'args',启动 Gendl MCP 服务器。例如,如果配置了 'wsl node /home/user/projects/gendl-mcp/scripts/enhanced-mcp-wrapper.js',则在 WSL 终端中运行该命令。
-
配置 MCP 客户端: 在 MCP 客户端(如 Claude Desktop)中,配置连接到 'gendl' 服务器。客户端将使用 JSON-RPC 协议通过 Stdio 与服务器进行通信。
-
使用 LLM 客户端: 使用 Claude Desktop 等 LLM 客户端,通过 MCP 协议与 Gendl MCP 服务器交互。您可以使用客户端提供的工具(例如 'lisp_eval', 'query_gendl_kb', 'http_request')来访问 Gendl 的功能和知识库。
请参考 'README.md' 文件中的 "Usage Examples" 和 "Tools for Claude Integration" 部分,了解更多使用细节和工具的使用方法。
信息
分类
AI与计算