io.github.daedalus/mcp-kicad
MCP server exposing KiCad PCB Editor functionality via IPC API
What can you do with io.github.daedalus/mcp-kicad?
- Connection:
connect_kicad,check_connection - Board:
get_board_info,get_layers,get_board_design_settings - Footprints:
list_footprints,get_footprint,search_footprints - Nets:
list_nets,get_net,list_netclasses - Zones:
list_zones - Tracks/Vias:
list_tracks,list_vias - Pads:
list_pads - Text:
list_texts,get_text_extents
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
mcp-kicadclaude mcp add mcp-kicad -- uvx mcp-kicad==0.1.1
{
"mcpServers": {
"mcp-kicad": {
"command": "uvx",
"args": [
"mcp-kicad==0.1.1"
]
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
mcp-kicad — MCP server exposing KiCad PCB Editor functionality via IPC API.
Install
pip install mcp-kicad
Requirements
- KiCad 9.0 or higher with the IPC API server enabled
- Go to Preferences > Plugins in KiCad and enable the API server
Usage
The MCP server communicates with a running KiCad instance via the IPC API. Start KiCad first, then run the server:
mcp-kicad
Or configure it in your MCP client:
{
"mcpServers": {
"mcp-kicad": {
"command": "mcp-kicad",
"env": {}
}
}
}
Tools
The server exposes the following tools:
- Connection:
connect_kicad,check_connection - Board:
get_board_info,get_layers,get_board_design_settings - Footprints:
list_footprints,get_footprint,search_footprints - Nets:
list_nets,get_net,list_netclasses - Zones:
list_zones - Tracks/Vias:
list_tracks,list_vias - Pads:
list_pads - Text:
list_texts,get_text_extents - Project:
get_project,get_version
Example
from mcp_kicad import mcp_server
# Connect to running KiCad
result = mcp_server.connect_kicad()
# Get board info
board_info = mcp_server.get_board_info()
print(board_info)
# List all footprints
footprints = mcp_server.list_footprints()
for fp in footprints:
print(f"{fp['reference']}: {fp['value']}")
Development
git clone https://github.com/daedalus/mcp-kicad.git
cd mcp-kicad
pip install -e ".[test]"
# run tests
pytest
# format
ruff format src/ tests/
# lint
ruff check src/ tests/
# type check
mypy src/
mcp-name: io.github.daedalus/mcp-kicad
Frequently asked questions
What is io.github.daedalus/mcp-kicad?
MCP server exposing KiCad PCB Editor functionality via IPC API
How do I install io.github.daedalus/mcp-kicad?
It runs on your machine. In Claude Code: claude mcp add mcp-kicad -- uvx mcp-kicad==0.1.1. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.daedalus/mcp-kicad need an API key?
Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.
Is io.github.daedalus/mcp-kicad open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains io.github.daedalus/mcp-kicad?
It is published by daedalus. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.