Skip to main content
Glama
LTspice MCP
by kh6570

In the name of God, the Most Gracious, the Most Merciful

LTspice MCP

LTspice MCP is a Model Context Protocol server for LTspice. An assistant can edit .asc schematics, run the simulator, and read logs and waveforms through stable JSON tools.

The .asc file is the source of truth. LTspice produces .net, .log, and .raw. Waveform reads stay inside a 2000-point budget.

The shared server framework is the Python package mcp-app-core. pip install of this server clones it from GitHub. This repository contains the LTspice editor, command line, and tools.

Requirements

  • Windows

  • Python 3.11 or newer

  • LTspice XVII (XVIIx64.exe) or a later install (LTspice.exe)

Related MCP server: ltspice-mcp

Install

py -3.12 -m venv .venv
.\.venv\Scripts\python.exe -m pip install -e ".[dev]"

pip install clones mcp-app-core. Do not clone that repository.

.\.venv\Scripts\ltspice-mcp.exe --describe

Register the server in Cursor and VS Code. The command does not remove a qspice entry from the config.

pwsh -ExecutionPolicy Bypass -File .\scripts\setup_mcp.ps1 -WorkspaceRoot "D:\path\to\your\circuit\folder"

Then fully restart the IDE. Setup details are in AGENTS.md. Day-to-day use is in the user guide.

Documentation

Doc

Purpose

User guide

Install, run, and the limits of the GUI

Tool reference

Every tool, with its required arguments

Architecture

How a schematic becomes a simulation

Error codes

Stable codes on tool failures

Security

What the sandbox does

Changelog

The released changes

License

MIT

Available Tools

145 tools
add_componentAdd ComponentC

Place a primitive component.

Inputs: kind (required), reference (required), schematic_path (required), x, +4 more.

add_component_from_asyAdd Component From AsyC

Place a symbol using the file name of an .asy in the workspace.

Inputs: asy_path (required), reference (required), schematic_path (required), x, +4 more.

add_component_symbol_drawingAdd Component Symbol DrawingB

Append a LINE, RECTANGLE, CIRCLE, or ARC to a symbol.

Inputs: kind (required), coords (required), asy_path (required), workspace_root.

add_hierarchical_blockAdd Hierarchical BlockC

Create a child sheet with In/Out pins and place it on the parent.

Inputs: reference (required), block_name (required), schematic_path (required), x, +2 more.

add_instructionAdd InstructionC

Add a SPICE directive or a comment.

Inputs: text (required), schematic_path (required), x, y, +1 more.

add_junctionAdd JunctionC

Split a wire so a coordinate becomes a junction.

Inputs: x (required), y (required), schematic_path (required), workspace_root.

add_library_componentAdd Library ComponentC

Place a library symbol by name.

Inputs: reference (required), symbol_name (required), schematic_path (required), x, +4 more.

add_library_includeAdd Library IncludeC

Add a .lib directive.

Inputs: library_path (required), schematic_path (required), workspace_root.

add_modelAdd ModelC

Add a .model directive.

Inputs: model_text (required), schematic_path (required), workspace_root.

add_net_labelAdd Net LabelD

Add a net label.

Inputs: x (required), y (required), name (required), schematic_path (required), +1 more.

add_wireAdd WireD

Add a wire. Exposed as add_wire by the tool module.

Inputs: x1 (required), x2 (required), y1 (required), y2 (required), +2 more.

apply_schematic_layout_specApply Schematic Layout SpecC

Replace a schematic with a built-in layout.

Inputs: schematic_path (required), spec_name, workspace_root.

cancel_batchCancel BatchB
Destructive

Mark a batch cancelled. A finished batch stays completed.

Inputs: batch_id (required).

cancel_runCancel RunB
Destructive

Stop a simulation started for this source path.

Inputs: source_path (required), workspace_root.

check_schematicCheck SchematicC
Read-onlyIdempotent

Report structural problems without running LTspice.

Inputs: schematic_path (required), workspace_root.

close_live_gui_sessionClose Live Gui SessionC

Stop a GUI process this server launched.

Inputs: schematic_path (required), workspace_root.

close_remote_sessionClose Remote SessionB

Drop a session from memory. Files on disk are left in place.

Inputs: session_id (required).

collect_batch_resultsCollect Batch ResultsC

Return the stored batch result.

Inputs: batch_id (required).

