mcpField
V
Vibe-Coding Hardware & Autonomous PCB Physical Synthesis MCP Server

Vibe-Coding Hardware & Autonomous PCB Physical Synthesis MCP Server

Remote
calligraphyeda.comOther0Updated 1d ago

About Vibe-Coding Hardware & Autonomous PCB Physical Synthesis MCP Server

vibe-hardware-mcp is a Python MCP server for local PCB file analysis, electrical calculations, DFM audits, and multilayer routing support. It is intended for hardware design workflows using KiCad and Specctra files, with local analysis tools and optional cloud routing tools.

Key features

  1. 01Parse KiCad PCB and Specctra DSN files
  2. 02Calculate impedance, delay, and current capacity
  3. 03Audit trace widths, clearances, and vias
  4. 04Route multilayer PCBs through optional co-processor tools
  5. 05List reference boards from its built-in catalog

Use cases

  1. 01Inspect PCB layers, dimensions, nets, and routing statistics
  2. 02Estimate trace impedance and current capacity
  3. 03Check board constraints against fabrication limits
  4. 04Request routing support for dense multilayer boards

MCP support

The MCP server exposes local PCB parsing, calculation, and DFM audit tools, plus optional co-processor tools for routing and fabrication-bundle generation.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://calligraphyeda.com/api/v1/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

Details

From the project README

Vibe-Coding Hardware MCP Server (vibe-hardware-mcp)

calligraphysystems/vibe-hardware-mcp MCP server

A zero-dependency Python 3 Model Context Protocol (MCP) server (calligraphy_mcp_stdio.py) for local KiCad .kicad_pcb & Specctra .dsn parsing, PCB transmission-line impedance & IPC-2152 current calculation, local Design-for-Manufacturing (DFM) rule auditing, and multi-layer PCB trace routing.


Architecture & Included MCP Tools (calligraphy_mcp_stdio.py)

This repository contains the complete, zero-dependency Python 3 MCP server implementation in calligraphy_mcp_stdio.py (containerized via Dockerfile):

1. Local Offline PCB Analysis, Impedance & DFM Tools (100% Local Execution)
Tool NameExecutionDescription
analyze_kicad_pcbLocal PythonParses .kicad_pcb S-expression files locally to extract copper layer stackup (F.Cu, B.Cu, In1.Cu..), board outline dimensions (Edge.Cuts in mm), footprint count, SMD/THT pad counts, fine-pitch (<= 0.50 mm) pad density, netlist count, and routed track/arc/via statistics.
analyze_specctra_dsnLocal PythonParses Specctra .dsn autorouter files locally to extract units, resolution, signal/power layers, board boundary dimensions, component pin count, net connectivity, and design rule clearances/widths.
calculate_pcb_trace_impedanceLocal PythonClosed-form IPC-2141A / Hammerstad-Jensen microstrip & stripline characteristic impedance ($Z_0$), edge-coupled differential pair impedance ($Z_{\text{diff}}$), propagation delay (ps/mm), and IPC-2152 DC current capacity / temperature-rise solver.
audit_pcb_dfm_rulesLocal PythonAudits .kicad_pcb and .dsn trace widths, clearances, via drill diameters, and annular rings locally against standard_2l, standard_4l, and fine_hdi fabrication limits (JLCPCB / PCBWay).
calligraphy_list_gallery_boardsLocal PythonReturns the built-in catalog of 13 verified open-source reference PCBs (100.0% routed completion, 0 native KiCad copper DRC violations).
2. Optional Cloud Co-Processor Tools (Multi-Layer 3D PCB Routing Offload)

For dense multi-layer boards that require full 3D trace routing, G1 circular arc smoothing, teardrop pad reinforcement, and turnkey Gerber/Excellon/IPC-D-356 .ZIP generation, the server also exposes optional co-processor tools (calligraphy_preflight_audit, calligraphy_compile_board, calligraphy_get_job_status, calligraphy_download_fab_bundle, calligraphy_route_pcb).


Quick Start (Local stdio & Docker)

Option 1: Run Locally via Python 3 (stdio Transport)

No external pip packages are required (uses Python 3.10+ standard library):

{
  "mcpServers": {
    "vibe-hardware-mcp": {
      "command": "python3",
      "args": ["/path/to/vibe-hardware-mcp/calligraphy_mcp_stdio.py"]
    }
  }
}
Option 2: Run via Docker (Dockerfile)
docker build -t vibe-hardware-mcp .
docker run -i --rm vibe-hardware-mcp
Option 3: Remote Streamable-HTTP Endpoint (Claude Code / Cursor)
claude mcp add --transport http calligraphy-eda https://calligraphyeda.com/api/v1/mcp

Visual Proof: 55 / 55 Verified Open-Source Benchmark Sweep (20 / 20 PCBench Tier T + 13 / 13 Tier D + 22 / 22 Multi-ECAD at 100.0% Completion & 0 Native KiCad 9 DRC)

20/20 PCBench Tier T & 55/55 Total 0-DRC Benchmark Sweep

Full 20-Board PCBench Tier T & 13-Board Tier D Scoreboard: github.com/calligraphysystems/open-pcb-routing-benchmark

Benchmark Board350-DPI Routed Copper Proof (0 DRC)3D Raytraced Assembly Render
Karabas-Nano (2-Layer, 738 Pads, 928 Connections)
100.0% Completion • 0 Unconnected • 0 KiCad DRC
Karabas-Nano 2L Copper ProofKarabas-Nano 2L 3D Render
Decelerator4030 (908 Pads, 487 Connections, Off-Axis 45° LQFP-100)
100.0% Completion • 0 Unconnected • 0 KiCad DRC
Decelerator4030 Copper ProofDecelerator4030 3D Render
Teensy MCU Breakout (High-Density Through-Hole + SMD)
100.0% Completion • 0 Unconnected • 0 KiCad DRC
Teensy MCU Breakout Copper ProofTeensy MCU Breakout 3D Render

License

MIT License — Copyright (c) 2026 Calligraphy Systems LLC (https://calligraphyeda.com).

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.