jlceda-ai-agent
嘉立创 EDA AI エージェント
これは嘉立創 EDA 专业版向けのローカル AI 自動化フレームワークです。MCP レイヤーはプロジェクト状態を持ちません。プロセス内で WebSocket 接続と待機中のリクエストを保持するのは Python の Broker だけです。サービスを停止すると、接続、リクエスト、一時画像はすべて消えます。
アーキテクチャ
MCP Client / AI Agent
|
| Streamable HTTP: POST /mcp
v
Stateless MCP tools
|
| in-process call
v
In-memory asyncio Broker
|
| JSON over WebSocket: /ws
v
JLCEDA TypeScript Extension
|
v
JLCEDA Extension API (eda.*)スクリーンショットは WebSocket 経由で Base64 を送信しません。Extension は POST /upload/image で Blob をアップロードし、/files/{id} の一時 URL を MCP 呼び出し元に返します。画像の既定の有効期限は 5 分で、サービス終了時に直ちに削除されます。
Related MCP server: jlceda-mcp
ディレクトリ構成
mcp_server/
main.py # 独立服务入口
application.py # HTTP、WebSocket、MCP ASGI 组合
mcp_api/ # 无状态 MCP 工具定义
broker/ # 唯一有状态组件(仅内存)
protocol/ # WebSocket JSON 协议
files/ # 临时图片存储
tests/
lc_extension/
src/main.ts
src/websocket/ # 注册、心跳、RPC 响应、重连
src/commands/ # schematic、PCB、DRC、capture
src/utils/
extension.json
build/dist/ # npm run build 生成 .eextバックエンドの起動
プロジェクトではすでに mcp_server/.venv に依存関係をインストールしています:
cd mcp_server
source .venv/bin/activate
python main.pyデフォルトのアドレス:
MCP:
http://127.0.0.1:8000/mcpExtension WebSocket:
ws://127.0.0.1:8000/wsヘルスチェック:
http://127.0.0.1:8000/health画像アップロード:
http://127.0.0.1:8000/upload/image
MCP Client の自動設定
バックエンド起動後、インストールスクリプトを実行すると、本機にインストール済みの MCP Client を自動でスキャンし、jlceda-ai-agent サービスを対応するグローバル設定ファイルに書き込みます:
cd mcp_server
python install.py --installこのスクリプトは、Claude Desktop/Code、Cursor、Windsurf、Codex、Cline、Roo Code、Kilo Code、VS Code、Gemini CLI、OpenCode、Kimi Code、Zed など一般的な Client をサポートしています。検出した Client のみを自動処理し、設定内の他の MCP サービスを上書きしません。JSON または TOML を解析できない場合は、そのファイルをスキップします。
python install.py --list # 查看支持项及扫描结果
python install.py --install codex,cursor # 指定 Client
python install.py --url http://127.0.0.1:9000/mcp
python install.py --dry-run # 只预览
python install.py --uninstall # 从检测到的 Client 中移除書き込み後は、対応する MCP Client を完全に再起動する必要があります。インストールスクリプトは Client の設定のみを担うため、バックエンドサービスは次の節の説明に従って別途起動してください。
利用可能な環境変数:
名前 | デフォルト値 | 説明 |
|
| バインドアドレス |
|
| バインドポート |
|
| Extension RPC のタイムアウト秒数 |
|
| プロジェクトのオフライン判定秒数 |
|
| 一時画像の有効期限秒数 |
|
| 画像 1 枚あたりの上限 |
| 空 | リバースプロキシ後に外部へ返すベース URL |
Extension のビルドとインストール
cd lc_extension
npm install
npm run typecheck
npm run build生成されるファイル:
lc_extension/build/dist/jlceda-ai-agent_v0.1.0.eext嘉立创 EDA 专业版 V3 で「詳細 → 拡張マネージャー → インポート」からインストールします。インストール後は、その拡張機能で「外部連携を許可」を有効にする必要があります。有効にしないと、公式の SYS_WebSocket と SYS_ClientUrl API が WebSocket と画像アップロードを拒否します。
Extension は現在のプロジェクトの UUID を project_id として使用し、list_projects ではプロジェクト名も提供します。プロジェクトを切り替えると、次のハートビートで自動的に再登録されます。したがって AI はまず list_projects を呼び出し、返された project_id を後続の各 EDA ツール呼び出しに入れる必要があります。
バックエンドのアドレスを変更した場合は、次も同期してください:
lc_extension/src/config.tsMCP ツール
プロジェクトとライブラリ:
list_projects、project.get_infocomponent.search
回路図の読み取りと検査:
schematic.get_info、schematic.get_netlist、schematic.run_drc
回路図の部品とクリーンアップ:
schematic.place_component、schematic.add_componentschematic.modify_component、schematic.delete_componentsschematic.delete_wires、schematic.modify_wire、schematic.clearschematic.set_pin_no_connect
回路図のネット ネット接続と配線:
schematic.create_net_flag、schematic.create_net_portschematic.create_net_label、schematic.connect_netschematic.create_wire、schematic.connectschematic.auto_layout、schematic.auto_route
PCB:
pcb.get_info、pcb.place_component、pcb.modify_component、pcb.delete_componentspcb.create_track、pcb.modify_track、pcb.create_board_outlinepcb.create_via、pcb.modify_via、pcb.delete_routing_primitivespcb.clear_routing、pcb.route_net、pcb.auto_route、pcb.auto_layoutpcb.run_drc
スクリーンショット:
capture.schematic、capture.pcb、capture.region
推奨する AI の部品選定フローは、まず component.search を呼び出し、各候補の名前、説明、シンボル、フットプリント、3D モデル、拡張属性、および library_uuid/device_uuid を読み取ることです。AI が選定したら、この 2 つの UUID を schematic.place_component に渡して正確に配置します。検索結果はページ単位で返されます(デフォルト 20 件、最大 100 件/ページ)。has_more が true の場合、AI は次のページを要求できます。これにより、大量の候補を一度にモデルコンテキストへ入れることを避けます。schematic.add_component は「検索して最初の結果を配置する」互換用ショートカットとして残されています。
領域をまたぐ回路図の接続には、まず schematic.connect_net を使うことを推奨します。これにより、同名のネットワークフラグ、ネットワークポート、またはネットワークラベルをターゲットの各ピンに直接配置でき、ワイヤの交差による意図しない短絡が発生しません。実線のワイヤを描く必要がある場合は、schematic.connect の waypoints か schematic.create_wire の points で直交経路を明示的に指定します。既定では異なるネットワークのワイヤとの交差を検査し、WIRE_CROSSING として危険な操作を拒否します。呼び出し側が明示的に allow_crossings=true を渡した場合のみ、この保護はスキップされます。
schematic.clear は、現在の回路図ページに配置済みの部品、ネットワークフラグ、ワイヤーを削除しますが、ピン、リファレンス指定文字、ネットワークを持たないフレーム/タイトルバー図要素は保持します。必要なクリーンアップには、schematic.delete_components または schematic.delete_wires を使用します。
pcb.route_net は嘉創の単一ネットワーク自動配線を呼び出します。pcb.auto_route はネットワークのホワイトリスト、除外リスト、速度/配線率のポリシーをサポートします。回路図と PCB の DRC はどちらも詳細結果モードを使用します。一部の嘉立創 API はベータ版のままになり、EDA をアップグレードしたら TypeScript の型チェックを再実行し、実機用の回帰を行います。
検証
cd mcp_server
.venv/bin/python -m pytest -q
cd ../lc_extension
npm audit --audit-level=moderate
npm run typecheck
npm run build現在の自動検証には、プロトコルの検証、Broker RPC の往復確認、能力の検査、HTTP 画像のアップロード/読み取り、および Extension の公式 TypeScript チェックと .eext 打包が含まれています。
設計の境界
Redis、SQLite などのデータベースは一切使用しません。
MCP ツールは WebSocket、プロジェクト、EDA の状態を保持しません。
Broker はオンライン接続、ハートビート時刻、待機中のリクエストのみを保存します。
Extension は MCP を認識せず、Broker JSON RPC のみを処理します。
AI の会話や PCB/回路図データは保存しません。
画像はシステムの一時ディレクトリにのみ存在し、TTL に従ってクリーンアップされます。
嘉立创公式リファレンス:扩展 API 入门指南、调用扩展 API、SYS_WebSocket。
Related MCP Connectors
OCR, transcription, file extraction, and image generation for AI agents via MCP.
MCP server giving AI agents one-connection access to China A-share market intelligence: financials,
Connect any AI agent to 1,000+ apps and 27,000+ actions through one remote MCP server (OAuth).
Build and run AI workflows, agents, data tables and 1000+ API integrations from any MCP client.
Related MCP Servers
- AlicenseCqualityDmaintenanceEnables AI coding assistants to control JLCPCB EDA for PCB automation, exposing 39 tools for component manipulation, routing, copper pour, DRC, and more. Includes a built-in PCB agent for orchestrating multi-step tasks.59270MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to interact with 嘉立创 EDA for PCB design tasks including project management, component libraries, rule checking, and manufacturing constraints.14 npm-
- FlicenseNot gradedqualityFmaintenanceEnables AI assistants to interact with JLCEDA EDA for schematic/PCB design operations like component placement, wiring, and circuit analysis through natural language.-
- FlicenseBqualityCmaintenanceConnects Jia Li Chuang EDA / EasyEDA Pro schematics to MCP clients, enabling AI-driven schematic editing, reading, and analysis.19-