Server data from the Official MCP Registry
MCP server for EasyEDA Pro: PCB design, BOM sourcing, and AI-assisted hardware review.
MCP server for EasyEDA Pro: PCB design, BOM sourcing, and AI-assisted hardware review.
Valid MCP server (1 strong, 1 medium validity signals). No known CVEs in dependencies. Imported from the Official MCP Registry. 1 finding(s) downgraded by scanner intelligence.
5 files analyzed · 1 issue found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Set these up before or after installing:
Environment variable: NODE_ENV
Environment variable: LOG_LEVEL
Environment variable: TOOL_PROFILE
Environment variable: TRANSPORT
Environment variable: HTTP_HOST
Environment variable: HTTP_PORT
Environment variable: BRIDGE_HOST
Environment variable: BRIDGE_PORT
Environment variable: BRIDGE_TIMEOUT_MS
Environment variable: DATA_DIR
Environment variable: JLCPCB_MODE
Environment variable: JLCPCB_CLIENT_ID
Environment variable: JLCPCB_CLIENT_SECRET
Environment variable: MOUSER_API_KEY
Environment variable: DIGIKEY_CLIENT_ID
Environment variable: DIGIKEY_CLIENT_SECRET
Environment variable: LCSC_API_KEY
Environment variable: AI_API_KEY
Environment variable: OAUTH_ENABLED
Environment variable: OTEL_ENABLED
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-oaslananka-easyeda-mcp-pro": {
"env": {
"DATA_DIR": "your-data-dir-here",
"NODE_ENV": "your-node-env-here",
"HTTP_HOST": "your-http-host-here",
"HTTP_PORT": "your-http-port-here",
"LOG_LEVEL": "your-log-level-here",
"TRANSPORT": "your-transport-here",
"AI_API_KEY": "your-ai-api-key-here",
"BRIDGE_HOST": "your-bridge-host-here",
"BRIDGE_PORT": "your-bridge-port-here",
"JLCPCB_MODE": "your-jlcpcb-mode-here",
"LCSC_API_KEY": "your-lcsc-api-key-here",
"OTEL_ENABLED": "your-otel-enabled-here",
"TOOL_PROFILE": "your-tool-profile-here",
"OAUTH_ENABLED": "your-oauth-enabled-here",
"MOUSER_API_KEY": "your-mouser-api-key-here",
"JLCPCB_CLIENT_ID": "your-jlcpcb-client-id-here",
"BRIDGE_TIMEOUT_MS": "your-bridge-timeout-ms-here",
"DIGIKEY_CLIENT_ID": "your-digikey-client-id-here",
"JLCPCB_CLIENT_SECRET": "your-jlcpcb-client-secret-here",
"DIGIKEY_CLIENT_SECRET": "your-digikey-client-secret-here"
},
"args": [
"-y",
"easyeda-mcp-pro"
],
"command": "npx"
}
}
}From the project's GitHub README.
Production-grade MCP server for EasyEDA Pro: safe PCB design inspection, BOM sourcing, manufacturing export, and AI-assisted hardware review.
npx easyeda-mcp-pro
Point your MCP client (Claude, Cursor, etc.) to the stdio transport. Create a .env file to configure suppliers and AI providers (see Configuration).
easyeda-mcp-pro is a Model Context Protocol (MCP) server that bridges AI assistants with hardware design workflows in EasyEDA Pro. It exposes 25 MCP tools for schematic inspection, BOM management, design rule checks, PCB board analysis, fabrication exports, and supplier integration.
The server connects to EasyEDA Pro via a WebSocket bridge extension, enabling real-time access to open project data. It integrates with JLCPCB, LCSC, Mouser, and DigiKey for BOM sourcing and pricing.
| Area | What you can do |
|---|---|
| Schematic | List nets and components, get net details |
| BOM | Generate, validate, export, and source bill of materials |
| DRC/ERC | Run design rule and electrical rule checks |
| Board | Inspect layers, stackup, dimensions, features |
| Export | Export Gerbers, pick-and-place, PDF, netlist |
| Diagnostics | Health check, bridge status, capabilities, self-test |
npm install -g easyeda-mcp-pro
easyeda-mcp-pro
npx easyeda-mcp-pro
git clone https://github.com/oaslananka/easyeda-mcp-pro.git
cd easyeda-mcp-pro
cp .env.example .env
pnpm install
pnpm build
pnpm start
Copy .env.example to .env and edit. All variables have safe defaults — only configure what you need.
| Variable | Default | Description |
|---|---|---|
NODE_ENV | development | Set to production in production |
LOG_LEVEL | info | Pino log level: trace, debug, info, warn, error, fatal, silent |
TOOL_PROFILE | core | Tool set: core, pro, full, dev, experimental |
TRANSPORT | stdio | Server transport: stdio (default) or http |
| Variable | Default | Description |
|---|---|---|
BRIDGE_HOST | 127.0.0.1 | Bridge WebSocket host |
BRIDGE_PORT | 18601 | Bridge port |
BRIDGE_TIMEOUT_MS | 15000 | Bridge call timeout (ms) |
| Variable | Default | Description |
|---|---|---|
DATA_DIR | .easyeda-mcp-pro | Data directory (cache, database, artifacts) |
Enable suppliers by setting their credentials. All suppliers are disabled by default.
JLCPCB_MODE=approved_api + client ID/secretJLCSEARCH_ENABLED=true (default, no key required for basic search)MOUSER_ENABLED=true + API keyDIGIKEY_ENABLED=true + OAuth2 client ID/secretConfigure an AI provider for LLM-assisted design review:
| Variable | Default | Description |
|---|---|---|
AI_PROVIDER | none | anthropic, openai, openrouter, or local |
AI_MODEL | '' | Model name |
When using TRANSPORT=http:
| Variable | Default | Description |
|---|---|---|
HTTP_HOST | 127.0.0.1 | Bind address (use 0.0.0.0 with caution) |
HTTP_PORT | 3000 | Port |
CORS_ORIGIN | '' | Allowed CORS origin |
For production HTTP deployments, configure OAuth (OAUTH_ENABLED=true + issuer/JWKS).
See .env.example for the complete list of 42 configuration variables.
All 25 tools are available via the MCP server. Tools are filtered by the active TOOL_PROFILE.
| Tool | Description |
|---|---|
easyeda_health_check | Server health, runtime version, profile, bridge state |
easyeda_bridge_status | Bridge connection status, version, capabilities |
easyeda_get_capabilities | Available profiles, features, supported operations |
easyeda_get_server_config | Safe/redacted server configuration |
easyeda_get_tool_profiles | Available tool profiles |
easyeda_get_feature_flags | Current feature flags |
easyeda_run_self_test | Internal self-test |
| Tool | Description |
|---|---|
easyeda_schematic_nets | List all nets with node connections |
easyeda_schematic_components | List components with ref, value, footprint, LCSC, datasheet |
easyeda_schematic_net_detail | Full detail for a specific net |
| Tool | Description |
|---|---|
easyeda_bom_generate | Generate bill of materials |
easyeda_bom_validate | Validate BOM against LCSC inventory |
easyeda_bom_export | Export BOM to file |
easyeda_bom_sourcing | Pricing and availability from suppliers |
| Tool | Description |
|---|---|
easyeda_drc_run | Design rule check for PCB |
easyeda_erc_run | Electrical rule check for schematic |
easyeda_rule_check_summary | Combined DRC + ERC summary |
| Tool | Description |
|---|---|
easyeda_board_layers | List PCB layers with type, color, visibility |
easyeda_board_stackup | Layer stackup with thickness, material |
easyeda_board_dimensions | Board outline, shape, mounting holes |
easyeda_board_features | Counts of vias, tracks, zones, pads, components |
| Tool | Profile | Description |
|---|---|---|
easyeda_export_gerbers | core | Export Gerber files for fabrication |
easyeda_export_pick_place | pro | Export pick-and-place centroid file |
easyeda_export_pdf | pro | Export schematic/board to PDF |
easyeda_export_netlist | pro | Export netlist |
┌─────────────────┐ WebSocket ┌─────────────────────┐
│ AI Assistant │ ◄──── MCP ──────► │ easyeda-mcp-pro │
│ (Claude, etc.) │ Protocol │ (MCP Server) │
└─────────────────┘ │ │
│ ┌───────────────┐ │
┌─────────────────┐ WebSocket │ │ BridgeManager │──┼──► EasyEDA Pro
│ EasyEDA Pro │ ◄── Bridge ──────►│ │ (WS Client) │ │ (Plugin)
│ (via Plugin) │ Protocol │ └───────────────┘ │
└─────────────────┘ │ ┌───────────────┐ │
│ │ ToolRegistry │ │
│ │ (25 tools) │ │
│ └───────────────┘ │
│ ┌───────────────┐ │
│ │ Storage │──┼──► SQLite
│ │ (Cache/DB) │ │
│ └───────────────┘ │
│ ┌───────────────┐ │
│ │ Vendors │──┼──► JLCPCB/LCSC/
│ │ (API Clients) │ │ Mouser/DigiKey
│ └───────────────┘ │
└─────────────────────┘
/healthz, /readyz, /mcp endpoints, CORS, and optional OAuth — suitable for remote deployments# Setup
pnpm install
cp .env.example .env
# Code quality
pnpm format:check # Prettier
pnpm typecheck # TypeScript
pnpm lint # ESLint
# Test
pnpm test # Vitest (73 tests across 12 files)
pnpm test:coverage # With coverage report
# Build & run
pnpm build # tsc -> dist/
pnpm dev # Hot-reload dev mode
pnpm start # Run compiled build
# MCP Inspector (debug UI)
pnpm inspector
src/
├── index.ts # Entry point
├── bridge/ # EasyEDA Pro WebSocket bridge protocol
│ ├── manager.ts, client.ts, extension.ts, protocol.ts, types.ts
├── config/ # Environment configuration
│ ├── env.ts, profiles.ts, feature-flags.ts
├── schemas/ # Shared Zod schemas
├── server/ # MCP server core
│ ├── factory.ts, errors.ts
│ └── transports/
│ └── http.ts # HTTP/Streamable HTTP transport
├── storage/ # SQLite storage (cache, artifacts)
├── tools/ # 25 MCP tool definitions (6 groups)
│ ├── registry.ts, types.ts
│ ├── L0_diagnostics.ts, L1_schematic.ts, L1_bom.ts
│ ├── L1_drc_erc.ts, L1_board.ts, L1_export.ts
└── vendors/ # Supplier API clients
├── lcsc/, jlcpcb/, mouser/, digikey/
main branch requires review and up-to-date status checksBe the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.