SPICEBridge
AI-powered circuit design through simulation — an MCP server that gives language models direct access to SPICE circuit simulation via ngspice, enabling natural language circuit description and automated netlist generation, simulation, measurement, and spec verification.
README
SPICEBridge
<img width="1536" height="1024" alt="image" src="https://github.com/user-attachments/assets/235461c1-122a-41bb-b802-cb6055fb8387" />
AI-powered circuit design through simulation — an MCP server that gives language models direct access to SPICE circuit simulation via ngspice. Describe a circuit in plain English and let the AI handle netlist generation, simulation, measurement, and spec verification.
Features
- 28 tools covering the full circuit design workflow
- 11 built-in templates with automatic component value calculation (E24 series)
- Simulation: AC sweep, transient, DC operating point
- Measurement: bandwidth, gain, DC levels, transient metrics, power
- Monte Carlo & worst-case analysis under component tolerances
- Multi-stage composition — connect circuit stages with automatic port mapping
- Model wizard — generate SPICE
.libmodels from datasheet parameters - KiCad export — output
.kicad_schschematics - Web viewer — interactive schematic viewer in the browser
- Cloud setup wizard — one-command deployment with Cloudflare tunnels (
spicebridge setup-cloud) - Spec verification — compare results against design targets
Install
pip install spicebridge
Requirements
- Python 3.10+
- ngspice installed and on PATH
Quick Start
Local (Claude Code / stdio)
Add to your .mcp.json:
{
"mcpServers": {
"spicebridge": {
"command": "spicebridge"
}
}
}
Cloud (Streamable HTTP)
spicebridge --transport streamable-http --port 8000
Cloud Setup Wizard
One command to go from a local install to a public MCP endpoint:
spicebridge setup-cloud # interactive (named tunnel, permanent URL)
spicebridge setup-cloud --quick # quick tunnel (temporary URL, no account needed)
The wizard handles the full deployment pipeline:
- Installs cloudflared automatically (macOS via Homebrew, Linux via APT) if not found
- Authenticates with Cloudflare (browser-based OAuth, named tunnel mode only)
- Creates or reuses a tunnel — prompts to pick an existing one or make a new one
- Configures DNS routing for your custom domain (named tunnel mode)
- Generates an API key for authentication
- Starts the SPICEBridge server and tunnel together
- Prints connection info with a ready-to-paste JSON config for Claude.ai
Quick tunnels give you a temporary trycloudflare.com URL instantly — no Cloudflare account required. Named tunnels give you a permanent custom domain (e.g. spicebridge.example.com).
Additional options:
spicebridge setup-cloud --domain mcp.example.com # specify custom domain
spicebridge setup-cloud --port 9000 # custom port
spicebridge setup-cloud --no-install # skip cloudflared installation
Example
1. load_template("rc_lowpass_1st", specs={"f_3dB_hz": 1000})
-> netlist with R=1.6k, C=100nF, circuit_id: "a1b2c3d4"
2. run_ac_analysis(circuit_id, start_freq=1, stop_freq=1e6)
-> frequency response data
3. measure_bandwidth(circuit_id)
-> f_3dB_hz: 995
4. compare_specs(circuit_id, specs={"f_3dB_hz": {"target": 1000, "tolerance_pct": 5}})
-> PASS
5. draw_schematic(circuit_id)
-> schematic SVG
Tools
Create & Configure
| Tool | Description |
|---|---|
create_circuit |
Store a SPICE netlist, returns a circuit ID |
delete_circuit |
Delete a stored circuit and clean up resources |
list_templates |
List available circuit templates |
load_template |
Load a template with parameter substitution |
calculate_components |
Calculate component values from target specs |
modify_component |
Change a component value in a stored circuit |
validate_netlist |
Check a netlist for errors before simulation |
Simulate
| Tool | Description |
|---|---|
run_ac_analysis |
AC frequency sweep |
run_transient |
Transient (time-domain) analysis |
run_dc_op |
DC operating point analysis |
Measure
| Tool | Description |
|---|---|
measure_bandwidth |
Find -3 dB bandwidth from AC results |
measure_gain |
Measure gain at a specific frequency |
measure_dc |
Extract DC operating point values |
measure_transient |
Measure time-domain characteristics |
measure_power |
Calculate power dissipation |
Evaluate & Export
| Tool | Description |
|---|---|
get_results |
Retrieve last simulation results |
compare_specs |
Check measurements against target specs |
draw_schematic |
Generate a schematic diagram (PNG/SVG) |
export_kicad |
Export as KiCad 8 schematic (.kicad_sch) |
open_viewer |
Start the interactive web schematic viewer |
Composition & Ports
| Tool | Description |
|---|---|
set_ports |
Define port-to-node mappings for a circuit |
get_ports |
Return port definitions (auto-detect if unset) |
connect_stages |
Compose multiple stages into a single circuit |
Advanced Analysis
| Tool | Description |
|---|---|
run_monte_carlo |
Monte Carlo analysis under component tolerances |
run_worst_case |
Worst-case analysis at tolerance extremes |
auto_design |
Full design loop in one call: template + simulate + verify |
Model Management
| Tool | Description |
|---|---|
create_model |
Generate a SPICE .lib model from datasheet parameters |
list_models |
List all saved models in the model library |
Development
git clone https://github.com/clanker-lover/spicebridge.git
cd spicebridge
pip install -e ".[dev]"
pytest
License
GPL-3.0-or-later
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.