compare_schematicsCompare SchematicsC
Read-onlyIdempotent

Compare component values between two schematics.

Inputs: left_path (required), right_path (required), workspace_root.

compare_waveformsCompare WaveformsC
Read-onlyIdempotent

Compare the means of one signal in two raw files.

Inputs: signal (required), left_path (required), right_path (required), workspace_root.

compute_thdCompute ThdC
Read-onlyIdempotent

Total harmonic distortion.

Inputs: signal (required), raw_path (required), fundamental_hz (required), workspace_root.

create_asy_symbolCreate Asy SymbolC

Write a two-pin .asy symbol.

Inputs: output_path (required), value, prefix, description, +1 more.

create_schematicCreate SchematicC

Create an empty schematic.

Inputs: schematic_path (required), workspace_root.

create_starter_schematicCreate Starter SchematicC

Create a divider, RC, or buck starter schematic.

Inputs: schematic_path (required), kind, workspace_root.

describe_edit_capabilityDescribe Edit CapabilityC
Read-onlyIdempotent

Describe which edits the clean-room editor performs.

Inputs: no named parameters.

describe_live_gui_supportDescribe Live Gui SupportC
Read-onlyIdempotent

Describe the GUI launch support.

Inputs: no named parameters.

describe_mixed_signal_supportDescribe Mixed Signal SupportA
Read-onlyIdempotent

State what mixed-signal authoring LTspice can and cannot do.

Inputs: no named parameters.

describe_protocol_supportDescribe Protocol SupportB
Read-onlyIdempotent

State that I2C and SPI scaffolds here are behavioral teaching circuits.

Inputs: no named parameters.

describe_reference_circuit_recipeDescribe Reference Circuit RecipeC
Read-onlyIdempotent

Describe one reference circuit.

Inputs: recipe_id (required).

describe_schematic_edit_supportDescribe Schematic Edit SupportC
Read-onlyIdempotent

Describe schematic edit support for clients.

Inputs: no named parameters.

describe_schematic_layout_specDescribe Schematic Layout SpecC
Read-onlyIdempotent

Describe a built-in layout spec.

Inputs: spec_name.

describe_server_capabilitiesDescribe Server CapabilitiesA
Read-onlyIdempotent

Report the LTspice engine, tool groups, and feature flags.

Inputs: no named parameters.

describe_topology_authoring_supportDescribe Topology Authoring SupportC
Read-onlyIdempotent

Describe the topology note format.

Inputs: no named parameters.

describe_topology_blockDescribe Topology BlockC
Read-onlyIdempotent

Return one topology note.

Inputs: block_id (required).

download_remote_artifactsDownload Remote ArtifactsC

Return artifact paths recorded for a finished session.

Inputs: session_id (required).

evaluate_waveform_expressionEvaluate Waveform ExpressionC

Evaluate an expression built from raw signal names.

Inputs: raw_path (required), expression (required), max_points, workspace_root.

export_derived_rawExport Derived RawC

Write a small ASCII raw file containing one trace.

Inputs: signal (required), raw_path (required), output_path, workspace_root.

export_fft_spectrumExport Fft SpectrumC

Write an FFT magnitude CSV.

Inputs: signal (required), raw_path (required), output_path, workspace_root.

export_measures_csvExport Measures CsvC

Write .meas rows to CSV.

Inputs: log_path (required), output_path, workspace_root.

export_symbol_to_asyExport Symbol To AsyC

Write a two-pin .asy named for a placed component.

Inputs: reference (required), output_path (required), schematic_path (required), workspace_root.

export_touchstone_s2pExport Touchstone S2pC

Write a one-port-style S2P using S21 = output/reference and the other terms at 0.

Inputs: raw_path (required), output_signal (required), reference_signal (required), z0, +2 more.

export_waveform_asciiExport Waveform AsciiC

Write one signal as whitespace-separated text.

Inputs: signal (required), raw_path (required), output_path, workspace_root.

export_waveform_csvExport Waveform CsvC

Write selected signals to CSV.

Inputs: signals (required), raw_path (required), output_path, workspace_root.

export_waveform_spiceExport Waveform SpiceC

Write a PWL statement for one real trace.

Inputs: signal (required), raw_path (required), output_path, workspace_root.

filter_device_operating_pointsFilter Device Operating PointsC

Keep operating-point rows whose name contains device.

Inputs: device (required), log_path (required), workspace_root.

