by oaslananka
Automates KiCad schematic capture, PCB layout, ERC/DRC checks, DFM analysis, BOM generation, and manufacturing export through AI agents by exposing a Model Context Protocol server.
KiCad MCP Pro provides a Model Context Protocol (MCP) server that lets AI agents such as Claude, Cursor, or GitHub Copilot drive KiCad’s design workflow. It bridges AI‑generated commands with KiCad’s native engines, covering schematic creation, PCB routing, rule checks, design‑for‑manufacturing evaluation, and export of fabrication files.
npx -y kicad-mcp-pro.npx -y kicad-mcp-pro --transport stdio
# or HTTP streamable interface
npx -y kicad-mcp-pro --transport streamable-http --host 127.0.0.1 --port 3334
tools/list, kicad_get_project_info, or any of the skill‑specific commands defined under skills/.stdio for local piping and Streamable HTTP for networked clients.kicad-mcp-pro), npm wrapper, and Tauri desktop GUI.Q: Which transports are supported?
A: stdio and Streamable HTTP. HTTP can be made stateful with KICAD_MCP_STATEFUL_HTTP=1.
Q: Do I need a KiCad license? A: KiCad is free and open source; the server interacts with the installed KiCad binaries.
Q: Is this a replacement for formal sign‑off? A: No. It provides fast first‑pass estimates (≈5‑10 % accuracy) and should be followed by qualified human review before fabrication.
Q: How do I enable telemetry?
A: Telemetry is disabled by default. Enable OpenTelemetry by editing docs/configuration.md and setting the appropriate environment variables.
Q: Can I run the server inside a container?
A: Yes. The server contract is defined in server.json; you can containerise the Python package or use the npm wrapper inside a Docker image.
Q: Where can I find the full tool reference?
A: See docs/tools-reference.generated.md for a catalog of all exposed MCP tools.
KiCad MCP Pro is a Model Context Protocol server for KiCad EDA workflows. It exposes tools, resources, and prompts for schematic, PCB, validation, DFM, and manufacturing export automation.
Telemetry and error reporting are disabled by default. Opt-in OpenTelemetry
configuration is documented in
docs/configuration.md, and privacy rules
are documented in docs/privacy.md.
KiCad MCP Pro is a professional first-pass design and review assistant, not an automated sign-off authority. ERC/DRC and the export pipeline drive KiCad's own engines. The signal-integrity, power-integrity, EMC, and thermal tools are first-order, closed-form estimates (typically ~5–10% accuracy) — fast first-pass review, not a substitute for a 2D/3D field solver, EM/FEA simulation, or formal sign-off. Live component sourcing uses the JLCPCB public catalog by default; Nexar, DigiKey, and Mouser are available only when their API credentials are configured. What fraction of KiCad's programmatic surface the server drives is tracked openly in the capability-parity matrix.
| Field | Value |
|---|---|
| Canonical repository | oaslananka/kicad-mcp |
| PyPI package | kicad-mcp-pro |
| npm wrapper | kicad-mcp-pro |
| MCP Registry name | io.github.oaslananka/kicad-mcp-pro |
| Version | 3.20.0 |
| OSS maturity report | docs/repo-maturity-report.md |
| OpenSSF evidence | docs/openssf-evidence.md |
Download the latest installer from the
GitHub releases page.
The Tauri desktop app starts the Python dashboard server automatically and opens
the GUI at http://127.0.0.1:3334/ui.
uvx kicad-mcp-pro init
uvx kicad-mcp-pro tray
uvx kicad-mcp-pro dashboard --open
uvx kicad-mcp-pro --transport streamable-http --port 3334
uvx kicad-mcp-pro dashboard --host 127.0.0.1 --port 3334 --open
# http://127.0.0.1:3334/ui
The documentation is organized from setup to operation:
The kicad_capability_parity() tool reports, per workflow domain, what fraction of
KiCad's programmatically reachable surface this server can drive (currently 76.3%),
keeping genuine gaps distinct from gui-only-no-api items that KiCad exposes no
headless API for.
The published documentation site is available at https://oaslananka.github.io/kicad-mcp/.
KiCad MCP Pro supports stdio and Streamable HTTP. Streamable HTTP is served at
/mcp by default and can be moved with KICAD_MCP_MOUNT_PATH.
uvx kicad-mcp-pro --transport streamable-http --host 127.0.0.1 --port 3334
Streamable HTTP clients must send:
Accept: application/json, text/event-streamContent-Type: application/jsonMCP-Protocol-Version: 2025-11-25 after initializationMCP-Session-Id on follow-up requests when KICAD_MCP_STATEFUL_HTTP=1By default Streamable HTTP is stateless, so ChatGPT-style connectors can
initialize and call tools/list without a session-header injection proxy. Set
KICAD_MCP_STATEFUL_HTTP=1 to require session IDs after initialize.
The deprecated HTTP+SSE fallback routes are disabled by default. Set
KICAD_MCP_LEGACY_SSE=1 only for older clients that cannot use Streamable HTTP.
corepack pnpm run dev:doctor -- --ci
uvx kicad-mcp-pro --help
npx kicad-mcp-pro --help
For source checkouts, corepack pnpm run dev:doctor validates Node, pnpm,
Python, uv, MCP server CLI startup/version reporting, fixture corpus, protocol
schemas, common development ports, and optional Cloudflare tunnel tooling.
If repository commands fail with a uv required-version mismatch before Python
starts, run kicad-mcp-pro doctor --json and check the uv_version result. The
checkout's uv.toml pins the supported uv release; switch to that version (for
example uv self update 0.10.8 when required) and rerun uv sync --all-extras --frozen.
The canonical metadata source of truth is server.json, which defines the MCP server contract. It is synchronized with pyproject.toml and verified in CI via pnpm run metadata:check.
Use kicad-mcp-pro --help to inspect CLI commands and
docs/client-configuration.md to configure an
MCP client. The generated tool catalog is available in
docs/tools-reference.generated.md.
This repository owns the product-level agent plugin and KiCad-specific skills for
KiCad MCP Pro. The central agent-tools
repository should catalog this plugin, but the manifest and workflow instructions live
here so they stay synchronized with the actual MCP server tools.
| File | Purpose |
|---|---|
.claude-plugin/plugin.json |
Product-level plugin manifest for compatible agent runtimes and marketplace catalogs. |
.mcp.json |
Claude Code project-local MCP server configuration. |
.codex/config.example.toml |
Codex CLI MCP configuration example. |
.vscode/mcp.example.json |
VS Code / GitHub Copilot workspace MCP configuration example. |
opencode.example.jsonc |
OpenCode project MCP configuration example. |
.opencode/skills/ |
OpenCode-native mirrored skill definitions. |
docs/agent-runtime-config.md |
Agent runtime setup and validation matrix. |
skills/kicad-design-review/SKILL.md |
Comprehensive KiCad design review skill. |
skills/pcb-design/SKILL.md |
PCB design, layout inspection, placement, routing, stackup, and board-quality workflow. |
skills/drc-check/SKILL.md |
ERC/DRC execution, triage, waiver review, and revalidation workflow. |
skills/fabrication-output/SKILL.md |
Manufacturing export, DFM, release evidence, and fabrication-package workflow. |
skills/schematic-review/SKILL.md |
Schematic inspection, ERC, connectivity, power, symbol, and readability workflow. |
KiCad MCP Pro can be launched with the published Python package, npm wrapper, or the
container metadata declared in server.json. Common local starts are:
uvx kicad-mcp-pro --transport stdio
uvx kicad-mcp-pro --transport streamable-http --host 127.0.0.1 --port 3334
npx kicad-mcp-pro --help
For source checkouts, run the normal repository validation path before publishing plugin changes:
corepack pnpm run metadata:check
python3 -m json.tool .claude-plugin/plugin.json >/dev/null
Before listing this plugin as active from agent-tools, verify at least one compatible
agent runtime can:
.claude-plugin/plugin.json.kicad-mcp-pro over stdio or Streamable HTTP.kicad_get_server_info or kicad_get_project_info.skills/ and follow the workflow without referencing missing tools.KiCad MCP Pro is an engineering assistant, not an autonomous manufacturing sign-off authority. Generated PCB and fabrication outputs require qualified human review before fabrication or assembly.
New contributors should start with ARCHITECTURE.md, which maps
the five layers (transport → MCP protocol → orchestration → KiCad adapter seam →
pure domain) and shows exactly how to add a new tool. The runtime model and
quality-gate stack are documented in
docs/development/architecture.md.
The project uses a Taskfile.yml for common development commands. After
cloning the repository:
task install # Install all dependencies (pnpm + uv)
task verify # Run the local quality gate: lint → format → typecheck → test → build
task test # Run unit tests only
task lint # Run lint and metadata checks
task format # Auto-format the codebase
task typecheck # Run strict static type checking
task build # Build release artifacts
task ci # Run the local equivalent of the full CI pipeline
task hooks # Install local git hooks
All changes must pass task verify before opening a pull request.
Read CONTRIBUTING.md before opening a pull request. All
changes must pass the repository's format, lint, type-check, test, workflow,
security, and package metadata gates.
KiCad MCP Pro is available under the MIT License.
Please log in to share your review and rating for this MCP.
Explore related MCPs that share similar capabilities and solve comparable challenges
by activepieces
A self‑hosted, open‑source platform that provides a no‑code builder for creating, versioning, and running AI‑driven automation workflows. Pieces are TypeScript‑based plugins that become MCP servers, allowing direct consumption by large language models.
by Skyvern-AI
Automates browser‑based workflows by leveraging large language models and computer‑vision techniques, turning natural‑language prompts into fully functional web interactions without writing custom scripts.
by ahujasid
Enables Claude AI to control Blender for prompt‑assisted 3D modeling, scene creation, and manipulation via a socket‑based Model Context Protocol server.
by PipedreamHQ
Connect APIs quickly with a free, hosted integration platform that enables event‑driven automations across 1,000+ services and supports custom code in Node.js, Python, Go, or Bash.
by elie222
Organizes email inbox, drafts replies in the user's tone, tracks follow‑ups, and provides analytics to achieve inbox zero quickly.
by grab
Enables Cursor AI to read and programmatically modify Figma designs through a Model Context Protocol integration.
by CursorTouch
Enables AI agents to control the Windows operating system, performing file navigation, application launching, UI interaction, QA testing, and other automation tasks through a lightweight server.
by ahujasid
Enables Claude AI to control Ableton Live in real time, allowing AI‑driven creation, editing, and playback of tracks, clips, instruments, and effects through a socket‑based server.
by leonardsellem
Provides tools and resources to enable AI assistants to manage and execute n8n workflows via natural language commands.
{
"mcpServers": {
"kiCadMcpPro": {
"command": "npx",
"args": [
"-y",
"kicad-mcp-pro",
"--transport",
"stdio"
],
"env": {}
}
}
}claude mcp add kiCadMcpPro npx -y kicad-mcp-pro --transport stdio