BSch3V MCP服务器
用于人工智能辅助电路原理图设计和编辑的MCP服务器。
该项目旨在使像Claude这样的人工智能工具能够自动生成和编辑 BSch3V 电路图编辑器通过 模型上下文协议(MCP)目标是让AI在集成的工作流程中处理组件选择、放置、布线和网表验证。
它能做什么
阅读并分析示意图
- 加载CE3原理图文件并转换为JSON结构
- 生成网表(NL3W兼容连接分析)
- 检索元件列表、引脚坐标和网络连接
创建原理图
- 创建新原理图并放置元件
- 布线、接头和总线布线
- 放置电源符号、网络标签和标签
编辑原理图
- 添加、删除、移动、旋转和镜像组件
- 添加和删除导线
- 修改组件属性(名称、参照、显示位置)
- 更改纸张大小
管理组件
- 从BSch3V库(LB3)中搜索和检索组件
- 从现有原理图复制组件(CE3)
- 根据引脚定义创建新的矩形IC元件
- 重复使用具有修改后的引脚号/名称的现有符号
它不能做什么
- 制作干净、组织良好的示意图布局。AI使用坐标计算元件放置和布线,但结果与手绘原理图的质量不符。人工智能生成的示意图旨在在BSch3V中手动细化。
MCP工具(31个工具)
Schematic I/O (5 tools)
| 工具 | 说明 |
|---|---|
read_schematic | 读取CE3文件并返回其JSON结构 |
write_schematic | 将内存中的原理图保存到CE3文件 |
create_schematic | 创建新的空原理图 |
read_library | 从LB3库中读取所有组件信息 |
list_libraries | 列出可用的LB3文件(从BSCH3.INI自动检测) |
Component Operations (10 tools)
| 工具 | 说明 |
|---|---|
add_component | 放置组件 |
remove_component | 移除组件 |
move_component | 移动组件 |
rotate_component | 旋转或镜像组件 |
set_component_properties | 修改组件属性 |
get_component_pins | 获取引脚连接坐标 |
get_library_component | 从库或CE3获取组件数据 |
create_component | 根据接点定义创建新元件 |
modify_library_component | 从现有符号创建变体 |
get_schematic_summary | 获取组件列表和元素计数 |
Wiring (8 tools)
| 工具 | 说明 |
|---|---|
add_wire | 添加导线 |
remove_wire | 拆下电线 |
add_junction | 添加连接 |
add_bus | 添加巴士 |
add_bus_entry | 添加公交车入口 |
add_entry | 添加条目 |
add_label | 添加网络标签 |
add_tag | 添加标签 |
Analysis & Visualization (2 tools)
| 工具 | 说明 |
|---|---|
get_net_connections | 生成网表并分析连接 |
render_schematic | 将原理图渲染为SVG图像以进行视觉验证 |
Annotation & Settings (5 tools)
| 工具 | 说明 |
|---|---|
add_comment | 添加文本注释 |
add_dash | 添加装饰线 |
add_marker | 添加标记线 |
set_sheet_size | 更改图纸尺寸 |
set_visible_layers | 设置图层可见性 |
设置
需求
- Node.js v18或更高版本
- BSch3V(用于查看示意图, 下载)
安装
git clone https://github.com/YOUR_USERNAME/bsch-mcp.git
cd bsch-mcp
npm install
npm run buildClaude代码的配置
创建 .mcp.json 在您的项目中:
{
"mcpServers": {
"bsch3v": {
"command": "node",
"args": ["/path/to/bsch-mcp/dist/index.js"],
"env": {
"BSCH3V_DIR": "/path/to/BSch3V"
}
}
}
}BSCH3V_DIR 应指向BSch3V安装目录(其中 BSCH3.INI 位于)。如果省略,将自动搜索常用安装路径。
使用示例
理解现有原理图
> Read LEDPORT.CE3 and explain the circuitAI加载原理图并分析组件连接和电路行为。
编辑原理图
> Add an LED to the Q4 output of U1AI添加了必要的组件(电阻器、LED、GND符号),并用电线连接它们。
设计并创建新的原理图
> Design a 4th-order Butterworth low-pass filter with 1kHz cutoffAI设计电路,计算元件值,创建原理图,并验证网表。
从数据表创建组件
> Read the pin layout from the PIC32 datasheet and create a componentAI根据引脚定义生成原理图符号。
支持格式
| 文件 | 描述 | 编码 |
|---|---|---|
.CE3 | 原理图 | UTF-8/CP932(自动检测,写入UTF-8) |
.LB3 | 库 | UTF-8/CP932 |
BSCH3.INI | BSch3V配置 | UTF-16LE |
技术细节
- 语言:Types/Node.js
- MCP-SDK:
@modelcontextprotocol/sdk - 解析器:自定义CE3/LB3文本格式解析器和序列化器
- 网表:NL3W(BSch3V捆绑工具)逻辑移植到TypeScript
- 引脚坐标:从BSch3V C++源移植,支持旋转/镜像
许可证
ISC
链接
- BSch3V --冈田仁(Suigyodo)的电路图编辑器
- MCP(模型上下文协议) --Anthropic的AI工具集成协议
