mixelpixx avatar

KiCAD

mixelpixx/kicad-mcp-server

The KiCAD MCP Server provides a standardized interface that enables AI assistants to interact with KiCAD for automated PCB design workflows, offering 122 tools across 16 categories including schematic design, footprint/symbol creation, autorouting via Freerouting integration, and JLCPCB component catalog access with 2.5M+ parts. It exposes real-time project state through dynamic resources and includes specialized capabilities such as FFC/ribbon cable passthrough workflows, datasheet enrichment, and cross-platform support (Linux, Windows, macOS) with experimental real-time KiCAD UI integration via IPC API. This server solves the problem of enabling natural language control and AI-assisted automation of complex PCB design operations while maintaining full MCP protocol compliance and comprehensive error handling.

GitHub stars
1K
tools
80
last updated
Mar 6, 2026

Tools

80 tools

Public tool metadata for what this MCP can expose to an agent.

create_projectInitialize new KiCAD projects

Initialize new KiCAD projects

No parameter schema in public metadata yet.

open_projectLoad existing project files

Load existing project files

No parameter schema in public metadata yet.

open_boardOpen a specific .kicad_pcb file

Open a specific .kicad_pcb file

No parameter schema in public metadata yet.

reload_boardRe-read a specific .kicad_pcb file

Re-read a specific .kicad_pcb file

No parameter schema in public metadata yet.

save_projectSave current state

Save current state

No parameter schema in public metadata yet.

save_boardSave current state

Save current state

No parameter schema in public metadata yet.

save_asSave current state

Save current state

No parameter schema in public metadata yet.

close_projectSave (optionally) and drop in-memory state

Save (optionally) and drop in-memory state

No parameter schema in public metadata yet.

is_dirtyCheck for unsaved changes

Check for unsaved changes

No parameter schema in public metadata yet.

discard_or_reloadUndo unsaved changes

Undo unsaved changes

No parameter schema in public metadata yet.

get_project_infoRetrieve project metadata

Retrieve project metadata

No parameter schema in public metadata yet.

snapshot_projectSave named checkpoint snapshot

Save named checkpoint snapshot

No parameter schema in public metadata yet.

set_board_sizeConfigure PCB dimensions

Configure PCB dimensions

No parameter schema in public metadata yet.

add_board_outlineCreate board edge (rectangle, circle, polygon, rounded rectangle)

Create board edge (rectangle, circle, polygon, rounded rectangle)

No parameter schema in public metadata yet.

add_layerAdd custom layers to stack

Add custom layers to stack

No parameter schema in public metadata yet.

set_active_layerSwitch working layer

Switch working layer

No parameter schema in public metadata yet.

get_layer_listList all board layers

List all board layers

No parameter schema in public metadata yet.

get_board_infoRetrieve board properties

Retrieve board properties

No parameter schema in public metadata yet.

get_board_2d_viewGenerate board preview image

Generate board preview image

No parameter schema in public metadata yet.

get_board_extentsGet board bounding box

Get board bounding box

No parameter schema in public metadata yet.

add_mounting_holePlace mounting holes

Place mounting holes

No parameter schema in public metadata yet.

add_board_textAdd text annotations

Add text annotations

No parameter schema in public metadata yet.

add_zoneAdd copper zone/pour with clearance settings

Add copper zone/pour with clearance settings

No parameter schema in public metadata yet.

clear_board_outlineRemove the Edge.Cuts outline

Remove the Edge.Cuts outline

No parameter schema in public metadata yet.

replace_board_outlineSwap the Edge.Cuts outline

Swap the Edge.Cuts outline

No parameter schema in public metadata yet.

set_board_originSet the drill/place and grid origins

Set the drill/place and grid origins

No parameter schema in public metadata yet.

get_board_originRead the drill/place and grid origins

Read the drill/place and grid origins

No parameter schema in public metadata yet.

list_graphicsInspect drawing items

Inspect drawing items

No parameter schema in public metadata yet.

update_graphicEdit drawing items

Edit drawing items

No parameter schema in public metadata yet.

delete_graphicEdit drawing items

Edit drawing items

No parameter schema in public metadata yet.

import_svg_logoImport SVG file as PCB silkscreen polygons

Import SVG file as PCB silkscreen polygons

No parameter schema in public metadata yet.

place_componentPlace single component with footprint

Place single component with footprint

No parameter schema in public metadata yet.

move_componentReposition existing component

Reposition existing component

No parameter schema in public metadata yet.

rotate_componentRotate component by angle

Rotate component by angle

No parameter schema in public metadata yet.

delete_componentRemove component from board

Remove component from board

No parameter schema in public metadata yet.

edit_componentModify component properties

Modify component properties

No parameter schema in public metadata yet.

find_componentSearch by reference or value

Search by reference or value

No parameter schema in public metadata yet.

get_component_propertiesQuery component details

Query component details

No parameter schema in public metadata yet.

add_component_annotationAdd annotation/comment

Add annotation/comment

No parameter schema in public metadata yet.

group_componentsGroup multiple components

Group multiple components

No parameter schema in public metadata yet.

replace_componentReplace with different footprint

Replace with different footprint

No parameter schema in public metadata yet.

get_component_padsGet all pad information

Get all pad information

No parameter schema in public metadata yet.

get_component_listList all placed components

List all placed components

No parameter schema in public metadata yet.

get_pad_positionGet precise pad position

Get precise pad position

No parameter schema in public metadata yet.

place_component_arrayCreate component grids/patterns

Create component grids/patterns

No parameter schema in public metadata yet.

align_componentsAlign multiple components

