claude mcp add altium-designer-mcp -- npx -y altium-designer-mcp
A pasteable skeleton generated from the repository name. Check the project README for the exact package and arguments.
Star count
77 ★ · embedded-society/altium-designer-mcp · read from the repository page · (checked 2026-10-16 20:00:20)
Source
collected from the punkpeye/awesome-mcp-servers list · type: MCP server
Harvest history
first seen 2026-10-09 · last seen 2026-10-16 · seen 32× · listed by 7 sources
Score
score 703 · 77 ★ · 7 sources · mcp
FAQ (answers come from our records)
How do I install it?
We did not find an install command for this repository (our install coverage is only about 4%). Check its README or releases page.
Who is it for?
We filed it under these tags: MCP 服务. The tags come from the entry itself, not a taxonomy we imposed.
Who maintains it?
repository embedded-society/altium-designer-mcp;first catalogued 2026-10-09;last seen 2026-10-16。There is no official certification or quality rating here — we record sources and dates only.
**Let an AI build your Altium libraries — it does the engineering, this tool writes the files.** An MCP server that gives AI assistants (Claude Code, Claude Desktop, Cursor, Antigravity, VS Code Copilot — any MCP client) file I/O and primitive-placement tools for Altium Designer .PcbLib (footprint) and .SchLib (symbol) libraries — so the AI can create and maintain *any* component, not just pre-programmed packages. --- The Problem Building Altium component libraries by hand is slow and repetitive — every footprint means looking up IPC-7351B pad sizes, courtyards, and silkscreen, then placing each primitive by hand. AI assistants are excellent at exactly that reasoning, but they **cannot write Altium's binary .PcbLib/.SchLib files** — an undocumented OLE compound format that is easy to corrupt, and Altium silently refuses to open a malformed file. | Approach | Problem | |----------|---------| | Draw every footprint by hand in Altium | Slow and repetitive; the AI can't touch the file | | Ask an AI to emit the binary file directly | It produces a corrupt file Altium won't open | | Pre-programmed footprint generators | Only the package types someone coded in advance | --- The Core Idea **The AI handles the intelligence. The tool handles file I/O.** | Responsibility | Owner | |---------------|-------| | IPC-7351B calculations | AI | | Package layout decisions | AI | | Style choices | AI | | Datasheet interpretation | AI | | Reading/writing Altium files | This tool | | Primitive placement | This tool | | STEP model attachment | This tool | This means the AI can create **any footprint** — not just pre-programmed package types. See docs/VISION.md for the full architectural rationale. --- Who Is This For? Anyone who **builds or maintains Altium component libraries** and uses an **MCP-capable AI assistant**. The AI does the engineering (datasheet → dimensions → style); this server lets it read and write the actual .PcbLib / .SchLib files. | If you… | Then… | |---------|-------| | Use Claude Code, Claude Desktop, Cursor, Antigravity, VS Code + Copilot — any MCP client — and design in Altium | ✅ This is for you | | Want pre-baked generators for a fixed set of packages | ❌ Not this — the point is *any* component | | Don't use Altium | ❌ Not applicable | --- Quick Start > **Client Setup** — verified configuration for Claude Code, Claude > Desktop, Google Antigravity, Cursor, VS Code, GitHub Copilot CLI, Windsurf, Cline, Roo Code, > Kiro, JetBrains, Zed, Gemini CLI, Codex CLI, Continue, Goose, OpenCode and any other stdio > MCP client, plus troubleshooting — on **Windows**, **Linux**, and **macOS**. > > **Using the server** — what to ask for once it is connected: example > workflows, prompts and tips, identical for every client. --- How It Works --- MCP Tools The server exposes **34 tools**, working on both .PcbLib (footprints) and .SchLib (symbols). Every tool's full parameters and examples live in **docs/TOOLS.md** — this is the categorised overview. Read & write | Tool | Purpose | |------|---------| | read_pcblib | Read footprints from a .PcbLib. | | write_pcblib | Write footprints to a .PcbLib. | | read_schlib | Read symbols from a .SchLib. | | write_schlib | Write symbols to a .SchLib. | Inspect & visualise | Tool | Purpose | |------|---------| | list_components | List component names (paginated). | | get_component | Get one component's full data. | | search_components | Search across libraries by regex/glob. | | component_exists | Check whether components exist. | | render_footprint | ASCII-art preview of a footprint. | | render_symbol | ASCII-art preview of a symbol. | | extract_style | Extract styling from an existing library. | Compare | Tool | Purpose | |------|---------| | diff_libraries | Compare two library files. | | compare_components | Diff two specific components. | Edit in place | Tool | Purpose | |------|---------| | update_component | Update a component, preserving its position. | | update_pad | Update one pad's properties. | | update_primitive | Update one primitive (track/arc/text/fill/region). | | batch_update | Batch updates across all components. | | reorder_components | Reorder components in a library. | | manage_schlib_parameters | List/get/set/remove SchLib parameters. | | manage_schlib_footprints | Manage footprint links in SchLib symbols. | Manage components | Tool | Purpose | |------|---------| | delete_component | Delete one or more components. | | copy_component | Duplicate a component within a library. |