cd /news/ai-agents/show-hn-copper-kicad-mcp-to-design-p… · home › topics › ai-agents › article
[ARTICLE · art-169246] src=github.com ↗ pub= topic=ai-agents verified=true sentiment=↑ positive

Show HN: Copper-KiCad – MCP to design PCBs in KiCad better and cheaper

Clay Nicholson released Copper-KiCad 1.1.1, an open-source MCP server with 31 tools that connects AI apps to KiCad 10 so a model can design orderable circuit boards — schematic, LCSC/JLCPCB part sourcing, PCB layout and routing, ERC/DRC checks, renders and zipped JLCPCB fab files. The release ships as a Windows installer, a Claude Desktop .mcpb bundle, Claude Code plugin commands, and an `npx -y copper-kicad setup` route for Cursor, VS Code, Windsurf, Codex and Zed; Windows is tested end to end while the macOS and Linux installers are new. Six sample boards, including a 30 x 40 mm ESP32-C3 USB-C board with 15 parts and a 66 x 90 mm RP2040 macropad with 65 parts, pass KiCad 10's ERC and DRC with 0 errors and 0 unconnected items.

read4 min views1 publishedNov 13, 2026
Show HN: Copper-KiCad – MCP to design PCBs in KiCad better and cheaper
Image: Michielbdejong (auto-discovered)

Copper connects your AI app to KiCad, so it can design real boards you can order: schematic, LCSC parts, PCB layout and routing, KiCad's own ERC and DRC, renders and JLCPCB fab files.

You need KiCad 10. Then pick one:

You use Do this
Windows, any AI app Run Copper-for-KiCad-1.1.1-Setup.exe from thelatest release and tick your AI apps
Claude Desktop Double-click copper-1.1.1.mcpb from thelatest release
Claude Code The two plugin commands below
Cursor, VS Code, Windsurf, Codex, Zed and others npx -y copper-kicad setup (Node.js 18+), oradd to Cursor /install in VS Code
A terminal The one-line installer below
claude plugin marketplace add claynicholson/copper-kicad-mcp
claude plugin install copper@copper
powershell -ExecutionPolicy Bypass -c "irm https://raw.githubusercontent.com/claynicholson/copper-kicad-mcp/main/installer/install.ps1 | iex"
curl -LsSf https://raw.githubusercontent.com/claynicholson/copper-kicad-mcp/main/installer/install.sh | sh

Windows is tested end to end. The macOS and Linux routes are new: if one fails, please open an issue.

Setup finds KiCad, brings your libraries and settings along, connects your AI apps and makes a test call. It asks before each step and backs up everything it changes. To paste a config instead, Cursor, Claude Desktop and Windsurf take this entry (docs/INSTALL.md has the others):

{ "mcpServers": { "copper": { "command": "npx", "args": ["-y", "copper-kicad"] } } }

npx -y copper-kicad setup --demo runs the setup page on a throw-away folder, so you can look first. If something does not work, npx -y copper-kicad doctor (or copper doctor after the Windows or one-line install) names the fix. More in docs/INSTALL.md.

Ask for something like "Design a USB-C powered ESP32-C3 board with a status LED, 30 x 40 mm". Your AI then works through it the way an engineer would:

  • It connects pins to nets by name (U1.PA9 → USB_DP ), never by coordinates.
  • It searches LCSC/JLCPCB for real parts (Basic parts first, live stock) and imports each part's symbol and footprint, plus its 3D model when EasyEDA has one.
  • KiCad's ERC and DRC re-run after every change, and each finding comes with a ready fix.
  • It places parts and routes the board: a staged router with length matching, differential pairs and width classes, copper pours, and Freerouting.
  • It looks at its work: schematic, layer and ray-traced 3D renders go back to the model.
  • It writes Gerbers, drill, BOM and placement files for JLCPCB (or PCBWay, OSH Park, generic), zipped.

Copper has 31 tools and works with any MCP app and any model. The model is your AI app's: the Copper server never calls one.

| RP2040 Macropad: nine hot-swap keys and a knob. 66 x 90 mm, 2 layers, 65 parts. | RP2040 D-pad E-ink: D-pad, e-ink FPC and IMU. 72 x 84 mm, 4 layers, 55 parts. | Stepper G0: a 12 V stepper controller on one board. 58 x 48 mm, 2 layers, 40 parts. | | ESP32-C3 USB-C: Wi-Fi and BLE on USB-C. 30 x 40 mm, 2 layers, 15 parts. | USB-C Power Bank: an IP5306 power bank with USB-C in. 50 x 24 mm, 2 layers, 22 parts. | Phone Breathalyzer: an alcohol sensor that plugs into a phone. 22 x 48 mm, 2 layers, 30 parts. |

All six pass KiCad 10's ERC and DRC with 0 errors and 0 unconnected items. Layer art and fab files (Gerbers, drill, BOM, placement) are on coppereda.com.

Install · Configuration · Parts providers · Fab profiles · KiCad compatibility · Architecture · Changelog · Contributing · Security

Copper runs on your machine. Your designs stay there, and there is no telemetry. It goes online only to:

  • search and download parts: LCSC, JLCPCB and EasyEDA, with the jlcsearch.tscircuit.com mirror as a fallback
  • check for a newer KiCad (gitlab.com) during setup anddoctor ;COPPER_NO_UPDATE_CHECK=1 turns that off
  • download Freerouting (GitHub) and a Java runtime (Adoptium), about 120 MB once, when you ask for autorouting
  • sign in to GitHub, if you link it without the GitHub CLI

Installing fetches a little more: the npx launcher installs Pillow from PyPI if KiCad's Python lacks it, and the one-line installers fetch uv, a Python 3.12 build and Pillow.

The MCP server and CLI never call a language model. The package also holds copper_kicad.agent, a chat sidecar for a separate desktop app; nothing in the server or CLI starts it.

MIT. Copper is an independent project, not affiliated with KiCad, LCSC, JLCPCB or any other vendor named here.

── more in #ai-agents 4 stories · sorted by recency
── more on @copper 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
→ Live at https://your-agent.zahid.host ✓
Get free account → Pricing
from €0/mo · no card required
LIVE [news/show-hn-copper-kicad…] indexed:0 read:4min 2026-11-13 · —