generate_netlistGenerate NetlistB

Write a netlist with LTspice -netlist, or the clean-room renderer.

Inputs: source_path (required), output_path, workspace_root.

get_batch_statusGet Batch StatusC
Read-onlyIdempotent

Return a batch manifest summary.

Inputs: batch_id (required).

import_circuit_bundleImport Circuit BundleC

Unpack a zip of schematics into the workspace, or copy one .asc.

Inputs: bundle_path (required), workspace_root, destination_dir.

ingest_topology_contributionIngest Topology ContributionC

Store a validated contribution under the workspace.

Inputs: payload (required).

inspect_schematicInspect SchematicC
Read-onlyIdempotent

Summarize a schematic.

Inputs: schematic_path (required), workspace_root.

list_componentsList ComponentsC
Read-onlyIdempotent

List placed components.

Inputs: schematic_path (required), workspace_root.

list_includesList IncludesC
Read-onlyIdempotent

List .lib and .include directives.

Inputs: source_path (required), workspace_root.

list_measuresList MeasuresC
Read-onlyIdempotent

List .meas names.

Inputs: log_path (required), workspace_root.

list_plot_suggestionsList Plot SuggestionsC
Read-onlyIdempotent

Suggest voltages and currents an agent can plot.

Inputs: schematic_path (required), workspace_root.

list_reference_circuit_recipesList Reference Circuit RecipesB
Read-onlyIdempotent

List bundled reference circuits.

Inputs: no named parameters.

list_signalsList SignalsC
Read-onlyIdempotent

List signals in a raw file.

Inputs: raw_path (required), workspace_root.

list_stepsList StepsB
Read-onlyIdempotent

List stepped runs from a raw file and, when given, the log.

Inputs: raw_path (required), log_path, workspace_root.

list_subcircuitsList SubcircuitsC
Read-onlyIdempotent

List .subckt blocks and hierarchical symbols.

Inputs: source_path (required), workspace_root.

list_topology_blocksList Topology BlocksC
Read-onlyIdempotent

List topology notes.

Inputs: no named parameters.

list_workflow_instructionsList Workflow InstructionsC
Read-onlyIdempotent

List bundled workflow notes.

Inputs: no named parameters.

materialize_recipeMaterialize RecipeC

Write a recipe schematic into the workspace.

Inputs: recipe_id (required), destination_path (required), workspace_root.

materialize_reference_circuitMaterialize Reference CircuitC

Write a built-in reference circuit.

Inputs: recipe_id (required), destination_path (required), workspace_root.

measure_bode_responseMeasure Bode ResponseC
Read-onlyIdempotent

Bode magnitude and phase of output/reference.

Inputs: output (required), raw_path (required), reference (required), workspace_root.

measure_efficiencyMeasure EfficiencyD
Read-onlyIdempotent

Average output power over average input power.

Inputs: i_in (required), v_in (required), i_out (required), v_out (required), +2 more.

measure_stability_marginsMeasure Stability MarginsD
Read-onlyIdempotent

Gain and phase margins.

Inputs: output (required), raw_path (required), reference (required), workspace_root.

measure_step_responseMeasure Step ResponseC
Read-onlyIdempotent

Step-response scalars.

Inputs: signal (required), raw_path (required), workspace_root.

measure_waveformMeasure WaveformC
Read-onlyIdempotent

Measure avg, rms, max, min, pp, or peak.

Inputs: method (required), signal (required), raw_path (required), workspace_root.

merge_waveformsMerge WaveformsC

Return two traces side by side without writing a combined raw file.

Inputs: signal (required), left_path (required), right_path (required), workspace_root.

normalize_component_text_rotationNormalize Component Text RotationC

Reset attribute windows to left-justified text.

Inputs: schematic_path (required), workspace_root.

open_schematic_in_guiOpen Schematic In GuiC

Launch LTspice on a schematic without -b.

Inputs: schematic_path (required), workspace_root.

plot_waveformsPlot WaveformsB

Plot one or more comma-separated signals to a PNG.

Inputs: signals (required), raw_path (required), output_path, workspace_root.

poll_live_gui_sessionPoll Live Gui SessionB
Read-onlyIdempotent

Report that polling a GUI session is unsupported.

Inputs: schematic_path (required), workspace_root.

poll_live_gui_session_eventsPoll Live Gui Session EventsC
Read-onlyIdempotent

Report that GUI events are unsupported.

