$git clone https://github.com/mixelpixx/KiCAD-MCP-Serverhttps://github.com/mixelpixx/KiCAD-MCP-Server/discussions/73
| 1 | # Discussions. Get in here. |
| 2 | |
| 3 | https://github.com/mixelpixx/KiCAD-MCP-Server/discussions/73 |
| 4 | |
| 5 | > ## 🚀 Meet Konnect — the next generation |
| 6 | > |
| 7 | > **[Konnect](https://github.com/mixelpixx/Konnect)** is this project rebuilt from |
| 8 | > scratch in Rust as a native KiCAD 10 plugin: a single binary with no runtime |
| 9 | > dependencies, built on KiCAD's official IPC API instead of SWIG, with 171 tools, |
| 10 | > bundled Claude skills and agents, design-review audits, and a manufacturing |
| 11 | > pipeline. It's where new development happens — licensed AGPL-3.0 (free for |
| 12 | > individuals and open source; commercial licenses available for businesses). |
| 13 | > |
| 14 | > This Python/TypeScript server remains fully open (MIT) and maintained. |
| 15 | |
| 16 | # KiCAD MCP Server |
| 17 | |
| 18 | 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. |
| 19 | |
| 20 | ## Overview |
| 21 | |
| 22 | The [Model Context Protocol](https://modelcontextprotocol.io/) is an open standard from Anthropic that allows AI assistants to securely connect to external tools and data sources. This implementation provides a standardized bridge between AI assistants and KiCAD, enabling natural language control of PCB design operations. |
| 23 | |
| 24 | **Key Capabilities:** |
| 25 | |
| 26 | - 122 tools across 12 categories with JSON Schema validation |
| 27 | - Smart tool discovery with router pattern (reduces AI context by 70%) |
| 28 | - 8 dynamic resources exposing project state |
| 29 | - Complete schematic workflow with 27 tools and dynamic symbol loading (~10,000 symbols) |
| 30 | - Freerouting autorouter integration (Java, Docker, or Podman) |
| 31 | - Custom footprint and symbol creation tools |
| 32 | - JLCPCB parts integration with 2.5M+ component catalog and local library search |
| 33 | - Datasheet enrichment via LCSC |
| 34 | - Full MCP 2025-06-18 protocol compliance |
| 35 | - Cross-platform support (Linux, Windows, macOS) |
| 36 | - Real-time KiCAD UI integration via IPC API (experimental) |
| 37 | - Comprehensive error handling and logging |
| 38 | |
| 39 | ## Try out Arduino MCP - now you can get Claude to help in the IDE, real time!: |
| 40 | |
| 41 | https://github.com/mixelpixx/arduino-ide |
| 42 | |
| 43 | ## What's New in v2.4.0 |
| 44 | |
| 45 | ### Symbol library management |
| 46 | |
| 47 | - `import_symbol` / `export_symbol` / `rename_symbol` copy a symbol between |
| 48 | `.kicad_sym` libraries, extract one to a standalone file, and rename a |
| 49 | symbol including its sub-symbol shards and any `(extends ...)` references |
| 50 | from derived symbols in the same library. |
| 51 | - `add_symbol_property` and `add_library_symbol_property` set custom BOM |
| 52 | fields (Manufacturer, MPN, LCSC, ...) on a library symbol or on a |
| 53 | schematic's cached definition. |
| 54 | - `update_symbol_from_library` refreshes cached `lib_symbols` definitions |
| 55 | across one schematic, a list, or every project under a directory — |
| 56 | the programmatic equivalent of KiCad's Update Symbol from Library. |
| 57 | - `replace_instance_lib_ids` swaps `lib_id` references per an explicit |
| 58 | old-to-new mapping, for migrating a schematic between libraries. |
| 59 | |
| 60 | ### Faster symbol discovery |
| 61 | |
| 62 | - Library directories, resolved paths, extracted symbol blocks, and parsed |
| 63 | symbol lists are now cached process-wide instead of being rebuilt for every |
| 64 | component add. Staleness guards revalidate paths and track source `mtime_ns`, |
| 65 | and the mutating write paths clear the caches explicitly. |
| 66 | |
| 67 | ### Fixes that restore basic operation |
| 68 | |
| 69 | - Every `.kicad_sym` and schematic write raised `TypeError` on Python 3.9, the |
| 70 | project's declared floor — `Path.write_text` did not accept `newline` until |
| 71 | 3.10. |
| 72 | - JLCPCB part search could not find hyphenated MPNs. |
| 73 | - Eagle import wrote a KiCad 9 schematic header; it now writes the KiCad 10 |
| 74 | header, verified against real `kicad-cli` 10.0. |
| 75 | - Component placement snaps to the 1.27 mm grid, `import_ses` no longer |
| 76 | creates phantom slashless nets, and `export_dsn`/`autoroute` keep |
| 77 | `.kicad_pro` net classes. |
| 78 | |
| 79 | Full details in the [CHANGELOG](CHANGELOG.md). |
| 80 | |
| 81 | ## What's New in v2.3.1 |
| 82 | |
| 83 | ### Eagle schematic import |
| 84 | |
| 85 | - `im |