KiCad MCP Server
Allows inspection, editing, analysis, and rendering of PCB layouts using KiCad's Python API, including tools for managing footprints, tracks, vias, zones, nets, text, shapes, dimensions, groups, selection, appearance, exports, screenshots, and CLI operations.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@KiCad MCP ServerShow me the current board stackup"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
KiCad MCP Server ππ
An implementation of the Model Context Protocol (MCP) server for KiCad 9.0+, enabling Large Language Models (LLMs) like Claude to inspect, edit, analyze, and render PCB layouts in real-time.
It leverages the official kicad-python API to communicate with running KiCad instances over local Unix domain sockets or Windows named pipes.
π Key Features
This server exposes 14 specialized modules providing comprehensive control over the board layout:
Module | Description | Key Tools |
ποΈ Board | Inspect/update PCB configurations, units, and canvas settings |
|
π§© Footprints | Manage component properties, placements, and pads |
|
β‘ Tracks & Vias | List, route, resize, and remove traces and vias |
|
πΊοΈ Zones | Control copper pours, fill/unfill, and rule boundaries |
|
π Nets | Import netlists, manage classes, and trace connectivity |
|
π€ Text | Add and style free-standing board text labels and textboxes |
|
π¨ Shapes | Draw graphic segments, rects, circles, and polygons on user layers |
|
π Dimensions | Place precise dimension and measurement markings |
|
π₯ Groups | Read structural component groupings (KiCad 10+) |
|
π― Selection | Read active selection, select footprints, and invoke actions |
|
ποΈ Appearance | Adjust layer visibility, contrast modes, ratsnest lines, and flip view |
|
π¦ Exports | Export manufacturing files (Gerbers, drills, position, ODB++, PDF, STEP) |
|
πΈ Screenshots | Render visual PNG screenshots of the board or specific selection |
|
π» CLI Wrapper | Headless CLI automation for schematics, ERC, DRC, and more |
|
Related MCP server: kicad-mcp
π Prerequisites
KiCad 9.0 or higher must be installed and running.
Enable the IPC API inside KiCad:
Go to Preferences β Preferences...
Navigate to Plugins
Check the Enable KiCad IPC API box.
Python 3.10+ (tested on Python 3.10 through 3.14).
βοΈ Installation & Setup
We recommend using uv for fast and isolated environment setup.
1. Clone the Repository
git clone https://github.com/brovk2008/Kicad-MCP-server.git
cd Kicad-MCP-server2. Set Up the Virtual Environment
# Using uv (recommended)
uv venv
uv pip install -e .
# Or using standard pip
python -m venv .venv
source .venv/bin/activate # Or `.venv\Scripts\activate` on Windows
pip install -e .Note: The project automatically applies a dynamic Protobuf descriptor pool patch to ensure compatibility with kicad-python 0.7.1 on Python 3.14.
π οΈ MCP Configuration
To use this server with Claude Desktop, add the configuration snippet below to your Claude configuration file:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS/Linux:
~/Library/Application Support/Claude/claude_desktop_config.json
Configuration Snippet
{
"mcpServers": {
"kicad-mcp": {
"command": "uv",
"args": [
"run",
"--package",
"kicad-mcp",
"kicad-mcp"
],
"cwd": "C:/Users/techp/Downloads/more projects/Kicad mcp",
"env": {
"KICAD_API_SOCKET": "ipc:///tmp/kicad/api.sock"
}
}
}
}(Adjust the cwd directory to point to your local installation path. For Windows, the socket path defaults to ipc://%TEMP%\\kicad\\api.sock if not explicitly set).
π§ͺ Running Tests
A test suite is included to verify unit conversions, coordinate mappings, and error wrappers:
# Activate your virtual environment and run:
pytest tests/unit/π License
This project is licensed under the MIT License - see the LICENSE file for details.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/brovk2008/Kicad-MCP-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server