Inputs: schematic_path (required), workspace_root.

poll_remote_runPoll Remote RunC
Read-onlyIdempotent

Return the status of a background session.

Inputs: session_id (required).

prepare_acPrepare AcC

Insert a .ac directive.

Inputs: schematic_path (required), f_end, sweep, points, +2 more.

prepare_dc_sweepPrepare Dc SweepC

Insert a .dc directive.

Inputs: step (required), stop (required), start (required), source (required), +2 more.

prepare_fourPrepare FourC

Insert a .four directive.

Inputs: traces (required), frequency (required), schematic_path (required), workspace_root.

prepare_funcPrepare FuncC

Insert a .func directive.

Inputs: definition (required), schematic_path (required), workspace_root.

prepare_icPrepare IcC

Insert a .ic directive.

Inputs: assignments (required), schematic_path (required), workspace_root.

prepare_loop_gain_analysisPrepare Loop Gain AnalysisC

Stage an AC loop-gain run using the extra-source method.

Inputs: schematic_path (required), f_end, f_start, workspace_root, +1 more.

prepare_measPrepare MeasC

Insert a .meas directive without replacing other measurements.

Inputs: statement (required), schematic_path (required), workspace_root.

prepare_monte_carloPrepare Monte CarloD

Point a component at mc() and step the run index.

Inputs: nominal (required), reference (required), tolerance (required), schematic_path (required), +2 more.

prepare_netPrepare NetC

Insert a .net network-parameter directive.

Inputs: output (required), source (required), schematic_path (required), rin, +2 more.

prepare_nodesetPrepare NodesetD

Insert a .nodeset directive.

Inputs: assignments (required), schematic_path (required), workspace_root.

prepare_noisePrepare NoiseC

Insert a .noise directive.

Inputs: output (required), source (required), schematic_path (required), f_end, +4 more.

prepare_opPrepare OpC

Insert a .op directive.

Inputs: schematic_path (required), workspace_root.

prepare_optionsPrepare OptionsC

Insert a .options directive.

Inputs: options (required), schematic_path (required), workspace_root.

prepare_paramPrepare ParamC

Insert a .param directive.

Inputs: name (required), value (required), schematic_path (required), workspace_root.

prepare_savePrepare SaveC

Insert a .save directive.

Inputs: traces (required), schematic_path (required), workspace_root.

prepare_stepPrepare StepC

Insert a .step directive.

Inputs: statement (required), schematic_path (required), workspace_root.

prepare_temperature_sweepPrepare Temperature SweepC

Insert a .step temp directive.

Inputs: step (required), stop (required), start (required), schematic_path (required), +1 more.

prepare_transfer_functionPrepare Transfer FunctionC

Insert a .tf directive.

Inputs: output (required), source (required), schematic_path (required), workspace_root.

prepare_transientPrepare TransientC

Insert a .tran directive.

Inputs: t_stop (required), schematic_path (required), t_step, t_start, +2 more.

prepare_worst_casePrepare Worst CaseC

Step a component between two corner values with table().

Inputs: low (required), high (required), reference (required), schematic_path (required), +1 more.

read_componentRead ComponentC
Read-onlyIdempotent

Read one component.

Inputs: reference (required), schematic_path (required), workspace_root.

read_component_symbolRead Component SymbolC
Read-onlyIdempotent

Read an .asy symbol.

Inputs: symbol_path (required), workspace_root.

read_device_operating_pointsRead Device Operating PointsC
Read-onlyIdempotent

Read operating-point rows from a log.

Inputs: log_path (required), workspace_root.

read_fourierRead FourierB
Read-onlyIdempotent

Read the Fourier section of a log.

Inputs: log_path (required), workspace_root.

read_logRead LogC
Read-onlyIdempotent

Summarize a simulation log.

Inputs: log_path (required), workspace_root.

read_measuresRead MeasuresC
Read-onlyIdempotent

Read .meas results.

Inputs: log_path (required), workspace_root.

read_net_connectivityRead Net ConnectivityC
Read-onlyIdempotent

Return primitive pin-to-net connectivity.

Inputs: schematic_path (required), workspace_root.

read_noiseRead NoiseC
Read-onlyIdempotent

Read noise lines from a log.

Inputs: log_path (required), workspace_root.

read_subcircuitRead SubcircuitC
Read-onlyIdempotent

Return one .subckt body or a hierarchical sheet.

