mcltspice
MCP server for LTspice circuit simulation automation on Linux (via Wine) and native macOS. Drives LTspice in batch mode, parses binary .raw results, and exposes 37 tools for end-to-end circuit design workflows.
Note: macOS (native, no Wine) support is new and under active validation. The Linux/Wine path is the mature, battle-tested one.
Quick Start
# Install and run
uvx mcltspice
# Add to Claude Code
claude mcp add mcltspice -- uvx mcltspice
# Local development
claude mcp add mcltspice -- uv run --directory /path/to/mcltspice mcltspice
Requirements
- Linux with Wine installed, OR macOS (Apple Silicon or Intel) with LTspice.app
- LTspice — on Linux, extracted from the Windows installer; on macOS, the native app (see Setup)
- Python 3.11+
Tools
Simulation
| Tool | Description |
|---|---|
simulate |
Run simulation on a .asc schematic |
simulate_netlist |
Run simulation on a .cir / .net netlist |
parameter_sweep |
Sweep a parameter across a range of values |
temperature_sweep |
Run simulations at different temperatures |
monte_carlo |
Monte Carlo analysis with component tolerances |
optimize_circuit |
Automatically optimize component values to hit target specs |
tune_circuit |
Measure performance and suggest parameter adjustments |
Waveform Extraction & Visualization
| Tool | Description |
|---|---|
get_waveform |
Extract signal data from a .raw file |
list_simulation_runs |
List runs in a stepped/Monte Carlo simulation |
evaluate_waveform_expression |
Evaluate math expressions on waveforms (V*I, dB, etc.) |
export_csv |
Export waveform data to CSV |
plot_waveform |
Generate SVG plots from simulation results |
Signal Analysis
| Tool | Description |
|---|---|
analyze_waveform |
FFT, THD, RMS, settling time, and more |
measure_bandwidth |
Measure -3dB bandwidth from AC analysis |
get_operating_point |
Extract DC operating point (.op) results |
get_transfer_function |
Extract .tf (transfer function) results |
Noise Analysis
| Tool | Description |
|---|---|
analyze_noise |
Comprehensive noise analysis from .noise simulation |
get_spot_noise |
Noise spectral density at a specific frequency |
get_total_noise |
Integrated RMS noise over a frequency band |
Stability & Power
| Tool | Description |
|---|---|
analyze_stability |
Gain margin and phase margin from AC loop gain |
analyze_power |
Power metrics from voltage and current waveforms |
compute_efficiency_tool |
Power conversion efficiency |
Schematic & Netlist
| Tool | Description |
|---|---|
read_schematic |
Parse schematic components and nets |
edit_component |
Modify component values in a schematic |
diff_schematics |
Compare two schematics and show changes |
run_drc |
Design rule checks on a schematic |
create_netlist |
Build a SPICE netlist programmatically |
create_from_template |
Create a circuit from a pre-built template |
generate_schematic |
Generate a graphical .asc schematic from a template |
read_touchstone |
Parse Touchstone S-parameter files (.s1p, .s2p) |
Library & Templates
| Tool | Description |
|---|---|
list_templates |
Available circuit templates with parameters and defaults |
list_symbols |
Browse LTspice's 6500+ component symbols |
list_examples |
Browse 4000+ example circuits |
get_symbol_info |
Pin details and attributes for a component symbol |
search_spice_models |
Search .model definitions in the library |
search_spice_subcircuits |
Search .subckt definitions (op-amps, ICs, etc.) |
check_installation |
Verify LTspice installation (Wine on Linux, native on macOS) |
Resources
| URI | Description |
|---|---|
ltspice://symbols |
All component symbols by category |
ltspice://examples |
All example circuits |
ltspice://status |
Installation status |
ltspice://templates |
All circuit templates with parameters |
ltspice://template/{name} |
Detail for a specific template |
Prompts
| Prompt | Description |
|---|---|
design_filter |
Walk through filter design (type, topology, specs) |
analyze_power_supply |
Guide through power supply analysis |
debug_circuit |
Systematic circuit debugging workflow |
optimize_design |
Iterative design optimization |
monte_carlo_analysis |
Statistical yield analysis |
circuit_from_scratch |
Build a circuit from a description |
troubleshoot_simulation |
Diagnose simulation errors |
LTspice Setup
Linux (Wine)
Extract LTspice from the Windows MSI installer:
# Download LTspice64.msi from analog.com
cd /path/to/downloads
7z x LTspice64.msi -oltspice
cd ltspice
7z x disk1.cab
# Set up Wine prefix
export WINEPREFIX=$PWD/.wine
export WINEARCH=win64
wineboot --init
Set LTSPICE_DIR to point at your extracted directory, or use the default ~/claude/ltspice/extracted/ltspice.
macOS (native)
macOS has a native universal LTspice build, so no Wine is involved. Install LTspice.app from the Mac App Store or analog.com. The binary lives at:
/Applications/LTspice.app/Contents/MacOS/LTspice
The component library lives outside the app bundle, at ~/Library/Application Support/LTspice/, with lib/{sym,sub,cmp} underneath. This is unpacked from lib.zip the first time you launch LTspice.app from the GUI, so launch the app once interactively before running batch simulations.
Set LTSPICE_BIN to override the binary path (it defaults to the path above). This mirrors how LTSPICE_DIR works on Linux.
GUI-session requirement: Mac LTspice is an Aqua GUI application. It runs batch simulations, but it needs an active login/GUI session to do so — it will not run over a bare SSH connection with no logged-in desktop. This differs from the Linux/Wine path, which runs fully headless.
Repository
git.supported.systems/MCP/mcltspice
License
MIT
Metadata
Release files for mcltspice 2026.9.27.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| mcltspice-2026.9.27.1.tar.gz | 120.5 kB | Without provenance | Details for mcltspice-2026.9.27.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| mcltspice-2026.9.27.1-py3-none-any.whl | Python 3 | none | any | Details for mcltspice-2026.9.27.1-py3-none-any.whl |
Total release size: 258.5 kB
Release files / mcltspice-2026.9.27.1.tar.gz
| Download URL | mcltspice-2026.9.27.1.tar.gz |
|---|---|
| Size | 120.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3d4e950d89fd8570bd3189fac0f38469d49afe13fec3724b318b3c614cfa27a9
|
|
BLAKE2b-256 checksum How to use checksums |
004a81da3e615c6747278897296c46172c7a56d3eee22dd7f31bb1640c5f1b8c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"EndeavourOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / mcltspice-2026.9.27.1-py3-none-any.whl
| Download URL | mcltspice-2026.9.27.1-py3-none-any.whl |
|---|---|
| Size | 138.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1dd8782cc105998a861a00fe96e7521b732a3bf960d4170b37b89211df59903a
|
|
BLAKE2b-256 checksum How to use checksums |
e6455d1c31342664c22e3b91437650192ba26fb58fe2ab0b8cb9fe895efd3665
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"EndeavourOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Security for mcltspice 2026.9.27.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.