The Universal Netlist MCP Server gives AI agents the tools to understand and analyze your electrical schematics, for powerful and comprehensive design reviews through natural conversations.
It is compatible with Cadence, Altium, and KiCad, with plans to integrate more EDAs in the future. It reads your design files directly on macOS, Linux, and Windows, with no Cadence or Altium installation and no EDA license required.
| Format | Input Files | Description |
|---|---|---|
| Cadence (CIS / HDL) | .DSN schematic (preferred), or .dat netlist files |
Reads the .DSN binary schematic directly; exported Allegro netlist files are also readable |
| Altium Designer | .SchDoc |
Altium schematic documents, discovered via .PrjPcb project files |
| KiCad | .kicad_pro (or root .kicad_sch) |
Reads a committed .net export beside the project, or generates one via kicad-cli |
| Universal Netlist | .json |
The server's own netlist format, read like any other design |
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/IntelligentElectron/universal-netlist/main/install.sh | bashWindows (PowerShell):
irm https://raw.githubusercontent.com/IntelligentElectron/universal-netlist/main/install.ps1 | iexWhy use the native installer:
- No dependencies — standalone binary, no Node.js required
- Auto-updates — checks for updates on startup
- Signed binaries — macOS binaries are notarized by Apple
The installer downloads two files:
- Binary - For CLI usage and manual MCP client configuration
- Claude Desktop extension (.mcpb) - For easy Claude Desktop integration
| Platform | Install Directory |
|---|---|
| macOS | ~/Library/Application Support/universal-netlist/ |
| Linux | ~/.local/share/universal-netlist/ |
| Windows | %LOCALAPPDATA%\universal-netlist\ |
The server checks for updates on startup. To update manually:
universal-netlist updateFor developers who prefer npm:
npm install -g @intelligentelectron/universal-netlistOr use with npx (no installation required):
npx @intelligentelectron/universal-netlist helpRequires Node.js 20+.
To update:
npm update -g @intelligentelectron/universal-netlistAfter installing the MCP with one of the methods above, you can connect it to your AI agent of choice.
- Download the Claude Desktop app
- Open Claude Desktop and go to Settings (gear icon)
- Under Desktop app, click Extensions
- Click Advanced settings
- In the Extension Developer section, click Install Extension...
- Navigate to your install directory and select
universal-netlist.mcpb:- macOS:
~/Library/Application Support/universal-netlist/universal-netlist.mcpb - Windows:
%LOCALAPPDATA%\universal-netlist\universal-netlist.mcpb
- macOS:
The extension will be available immediately in your conversations.
Install Claude Code, then run:
claude mcp add --scope user universal-netlist -- universal-netlistInstall OpenAI Codex, then run:
codex mcp add universal-netlist -- universal-netlist| Platform | Binary |
|---|---|
| macOS (Universal) | universal-netlist-darwin-universal |
| Linux (x64) | universal-netlist-linux-x64 |
| Linux (ARM64) | universal-netlist-linux-arm64 |
| Windows (x64) | universal-netlist-windows-x64.exe |
The server can emit OpenTelemetry traces, metrics, and logs for every tool call, so you can integrate your own OTel service and see which tools are used, how long they take, and what fails. It is vendor-neutral and works with any OTLP-compatible backend (an OpenTelemetry Collector, Jaeger, Tempo, Prometheus, Honeycomb, Datadog, a managed cloud tracing service, etc.).
Telemetry is disabled by default with zero overhead, and is enabled and configured entirely through the standard OTEL_* environment variables — no code changes.
See Observability (OpenTelemetry) for setup, configuration, and the full list of emitted spans, metrics, and logs.
See docs/ for API documentation and response schemas, and docs/cli.md for the binary's command line.
See CONTRIBUTING.md for development guidelines.
The server runs on your machine and collects no data. The full policy is PRIVACY.md.
Created by Valentino Zegna
This project is hosted on GitHub under the IntelligentElectron organization.
Universal Netlist MCP Server and the universal netlist open standard are original works by Valentino Zegna.
The Cadence DSN binary parser is a TypeScript port of OpenOrCadParser by Dominik Wernberger. Their work reverse-engineering the OrCAD binary format made direct schematic parsing possible.
Apache License 2.0 - see LICENSE