Inputs: name (required), source_path (required), workspace_root.

read_waveformRead WaveformD
Read-onlyIdempotent

Read one budgeted waveform.

Inputs: signal (required), raw_path (required), t_end, t_start, +2 more.

read_workflow_instructionRead Workflow InstructionC
Read-onlyIdempotent

Read one bundled workflow note.

Inputs: name (required).

refresh_schematic_in_guiRefresh Schematic In GuiB

Close and reopen the schematic so the GUI reloads the file.

Inputs: schematic_path (required), workspace_root.

remove_componentRemove ComponentD
Destructive

Remove a component.

Inputs: reference (required), schematic_path (required), workspace_root.

remove_component_symbol_drawingRemove Component Symbol DrawingC
Destructive

Remove one symbol drawing by index.

Inputs: index (required), asy_path (required), workspace_root.

remove_instructionRemove InstructionC
Destructive

Remove a directive or comment containing text.

Inputs: text (required), schematic_path (required), workspace_root.

remove_junctionRemove JunctionD
Destructive

Explain that LTspice junctions are implicit.

Inputs: x (required), y (required), schematic_path (required), workspace_root.

remove_net_labelRemove Net LabelC
Destructive

Remove a net label.

Inputs: x (required), y (required), schematic_path (required), name, +1 more.

remove_wireRemove WireD
Destructive

Remove a wire.

Inputs: x1 (required), x2 (required), y1 (required), y2 (required), +2 more.

rename_component_referenceRename Component ReferenceD

Rename InstName.

Inputs: reference (required), new_reference (required), schematic_path (required), workspace_root.

render_schematic_imageRender Schematic ImageD

Draw a simple schematic preview.

Inputs: schematic_path (required), output_path, workspace_root.

resolve_model_librariesResolve Model LibrariesB
Read-onlyIdempotent

Search the workspace and the LTspice lib tree for a model name.

Inputs: model_name (required).

run_model_sweepRun Model SweepD

Run once per model name.

Inputs: models (required), reference (required), schematic_path (required), workspace_root.

run_monte_carloRun Monte CarloD

Prepare a Monte Carlo .step and run it.

Inputs: nominal (required), reference (required), tolerance (required), schematic_path (required), +2 more.

run_param_sweepRun Param SweepD

Add a .step and run once. LTspice expands the steps.

Inputs: statement (required), schematic_path (required), workspace_root.

run_simulationRun SimulationD

Run one batch simulation.

Inputs: source_path (required), ascii_raw, timeout_s, extra_switches, +1 more.

run_value_sweepRun Value SweepC

Run the schematic once per component value.

Inputs: values (required), reference (required), schematic_path (required), workspace_root.

run_worst_caseRun Worst CaseC

Prepare two corners and run them.

Inputs: low (required), high (required), reference (required), schematic_path (required), +1 more.

save_netlist_copySave Netlist CopyC

Copy a netlist inside the workspace.

Inputs: source_path (required), destination_path (required), workspace_root.

save_schematic_asSave Schematic AsC

Copy a schematic to a new path.

Inputs: schematic_path (required), destination_path (required), workspace_root.

scaffold_behavioral_subcircuitScaffold Behavioral SubcircuitC

Write a schematic whose only active device is a behavioral source.

Inputs: output_path (required), expression, workspace_root.

scaffold_i2c_deviceScaffold I2c DeviceC

Write a behavioral sketch of an I2C open-drain pull-up, not a protocol engine.

Inputs: output_path (required), workspace_root.

scaffold_spi_deviceScaffold Spi DeviceC

Write a behavioral sketch of a SPI data latch, not a protocol engine.

Inputs: output_path (required), workspace_root.

search_topology_blocksSearch Topology BlocksC
Read-onlyIdempotent

Search titles and summaries.

Inputs: query (required).

send_live_gui_session_commandSend Live Gui Session CommandC

Report that GUI commands are unsupported.

Inputs: command (required), schematic_path (required), workspace_root.

set_component_parametersSet Component ParametersC

Set SpiceLine attributes.

Inputs: reference (required), spice_line (required), schematic_path (required), spice_line2, +1 more.

set_component_positionSet Component PositionC

Move a component and wires that ended on its pins.

Inputs: x (required), y (required), reference (required), schematic_path (required), +2 more.

set_component_symbol_pinSet Component Symbol PinD

Move or add a symbol pin.

