altium-mcp
Bridges Cursor to Altium Designer through DelphiScript so an agent can drive the EDA session.
What it does and how it connects
altium-mcp is an MCP server that bridges Cursor and other MCP clients to Altium Designer on Windows, so an assistant can query PCB and schematic data and drive DelphiScript automation. It is a third-party project, not affiliated with Altium. Its DelphiScript source is derived from coffeenmusic's altium-mcp, with additions such as ping, schematic data export and schematic editing.
The server writes request.json into the workspace, launches Altium with a scripting flag pointing at its bundled Altium_API.PrjScr project, and the DelphiScript side reads the request, runs PCB and schematic API calls and writes response.json, with a file lock serializing concurrent calls. Tools cover server status, workspace projects, schematic data and editing, PCB layers, rules, nets, stackup, designators and component pins.
It needs Windows 10 or 11, Altium Designer 22 or later, Node.js 20 or later, and Cursor over stdio. Schematic edits work on a named sheet without an active PCB; PCB queries need the target .PcbDoc open and focused. The README says version tags follow semantic versioning, but no GitHub release was published at research time.
Alternatives
Compare side by side- eda-agent
An MCP server that drives a live Altium Designer session through a persistent DelphiScript bridge, with an optional KiCad backend, rather than a file-based request bridge.
- kicad-mcp-pro
An MCP server that drives KiCad schematic, PCB, ERC and DRC and manufacturing export workflows, rather than an Altium bridge.
- akcli
A zero-dependency Python CLI agent that authors and edits KiCad schematics directly, rather than an Altium MCP server.
- MCP-KiCad
An MCP server for AI-assisted KiCad PCB design through pcbnew, rather than an Altium bridge.
- easyeda-mcp
An early-stage MCP server skeleton and planned EasyEDA Pro bridge, rather than a working Altium bridge.
Recurring errors it addresses
Error Index entries this tool is built to reduce or work around.
- Symbols an agent creates in an Altium SchLib never mark the library as modified, so closing Altium throws them away without asking.Error Index
- tools that succeeded report failure (a moved part reports failure on decimal-comma locales; a net class that gained nets reports nets_added: 0), so an agent may retry a completed action or tell the user it failed.Error Index
- with a schematic or library focused, every PCB tool quietly runs on the first .PcbDoc (often a panel drawing with no parts), returning empty/wrong data, and misreports "no designators given" when designators were given but not found.Error Index
- The Altium MCP sandbox script failed between PreProcess and PostProcess, breaking Altium undo history until restart, and the agent could not read error dialogs drawn as non-windowed labels.Error Index
- KiCad ERC is clean (0 violations, 66 of 66 hierarchy checks pass), but Altium compiles the same imported design with 33 to 43 errors and 154 to 156 warnings and leaves 19 endpoints on multi-pin nets unassigned. The equivalence gate between the two tools is still not run.Error Index
Sources
Not verified
- Pricing (no price stated)
- Real user voices (the repository's only issues are maintainer pull requests)
- A named individual builder beyond the repository owner handle flaco-source
- Latest release (the README describes v0.1.0 style tags but no release exists, so release fields are null)
Last verified November 6, 2026. Listings are informational. The evidence score measures public, verifiable evidence and is not an endorsement or a compatibility claim.