EasyEDA MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| EASYEDA_COMPAT | No | Set to '1' to enable limited legacy name compatibility. | 0 |
| EASYEDA_STATE_DIR | No | Absolute path to the shared state directory. All clients should set this to the same path to share operation records and cross-process window locking. | |
| EASYEDA_ALLOW_RAW_CODE | No | Set to '1' to enable raw code execution. This is a standalone debug switch and disables guarantees about automatic routing prohibition. | 0 |
| EASYEDA_EXPERIMENTAL_ROUTING | No | Set to '1' to enable experimentally validated single-net candidate path queries. Default off. | 0 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| eda_sessionB | Inspect bridge, windows, active project, document and boards. Use returned target unchanged on subsequent tools. |
| eda_workflowA | Read the workflow for the current design stage, including placement, image feedback and recovery. |
| eda_open_documentA | Activate an explicit document in the same project and return its new target. Does not infer documents from tab titles. |
| lib_search_devicesA | Search official library devices by keyword or LCSC part number. Returns real bindings; prices and stock are not inferred. |
| sch_get_stateA | Read components, footprint bindings, actual world pin coordinates and wires in mm, including rotated/mirrored pins. |
| pcb_get_stateB | Read real pads, tracks, vias, components and outline in mm, with revision and explicit unsupported geometry. |
| pcb_get_routing_contextA | Read net endpoints, copper, obstacles, outline and connectivity before the MODEL chooses a path. No autorouting. |
| pcb_check_routeA | Check explicit MODEL-supplied path against copper, pad shapes, board edges and layer transitions. Read-only; never plans or applies routes. |
| pcb_apply_routeA | Apply MODEL-supplied path after fresh geometry/revision checks. Read back actual IDs and connectivity, then DRC. No autorouter. |
| eda_run_drcB | Run native DRC; preserves boolean-only results and never invents issue details. |
| eda_screenshotA | Capture target image and optional local region in mm. Returns native MCP image and pixel validity evidence; inspect it visually. |
| eda_find_toolsA | Search available tools by name, category or purpose. Returns typed tool names; inspect eda_tool_schema before invoking. |
| eda_tool_schemaA | Return complete JSON Schema, purpose and read/write semantics for one tool. |
| eda_invokeB | Execute a discovered tool using its complete schema. Same validation, policy and write checks as direct calls. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| easyeda_design_stage | Apply a workflow to the supplied design constraints. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| workflow-start | Design workflow: start |
| workflow-schematic | Design workflow: schematic |
| workflow-placement | Design workflow: placement |
| workflow-routing | Design workflow: routing |
| workflow-review | Design workflow: review |
| workflow-recovery | Design workflow: recovery |
TDQS
Scored across 14 tools
Most tools target clearly distinct actions: session/workflow, state reads, routing, DRC, screenshots, library search, and tool discovery. A couple of pairs could be confused, notably pcb_get_state vs pcb_get_routing_context and pcb_apply_route's DRC step vs eda_run_drc, but the descriptions are specific enough to separate them.
Names are consistently snake_case and mostly readable, but they mix verb_noun forms (eda_open_document, pcb_check_route, eda_find_tools) with noun-only forms (eda_session, eda_workflow, eda_screenshot, eda_tool_schema). The domain prefixes are also inconsistent across eda_, sch_, pcb_, and lib_, creating a mixed convention.
14 tools is within the typical well-scoped range and covers session management, schematic/PCB reads, routing, DRC, visualization, library search, and dynamic tool discovery. The meta-tool triad of eda_find_tools, eda_tool_schema, and eda_invoke adds some apparent overlap with direct calls, but each still has a distinct role.
The set covers reading design state, routing, DRC, and image feedback well, but it lacks obvious design-editing operations such as component placement, schematic/PCB edits, and route removal or rework. The workflow and screenshot tools help guide an agent, but full edit cycles are not supported by the static tool surface.