Inputs: x (required), y (required), asy_path (required), pin_name (required), +2 more.

set_component_symbol_textSet Component Symbol TextC

Set one .asy attribute.

Inputs: value (required), asy_path (required), attribute (required), workspace_root.

set_component_valueSet Component ValueD

Set a component value.

Inputs: value (required), reference (required), schematic_path (required), workspace_root.

set_element_modelSet Element ModelD

Set a component model.

Inputs: model (required), reference (required), schematic_path (required), workspace_root.

set_parameterSet ParameterC

Add or replace a .param directive.

Inputs: name (required), value (required), schematic_path (required), workspace_root.

set_subcircuit_component_parametersSet Subcircuit Component ParametersC

Set SpiceLine on a component inside a schematic subcircuit file.

Inputs: reference (required), spice_line (required), schematic_path (required), spice_line2, +1 more.

set_subcircuit_component_valueSet Subcircuit Component ValueC

Set a value on a component inside a schematic subcircuit file.

Inputs: value (required), reference (required), schematic_path (required), workspace_root.

submit_batchSubmit BatchC

Run one schematic and keep a manifest of the artifacts.

Inputs: source_path (required), workspace_root.

submit_remote_simulationSubmit Remote SimulationC

Start a background local simulation and return a session id.

Inputs: source_path (required), workspace_root.

suggest_component_placementSuggest Component PlacementB
Read-onlyIdempotent

Suggest the next free grid point to the right of existing parts.

Inputs: kind (required), schematic_path (required), workspace_root.

summarize_batchSummarize BatchC
Read-onlyIdempotent

Summarize raw files sitting in a batch directory.

Inputs: batch_dir (required), workspace_root.

summarize_device_operating_pointsSummarize Device Operating PointsC
Read-onlyIdempotent

Count operating-point rows by unit.

Inputs: log_path (required), workspace_root.

summarize_tolerance_analysisSummarize Tolerance AnalysisC
Read-onlyIdempotent

Summarize min, max, and mean of a stepped trace.

Inputs: signal (required), raw_path (required), workspace_root.

validate_topology_contributionValidate Topology ContributionC
Read-onlyIdempotent

Check that a contribution JSON object has the required keys.

Inputs: payload (required).

write_workspace_text_fileWrite Workspace Text FileC

Write a text file inside the workspace.

Inputs: content (required), relative_path (required), workspace_root.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    C2.4/5.0

    Scored across 145 tools

    Disambiguation2/5

    145 tools include many overlapping run/prepare/measure/export operations (e.g., run_simulation, submit_batch, submit_remote_simulation; prepare_ac vs add_instruction). While names are descriptive, an agent will struggle to choose the right tool for a given task.

    Naming Consistency5/5

    All tool names use snake_case with a leading verb (add_, get_, list_, prepare_, run_, etc.), forming a consistent verb_noun pattern. No camelCase or mixed conventions.

    Tool Count1/5

    145 tools is extreme for any MCP server, far exceeding the 50+ threshold for mismatch. Many tools are thin wrappers around specific SPICE directives or analysis types, bloating the surface.

    Completeness4/5

    The surface covers schematic editing, simulation setup, execution, batch/remote runs, analysis, and export comprehensively. Minor gaps exist, such as no direct schematic deletion or fully supported live GUI control, but core workflows are complete.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      Enables AI assistants to perform Electronic Design Automation (EDA) tasks including Verilog synthesis, simulation, ASIC design flows, and waveform analysis through a unified interface.
      6
      ISC
    • A
      license
      A
      quality
      B
      maintenance
      An MCP server that connects LLM assistants to real circuit simulation: LTspice and ngspice, plus direct editing of LTspice .asc schematics. Simulation results come back as structured numbers so the assistant can design, verify, and iterate on circuits.
      48
      553 PyPI
      70
      GPL 3.0
    • A
      license
      Not graded
      quality
      D
      maintenance
      Generates, simulates, and inspects LTspice circuits via MCP tools and resources, providing structured JSON interfaces for AI agents.
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Gives coding agents structured access to an EDA toolchain so they can lint, simulate, formally verify, synthesize, place and route, program a board and read its UART. Returns parsed results (errors with file and line, timing per clock, utilization, inferred memories, counterexample traces) instead of raw logs, closing the run-simulate-fix loop without copy-paste.
      46 PyPI
      13
      AGPL 3.0