Skip to main content
Glama
anwarminarso

a2n-easyeda-mcp

by anwarminarso

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
A2N_EDA_WS_PORTNoWebSocket port for the EasyEDA extension connection. Default is 8788.8788

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
eda_statusA

Get a2n.EasyEDA MCP connection status, the active mode (online/offline/hybrid), and current project info.

eda_set_modeA

Set the component sourcing mode. "offline" = local/system libraries only. "online" = EasyEDA backend search. "hybrid" = local first then online.

eda_get_project_infoA

Read the current EasyEDA project tree (boards, schematics, pages with UUIDs) and metadata.

eda_open_documentA

Open a document (schematic, schematic page, PCB) by its UUID from the project tree.

eda_callA

Advanced: call any low-level EasyEDA handler method directly by name with a params object. Use when no dedicated tool exists. Method names follow the "domain.action.target" convention (e.g. "pcb.create.via", "sch.wire.create", "lib.device.search").

eda_execA

Dev/advanced: invoke ANY eda.* API by dotted path without changing the extension. e.g. path="sch_ManufactureData.getExportDocumentFile", args=["sch","PNG",{},"Current Schematic Page"]. New capabilities can be prototyped Node-side only (no extension reinstall). File results return as base64; image files are shown directly.

eda_guideA

Read this FIRST. Conventions and recommended workflow for driving EasyEDA via this MCP: coordinate system, net-by-name wiring, schematic vs PCB context, and the place -> wire -> verify loop.

sch_get_all_componentsA

Get all schematic components (parts, net flags, net ports, etc.) with positions, rotation, designators.

sch_get_component_pinsB

Get all pins of a schematic component by its primitive ID.

sch_get_all_wiresA

Get all wires in the schematic, optionally filtered by net name(s).

sch_get_netlistB

Get the schematic netlist in the specified format.

sch_read_circuitB

Read the current schematic as a structured circuit (components + pins + resolved net per pin). Best high-level read.

sch_validate_netlistA

Validate schematic connectivity from the resolved circuit: reports floating (unconnected) pins, single-pin nets (likely dangling), and a per-net summary. Read-only diagnostic that complements the place -> wire -> verify loop. No EasyEDA write is performed.

sch_get_selectedA

Get all currently selected primitives in the schematic editor.

sch_run_drcC

Run Design Rule Check (DRC) on the schematic.

sch_export_imageA

Export the FULL schematic sheet as a PNG (whole A4 page: border, title block, and every component) — reproducing EasyEDA's "Export -> PNG" with true colors, via Chrome DevTools Protocol. Not a viewport screenshot: it reads the schematic SVG, reframes to the full content, and rasterizes. Requires EasyEDA Pro launched with remote debugging (run-easyeda-debug.bat / README) and an open schematic page. The image is returned inline; pass "fileName" to ALSO save it to disk.

sch_search_componentA

Search for a component using EasyEDA libraries. In offline mode searches local/system libraries; in online/hybrid mode also queries the EasyEDA backend. Returns device uuid + libraryUuid for placement.

sch_place_componentA

Place a schematic component from a library at a position. Provide device uuid + libraryUuid (from sch_search_component). Use libraryUuid "lcsc" with a device uuid for online placement.

sch_create_wireB

Create a wire on the schematic. "line" is a flat coordinate array [x1,y1,x2,y2,...].

sch_create_netflagC

Create a net flag (e.g. VCC/GND short symbol) attached to a net at a position.

sch_delete_componentsB

Delete one or more schematic components by primitive ID(s).

sch_assemble_circuitA

High-level: place a list of components and auto-wire them locally by net name. No external server, no AI. Components are placed at free positions; pins sharing a net are wired, and VCC/GND/net-port symbols are auto-inserted. Ideal for generating a schematic from a parts+nets list.

sch_create_schematicC

Create a new schematic in the current project. Returns the first page uuid.

sch_create_pageB

Create a new page under an existing schematic.

sch_saveC

Save the current schematic document.

sch_checkpoint_saveB

Save a checkpoint of the current document for later restore.

sch_checkpoint_listB

List saved checkpoints.

sch_checkpoint_restoreB

Restore a checkpoint by id (or the latest if omitted).

pcb_get_all_componentsA

Get all PCB components, optionally filtered by layer.

pcb_get_component_pinsC

Get all pads/pins of a PCB component by primitive ID.

pcb_get_all_netsA

Get all net names on the PCB.

pcb_get_net_lengthB

Get total routed length of a net.

pcb_get_all_layersA

Get all PCB layers and their properties.

pcb_get_selectedB

Get all currently selected PCB primitives.

pcb_create_trackC

Create a single track segment between two points on a layer/net.

pcb_create_viaC

Create a via at a position.

pcb_create_pourC

Create a copper pour region on a layer/net.

pcb_move_componentC

Move/rotate a PCB component, optionally flip layer, set lock or designator.

pcb_delete_primitivesC

Delete one or more PCB primitives by type and IDs.

pcb_run_drcC

Run Design Rule Check on the PCB.

pcb_set_copper_layersC

Set the number of copper layers (e.g. 2, 4, 6).

pcb_highlight_netC

Highlight a net on the PCB.

pcb_export_gerberC

Export Gerber files (returned as base64).

pcb_export_bomC

Export BOM file (returned as base64).

pcb_export_pick_placeB

Export pick-and-place (centroid) file for assembly (returned as base64). Requires a PCB document active.

pcb_export_pdfC

Export the PCB layout to PDF (returned as base64). Requires a PCB document active.

pcb_export_3dB

Export a 3D model file of the PCB (e.g. STEP). Returned as base64. Requires a PCB document active.

pcb_get_board_outlineA

Get the PCB board outline / dimensions (shape, width, height). Requires a PCB document to be active.

pcb_saveC

Save the current PCB document.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/anwarminarso/a2n-easyeda-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server