Not sure how many of you use ai or LLMs in your day to day. I use them for code a lot, and I wanted to use it for design as well. I have created an MCP (Model Context Protocol) Server that allows a user to pair Claude AI with KiCad. I am looking for feedback, here is my repo:
This will work with Claude desktop, or with VSCode and Cline, or any other MCP Client you wish to use.
From my understanding, MCP is a standard for allowing LLMs to access and use external tools. This is typically done through an API provided by each tool. Since KiCad has no API for the schematic portion, the MCP doesnāt address it. Iāve seen LLMs drive tools through the GUI, but I donāt think thatās part of MCP.
You may want to take a look at kicad-skip. It may allow you to extend your MCP to handle schematic operations.
Also, @Jean_Pierre has a post where he demonstrates using DeepSeek to design a schematic and PCB for an IOT device. It looks like he asks DeepSeek for design advice and then he manually creates the schematic and PCB using that advice. He might be able to more fully automate his design flow using your MCP server.
Weāre excited to announce the addition of schematic generation capabilities! Now, in addition to PCB design, KiCAD MCP enables AI assistants to:
Create and manage KiCAD schematics through natural language
Add components like resistors, capacitors, and ICs to schematics
Connect components with wires to create complete circuits
Save and load schematic files in KiCAD format
Export schematics to PDF
This powerful addition completes the PCB design workflow, allowing AI assistants to help with both schematic capture and PCB layout in a single integrated environment.
Do you have any screenshots of schematics and PCBs created using Claude and this MCP? I can see functions in the MCP for placing schematic symbols and connecting wires between start and end points, but what does the final result look like? Is it human-readable or just a jumble of parts and wires?
As of now, the repo is not working correctly. I will have it working (hopefully) by tomorrow (Friday). It generates in Kicad format and PDF, I will see if I can post a pic from the tests. I broke something or deleted something going back an forth from work an home, so I apologize.
Hey, @mixelpixx . Really like what you have done and the solution matches very nicely with some of the ideas I and our team has. Would you be willing to share your contacts so we could discuss further developments and cooperation?
Mihkel Tedremaa
MOD EDIT:
Iāve removed the email address for your protection. Please click on the posterās icon and do this via private message.
Following this thread. Just started installing and testing. I was reluctant to install an MCP server for a different project using totally different technologies. Once I did, it unlocked superpowers I never knew existed. Iām hoping for the same experience here!
Itās not perfect, as some of the LEDs overlap, but Iām sure if I continued to prompt, I could get it to do more. Well done @mixelpixx! I hope this is a helpful tool in my kit moving forward.
Would you care to share your experience using this MCP? It looks like there was only about an hour between installing it and completing the KiCad design, so it couldnāt have required extensive, detail-oriented prompting. How many and what type of prompts did you use?
Iām not sure if the PCB portion of this works; I didnāt get to that. And it probably does, because KiCAD has a full API to handle PCB. What it doesnāt have is ANY schematic support and what I was wanting this more so for schematic creation and the ādeveloperā said it was working. well, come to find out thatās literally impossible. Firstly you canāt even build this project in itās current deliverable state, right out of the box. so Iām not sure why people came back to this thread and said it worked without noting that itās thoroughly broken. This person doesnāt ācodeā. Otherwise this AI slop would have never been pushed to github.
Just to address the repo issues:
there is no .gitignore
dist folder was uploaded
pycache was uploaded
Iām surprised the node_modules folder wasnāt also uploaded.
The README file is clearly written by AI. Thatās not a problem. What IS a problem is how confidently it states that this is āproduction readyā and the schematic manipulation works.
Letās start with the first issue with the code of this application. It is missing 4 files in the source folder that are imported elsewhere. You canāt even build this. Luckily, the dist folder (WHICH SHOULDNāT EVEN BE THERE) had the transpiled files and Claude reverse engineered those. I never really got as far as testing that stuff, because it built, which was what I initially just wanted to get past, right? But, if those files didnāt exist, this whole repo would have been useless. Why no one else noticed this and just came in here and sang its praises, is beyond me.
OK, so I get them built, I get it hooked up to Claude Desktop. It canāt do stuff. It starts loading schematics, but there are typing errors. Get that fixed, there are missing methods in kicad_skip as Claude tries to add a simple component. Come to find out, the functionality it requested arenāt even real freakinā methods that kicad_skip provides. Basically, kicad_skip is taking an existing schematic and manipulating it. It canāt add components they have to already be present so it can clone components. Iām not sure what the use case is for that, but at least from the concept of trying to put things in some sort of automation, that just isnāt going to cut it. So, essentially, this schematic feature NEVER worked. How do we know the ādeveloperā just used AI and had no clue what they were doing? They clearly just asked AI to build a feature, build tests around it that DO NOT work, and then have it update the README saying confidently that the feature worked just to manually upload a folder from their PC directly to github. That is not how a typical developer does their code.
I fully documented what was found here:
As a developer, I never expected non-working, non-tested AI Slop to make its way to github. Thoroughly disappointed with what I just experienced.