KlayoutClaw
使用说明(简要、易上手)
-
项目简介 KlayoutClaw 是一个专为 KLayout 设计的 MCP 服务器插件。它驻留在 KLayout 中,通过 HTTP 的 JSON-RPC 接口对外提供服务,包含对“资源/数据的访问与管理”、“工具调用(如执行脚本、创建布局、保存文件等)”以及“Prompt 模板的渲染与管理”等能力,帮助本地的大语言模型客户端以标准化方式与桌面 CAD/EDA 工作流进行集成。
-
主要功能点
- 资源与数据访问:提供读取、写入、导出等对布局和 GDS/OASIS 的操作能力。
- 工具注册与执行:LLM 客户端可以调用预定义的工具,执行脚本、查询布局信息、保存输出等。
- Prompt 模板与交互:支持基于 MCP 的提示模板渲染与渲染结果返回,便于设计对话模式与交互流程。
- 多协议与会话:通过 JSON-RPC 2.0 over HTTP,支持会话管理与多种传输场景。
- 本地化运行:服务器作为 KLayout 的插件运行在主线程,避免引入额外依赖。
-
安装步骤
- 获取代码 克隆仓库:git clone https://github.com/caidish/KlayoutClaw.git
- 安装插件到 KLayout 运行 install.py,会自动把 MCP 服务器的相关脚本安装到 KLayout 的 pymacros 目录中。
- 启动 KLayout 启动 KLayout 应用(文档中标注仅 macOS 版本已完成测试,未来版本将扩展到 Linux/Windows)。
- 启动后端服务测试 使用测试脚本或示例客户端连接,端点为 http://127.0.0.1:8765/mcp,进行初步连接测试(如 tests/test_connection.py)。
- 使用示例
- Claude/Codex 等 MCP 客户端通过配置向服务器发起 initialize/工具调用等请求,建立会话并执行操作。
-
服务器配置(给 MCP 客户端的配置信息,JSON 形式,包含 server name、command、args 等) 说明:本 MCP 服务器在 KLayout 插件内启动,不需要独立的系统命令行启动。客户端连接信息如下(示例用途,实际连接请使用客户端文档中的方式): { "serverName": "KlayoutClaw", "type": "http", "url": "http://127.0.0.1:8765/mcp", "command": null, "args": [], "notes": "KLayoutClaw MCP 服务通过 KLayout 插件自动启动,当前仅在 macOS 上测试通过,需在 KLayout 中加载 klayoutclaw_server.lym 插件并启动 KLayout。协议版本为 2025-03-26。" }
-
基本使用方法
- 客户端连接:使用上述 URL 进行连接,发送 JSON-RPC 请求,例如 initialize、tools/call 等。
- 常用操作示例:初始化后可逐步调用工具以创建布局、执行脚本、保存输出等,后续可通过 Tools 与 Pins/Markers、路由等功能扩展使用。
- 调试与测试:仓库内提供了测试脚本(tests/)用于协议层和端到端测试,确保 MCP 服务可用。
-
其他注意
- 当前文档明确指出 macOS 为当前的测试与运行环境,Linux/Windows 的支持计划中但未证实。
- 服务器实现依赖 KLayout 的运行环境与插件(MCP 服务器是在 KLayout 中实现的插件,不是独立的 Python 服务)。