Get the FREE Ultimate OpenClaw Setup Guide →

kicad

🔌 MCP server for KiCad EDA - Analyze schematics & PCBs, trace pin-level connections, automate design editing. Works with any MCP-compatible AI tool

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio seeed-studio-kicad-mcp-server python -m kicad_mcp_server \
  --env PYTHONPATH="/path/to/kicad-mcp-server/src"

How to use

The KiCad MCP Server provides a set of tools for analyzing KiCad projects (schematics, PCBs, and netlists) and, in experimental form, editing schematics and PCBs. It exposes 6 core capabilities organized into three categories: analysis, editing, and project management. You can use the server to inspect schematic components and nets, verify PCB footprints and statistics, and trace pin-level connections using a parsed KiCad XML netlist. For workflows requiring design verification, rely on the netlist-based analysis to achieve precise, bidirectional component-to-net tracing, then compare results with PCB analysis for consistency. The editing tools are labeled experimental and should be used primarily for validation or automated testing rather than production design, with KiCad GUI still recommended for actual editing.

To begin, configure your MCP client (e.g., Claude Desktop or your own client) to connect to the kicad MCP server using the Python runtime as described in the installation and configuration sections. Once connected, you can invoke: list_schematic_components, list_schematic_nets, get_schematic_info, search_symbols, get_symbol_details, analyze_functional_blocks; list_pcb_footprints, get_pcb_statistics, find_tracks_by_net, get_footprint_by_reference, analyze_pcb_nets; trace_netlist_connection, get_netlist_nets, get_netlist_components, generate_netlist; and the editing actions like create_kicad_project, add_component_from_library, add_wire, add_global_label, add_label for schematics, as well as setup_pcb_layout, add_footprint, add_track, add_zone, export_gerber for PCBs, plus project management tools like copy_kicad_project.

How to install

Prerequisites:

  • Python 3.10 or higher
  • KiCad 9.0 or later
  • Git

Step-by-step installation:

  1. Clone the repository
# Clone repository
git clone https://github.com/LynnL4/kicad-mcp-server.git
cd kicad-mcp-server
  1. Install Python dependencies
pip install -r requirements.txt
  1. (Optional) Create a virtual environment
python -m venv venv
source venv/bin/activate  # on macOS/Linux
venv\Scripts\activate     # on Windows
pip install -r requirements.txt
  1. Run the MCP server (development mode)
python -m kicad_mcp_server
  1. Verify server is reachable via your MCP client (e.g., Claude Desktop) by pointing to the configured command and working directory as described in the configuration section.

Additional notes

Tips and common considerations:

  • The editing tools are experimental; use KiCad GUI for actual schematic and PCB editing until further stabilization.
  • Ensure KiCad 9.0 compatibility: the server relies on KiCad’s official APIs and file formats.
  • When configuring Claude Desktop, set PYTHONPATH to the server's src directory to ensure imports resolve correctly.
  • Netlist-based tracing provides the most accurate pin-level connections; export netlists from KiCad (e.g., kicad-cli sch export netlist --format kicadxml) before tracing.
  • If you encounter path or environment issues, verify that the cwd in your MCP client matches the server repository root and that required environment variables are set.
  • For production deployments, consider containerizing the server with a stable Python environment and pinning KiCad/Dependencies to compatible versions.

Related MCP Servers

Sponsor this space

Reach thousands of developers ↗