果子狸MCP服务

果子狸MCP服务

Connects Jia Li Chuang EDA / EasyEDA Pro schematics to MCP clients, enabling AI-driven schematic editing, reading, and analysis.

Category
访问服务器

README

果子狸MCP服务

果子狸MCP服务把嘉立创 EDA / EasyEDA 专业版原理图连接到支持 MCP 的 AI 客户端。项目由两部分组成:

  • easyeda-extension/:安装在嘉立创 EDA 专业版中的扩展,只执行明确列入白名单的结构化操作。
  • src/server.mjs:运行在本机的 MCP stdio 服务,同时监听 127.0.0.1:49620-49629,供扩展自动发现和连接。

它不依赖 Run API Gateway,不开放 HTTP 代码执行接口,也不使用 evalFunctionAsyncFunction 执行外部代码。

主要功能

  • 无需先打开图页即可列出当前工程中的全部原理图和图页。
  • 读取页面、器件、PIN、导线和网络信息。
  • 创建、批量移动、旋转、删除原理图器件及图元,并可将选定器件与完整导线折线作为一组平移。
  • 创建导线、网络端口和网络标识,并提供按 PIN 方向放置端口的高层工具。
  • 执行原理图 DRC,并原样返回当前 EasyEDA 版本提供的结果。
  • 分析器件密度、交叉连线、网络端口方向等可读性问题。
  • 每次 MCP 进程首次修改一份原理图前自动创建一次完整备份;同一会话后续操作复用该安全点。
  • 在编辑器中显示连接状态悬浮框。

完整工具列表见 docs/EASYEDA_MCP_TOOLS.md,实现与协议见 docs/EASYEDA_MCP_ARCHITECTURE.md

环境要求

  • 嘉立创 EDA / EasyEDA 专业版 3.2.x
  • Node.js 20 或更高版本。
  • 支持本地 stdio MCP 服务的客户端,例如 Codex。

安装扩展

  1. 从 GitHub Releases 下载最新版 guozili-mcp-service_v*.eext,或按“从源码构建”生成安装包。
  2. 打开嘉立创 EDA 专业版的扩展管理器。
  3. 导入 .eext 文件并启用“果子狸MCP服务”。
  4. 停用 Run API Gateway,刷新一次编辑器页面。
  5. 顶部菜单进入“果子狸MCP服务”,可查看状态悬浮框、重新连接或停止连接。

安装本地 MCP 服务

git clone https://github.com/lyq11/guozili-mcp-service.git
cd guozili-mcp-service
npm install

服务入口是 src/server.mjs。MCP 客户端应以 stdio 方式启动它;直接调试时也可以运行:

npm start

以 Codex 的 config.toml 为例,将绝对路径替换为实际克隆位置:

[mcp_servers.guozili_easyeda]
command = "node"
args = ["C:\\path\\to\\guozili-mcp-service\\src\\server.mjs"]
startup_timeout_sec = 20
tool_timeout_sec = 120

保存配置后重启 MCP 客户端或新开一个任务。打开原理图后调用 easyeda_health,应能看到 MCP、WebSocket RPC 和 EasyEDA 当前上下文。

连接方式

扩展启动后会自动扫描 49620-49629,找到协议匹配的本机 MCP 服务后注册。默认仅监听环回地址,不接受局域网或公网连接。

可用环境变量:

变量 作用
EASYEDA_MCP_PORT_START 扫描端口范围起点,默认 49620
EASYEDA_MCP_PORT_END 扫描端口范围终点,默认 49629
EASYEDA_MCP_TOKEN 覆盖 MCP 服务端认证令牌;必须与自行构建的扩展保持一致
EASYEDA_MCP_SESSION_ID 固定会话 ID,通常无需设置
EASYEDA_MCP_DEBUG=1 向 stderr 输出 RPC 调试日志

发布包中的扩展使用内置的本机握手令牌。若要轮换令牌,请同时修改 easyeda-extension/src/protocol.ts 或通过自己的构建流程注入相同值。

从源码构建

npm install
npm run check
npm run test:pin-layout
npm run test:rpc

cd easyeda-extension
npm install
npm run check
npm run build

生成的扩展包位于:

easyeda-extension/dist/guozili-mcp-service_v0.2.2.eext

扩展安装并打开原理图后,可在仓库根目录执行联机冒烟测试:

npm run test:smoke

安全边界

  • WebSocket 仅绑定 127.0.0.1
  • MCP 和扩展通过 RPC v1 与令牌握手。
  • 插件只接受固定能力清单内的结构化方法。
  • 请求体最大 2 MiB,认证及 RPC 均设有超时。
  • 写操作串行执行,但一组 EasyEDA API 操作不是数据库事务;失败时可使用自动备份恢复。

许可证

本项目使用 Apache License 2.0,详见 LICENSE。果子狸图标为本项目生成的原创资产,可随本项目在同一许可证下使用。

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选