ltspice-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LTSPICE_BINARY | No | Path to the LTspice binary. | |
| LTSPICE_MCP_HOST | No | Host address for the MCP server. | |
| LTSPICE_MCP_PORT | No | Port number for the MCP server. | |
| LTSPICE_MCP_TIMEOUT | No | Timeout for LTspice operations. | |
| LTSPICE_MCP_WORKDIR | No | Working directory for LTspice MCP. | |
| LTSPICE_MCP_LOG_LEVEL | No | Logging level (e.g., DEBUG, INFO). | |
| LTSPICE_MCP_TRANSPORT | No | Transport mode (e.g., stdio, streamable-http). | |
| LTSPICE_MCP_UI_ENABLED | No | Enable UI integration (default 0). | |
| LTSPICE_MCP_TOOL_LOGGING | No | Enable tool-level logging. | |
| LTSPICE_MCP_JSON_RESPONSE | No | Enable JSON response mode. | |
| LTSPICE_MCP_DAEMON_LOG_DIR | No | Directory for daemon logs. | |
| LTSPICE_MCP_SCK_HELPER_DIR | No | Directory for ScreenCaptureKit helper. | |
| LTSPICE_MCP_STATELESS_HTTP | No | Enable stateless HTTP mode. | |
| LTSPICE_MCP_SCK_HELPER_PATH | No | Path to ScreenCaptureKit helper binary. | |
| LTSPICE_MCP_TOOL_LOG_MAX_CHARS | No | Maximum characters in tool log. | |
| LTSPICE_MCP_TOOL_LOG_MAX_ITEMS | No | Maximum items in tool log. | |
| LTSPICE_MCP_SCHEMATIC_LIVE_PATH | No | Path for live schematic updates. | |
| LTSPICE_MCP_VERIFY_WINDOW_CLOSE | No | Verify window close during operations. | |
| LTSPICE_MCP_STREAMABLE_HTTP_PATH | No | Path for streamable HTTP transport. | |
| LTSPICE_MCP_SCHEMATIC_SINGLE_WINDOW | No | Use single window for schematics. | |
| LTSPICE_MCP_DISABLE_UVICORN_NOISE_FILTERS | No | Disable uvicorn noise filters. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| readAgentGuideC | Read AGENT_README.md through MCP for interactive agent guidance.
|
| parseMeasResultsB | Parse LTspice .meas results from a run log or explicit log path. |
| runMeasAutomationC | Inject .meas directives into a netlist, run simulation, and parse measurement values. |
| runVerificationPlanB | Run simulation (or reuse a run) and evaluate assertion checks in one call. Assertion types:
|
| runSweepStudyC | Run stepped or Monte-Carlo parameter studies and return aggregate metrics. |
| generateVerifyAndCleanCircuitB | One-shot orchestration: create intent circuit, lint, simulate, verify, clean, and inspect. |
| autoCleanSchematicLayoutC | Auto-clean schematic layout and return before/after quality analysis. |
| inspectSchematicVisualQualityC | Inspect schematic visual quality and suggest coordinate-level fixes. |
| daemonDoctorC | Run a daemon/system health check and return actionable recommendations. |
| queueSimulationJobB | Queue a simulation job and return a job id for status polling/cancelation. |
| listJobsC | List queued/running/completed simulation jobs. |
| jobStatusC | Get status for one queued/running/completed simulation job. |
| cancelJobC | Request cancellation for a queued/running job. |
| listJobHistoryB | List archived (terminal) queue jobs retained across daemon restarts. |
| getLtspiceStatusA | Get LTspice executable status and server configuration. |
| getLtspiceUiStatusA | Return whether LTspice UI appears to be running on this machine. |
| getLtspiceLibraryStatusC | Get LTspice symbol library ZIP status and basic counts. |
| listLtspiceLibraryEntriesC | List LTspice symbol ZIP entries (.asy), optionally filtered by query. |
| listLtspiceSymbolsC | List/search LTspice symbols parsed from the symbol library ZIP. |
| getLtspiceSymbolInfoC | Get pin map and metadata for a symbol in LTspice's lib.zip. |
| renderLtspiceSymbolImageC | Render an LTspice symbol to an image and return the image through MCP. The response includes both image content and structured metadata (image_path, bounds, etc.). |
| renderLtspiceSchematicImageC | Render an LTspice schematic (.asc) to an image and return it through MCP.
|
| renderLtspicePlotImageB | Render one or more vectors from a RAW dataset to a plot image and return it through MCP. Supports run_id/raw_path resolution and optional step filtering for stepped runs. pane_layout: single | split | per_trace |
| generatePlotSettingsC | Generate a LTspice .plt file from vectors and return parsed settings for debugging. |
| listPlotPresetsA | List built-in deterministic LTspice plot presets. |
| generatePlotPresetSettingsB | Generate deterministic .plt settings for a named preset. |
| renderLtspicePlotPresetImageC | Render a plot image using a built-in deterministic preset. |
| setLtspiceUiEnabledA | Set default UI behavior for simulation calls where show_ui is omitted. |
| setSchematicUiSingleWindowC | Set whether schematic UI opens reuse a single live schematic path. |
| closeLtspiceWindowA | Close LTspice windows whose title contains title_hint. |
| startLtspiceRenderSessionC | Open an LTspice window once for repeated image rendering. |
| endLtspiceRenderSessionC | Close the LTspice window associated with a render session. |
| openLtspiceUiA | Open LTspice UI on a selected artifact. If
|
| readLtspiceUiTextA | Read visible LTspice window text using macOS Accessibility APIs. Use this to compare parser outputs against text displayed in LTspice UI (for example values shown in log windows). |
| createSchematicC | Create an LTspice .asc schematic from structured component/wire/directive data. Components must include: symbol, reference, x, y. Optional component fields: value, orientation|rotation, attributes, pin_nets. |
| createSchematicFromNetlistB | Create an LTspice .asc schematic from a SPICE netlist using auto-placement/routing. Supports common two-pin primitives (R, C, L, D, V, I) plus multi-pin active elements such as X-subcircuits, BJTs (Q), and MOSFETs (M) when symbols can be resolved. |
| listSchematicTemplatesA | List available schematic templates from the built-in or user-provided JSON file. |
| createSchematicFromTemplateB | Create an LTspice .asc schematic from a JSON template. Templates support type=netlist (auto-layout) and type=spec (explicit placement). |
| listIntentCircuitTemplatesB | List high-level circuit intent templates and default parameters. |
| createIntentCircuitB | Create a circuit from high-level intent templates (filters, amplifier, regulator). Returns schematic and sidecar netlist paths, and optionally validation payload. |
| syncSchematicFromNetlistFileA | Regenerate schematic from a netlist file only when source content changed. Stores sync metadata in JSON so repeated calls are fast and deterministic. |
| watchSchematicFromNetlistFileB | Poll a netlist file and regenerate schematic whenever the netlist changes. Returns update events for each rebuild detected during the watch interval. |
| loadCircuitC | Create a netlist file in the MCP workdir and mark it as the currently loaded circuit. |
| loadNetlistFromFileC | Load an existing netlist file (.cir/.net/.sp/.spi/.sub/.lib/.txt) as the current circuit. |
| runSimulationA | Run LTspice in batch mode for the currently loaded netlist. The ngspice-style |
| simulateNetlistC | Write a netlist and run LTspice batch simulation in one call. |
| simulateNetlistFileC | Run LTspice batch simulation for an existing netlist path. |
| validateSchematicB | Validate a schematic (.asc) for simulation readiness. Checks for components, ground flag, and simulation directives in TEXT commands. |
| lintSchematicC | Run structural lint checks on a schematic, including pin connectivity and dangling wires. |
| simulateSchematicFileC | Run LTspice batch simulation for an existing schematic (.asc) file. Optional preflight validation is included to help agents debug schematics before simulation. |
| resolveSchematicSimulationTargetB | Resolve which file simulateSchematicFile will execute and explain sidecar requirements. |
| scanModelIssuesC | Scan LTspice log text for missing model/include/subcircuit issues. |
| importModelFileC | Import a model file into the MCP workdir for reproducible .include usage. |
| patchNetlistModelBindingsC | Patch netlist model bindings by adding includes and remapping model/subckt names. |
| autoDebugSchematicB | Iteratively validate, simulate, and apply targeted fixes to a schematic until it runs or stalls. |
| getToolTelemetryC | Return rolling performance telemetry for MCP tools. |
| resetToolTelemetryA | Reset rolling performance telemetry for one tool or all tools. |
| tailDaemonLogC | Return tail text from the active daemon log file. |
| getRecentErrorsC | Scan recent daemon logs and return structured error entries. |
| getCaptureHealthC | Summarize ScreenCapture/LTspice capture health from in-process capture events. |
| listRunsA | List recent simulation runs (newest first). |
| getRunDetailsB | Get full details for a run_id, or the latest run if omitted. |
| getPlotNamesA | List LTspice plot names available in one RAW file or all RAW files from a run. |
| getVectorsInfoC | Get detailed information about vectors in a plot. |
| getVectorDataC | Get data for vectors, optionally interpolated at explicit scale points. |
| getLocalExtremaC | Get local minima/maxima for vectors. |
| getBandwidthC | Compute -drop_db bandwidth for an AC response vector. |
| getGainPhaseMarginC | Compute gain and phase margins from an AC loop-gain vector. |
| getRiseFallTimeC | Compute first rise/fall times for a transient response. |
| getSettlingTimeC | Compute settling time to a target within tolerance_percent band. |
| validateLtspiceMeasurementsB | Validate parsed metric endpoints against LTspice-native This reruns the source netlist with generated measurement directives and compares LTspice's own reported values to the server's computed metrics. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| agent_readme | Agent-focused operational guide for this MCP server. |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/xuio/ltspice-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server