Align multiple components

No parameter schema in public metadata yet.

duplicate_componentCopy existing component

Copy existing component

No parameter schema in public metadata yet.

batch_move_componentsMove many components in one transactional call

Move many components in one transactional call

No parameter schema in public metadata yet.

get_component_geometryBody sizes and overlap checks

Body sizes and overlap checks

No parameter schema in public metadata yet.

check_placement_clearanceBody sizes and overlap checks

Body sizes and overlap checks

No parameter schema in public metadata yet.

get_ratsnestUnrouted connection analysis

Unrouted connection analysis

No parameter schema in public metadata yet.

estimate_airwire_lengthsUnrouted connection analysis

Unrouted connection analysis

No parameter schema in public metadata yet.

add_netCreate electrical net

Create electrical net

No parameter schema in public metadata yet.

route_traceRoute copper traces between XY points

Route copper traces between XY points

No parameter schema in public metadata yet.

route_pad_to_padRoute between pads with auto-via insertion

Route between pads with auto-via insertion

No parameter schema in public metadata yet.

add_viaPlace vias for layer transitions

Place vias for layer transitions

No parameter schema in public metadata yet.

delete_traceRemove traces (by UUID, position, or net)

Remove traces (by UUID, position, or net)

No parameter schema in public metadata yet.

query_tracesQuery/filter traces

Query/filter traces

No parameter schema in public metadata yet.

get_nets_listList all nets with statistics

List all nets with statistics

No parameter schema in public metadata yet.

modify_traceChange trace width, layer, or net

Change trace width, layer, or net

No parameter schema in public metadata yet.

create_netclassDefine net class with rules

Define net class with rules

No parameter schema in public metadata yet.

add_copper_pourCreate copper zones/pours

Create copper zones/pours

No parameter schema in public metadata yet.

route_differential_pairRoute differential signals

Route differential signals

No parameter schema in public metadata yet.

refill_zonesRefill all copper zones

Refill all copper zones

No parameter schema in public metadata yet.

copy_routing_patternReplicate routing between component groups

Replicate routing between component groups

No parameter schema in public metadata yet.

set_net_colorSet or clear a net's display color override

Set or clear a net's display color override

No parameter schema in public metadata yet.

route_arc_traceRoute a curved trace

Route a curved trace

No parameter schema in public metadata yet.

add_gnd_stitching_viasStitch a ground plane with vias

Stitch a ground plane with vias

No parameter schema in public metadata yet.

query_zonesInspect copper zones

Inspect copper zones

No parameter schema in public metadata yet.

add_schematic_componentPlace symbols from any KiCad library

Place symbols from any KiCad library

No parameter schema in public metadata yet.

delete_schematic_componentRemove component

Remove component

No parameter schema in public metadata yet.

edit_schematic_componentEdit footprint, value, reference

Edit footprint, value, reference

No parameter schema in public metadata yet.

validate_schematicLocate structural damage with line/column, confirmed via kicad-cli on a copy

Locate structural damage with line/column, confirmed via kicad-cli on a copy

No parameter schema in public metadata yet.

validate_symbol_libraryLocate structural damage with line/column, confirmed via kicad-cli on a copy

Locate structural damage with line/column, confirmed via kicad-cli on a copy

No parameter schema in public metadata yet.

list_library_tableLibrary table CRUD

Library table CRUD

No parameter schema in public metadata yet.

remove_library_table_entryLibrary table CRUD

Library table CRUD

No parameter schema in public metadata yet.

set_library_table_uriLibrary table CRUD

Library table CRUD

No parameter schema in public metadata yet.

set_symbol_pin_typeBulk pin type fixes with dry-run

Bulk pin type fixes with dry-run

No parameter schema in public metadata yet.

find_duplicate_symbolsFind the same part stored twice

Find the same part stored twice

No parameter schema in public metadata yet.

backannotate_footprintsPCB footprint choices flow back to the schematic

PCB footprint choices flow back to the schematic

No parameter schema in public metadata yet.

Sponsors

Readme

KiCAD MCP Server

A Model Context Protocol (MCP) server that enables AI assistants like Claude to interact with KiCAD for PCB design automation. Built on the MCP 2025-06-18 specification, this server provides comprehensive tool schemas and real-time project state access for intelligent PCB design workflows.

Open source (MIT) and actively maintained. New releases keep coming, and bug reports, pull requests and discussion are welcome here.


View the full README on GitHub

Details

Repository
github.com/mixelpixx/kicad-mcp-server
Category
Design & Creative

More from mixelpixx

Related Design & Creative MCP servers

View all
1arcadeai avatarBlueprintarcadeai/blueprint-mcpDiagram generation for understanding codebases and system architecture using Nano Banana Pro.609stars
2yuniko-software avatarMinecraftyuniko-software/minecraft-mcp-serverA Minecraft MCP Server powered by Mineflayer API. It allows to control a Minecraft character in real-time, allowing AI assistants to build structures, explore t578stars
3nirholas avatarthree.ws Assistant Widgetnirholas/three.wsGenerate a paste-ready embed for a floating 3D avatar chatbot on any website.269stars
4nirholas avatarthree.ws Heraldnirholas/three.wsTell your human in person: a 3D character walks onto their open browser tab and says it out loud.269stars
5nirholas avatarthree.ws Loomnirholas/three.wsBrowse the community 3D-creation gallery, fetch a creation with its viewer URL, and submit it.269stars
6sammorrowdrums avatarreMarkable MCP Serversammorrowdrums/remarkable-mcpRead, render, search, and manage reMarkable documents through MCP263stars