SPICEBridge
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| 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 |
|---|---|
| create_circuitB | Store a SPICE netlist and return a circuit ID for subsequent analyses. |
| run_ac_analysisC | Run AC analysis on a stored circuit. |
| run_transientC | Run transient analysis on a stored circuit. |
| run_dc_opA | Run DC operating point analysis on a stored circuit. |
| get_resultsB | Return the last simulation results for a circuit. |
| delete_circuitB | Delete a stored circuit and clean up its output directory. |
| draw_schematicA | Generate a schematic diagram from a stored circuit's netlist. When a schematic_url is present in the response, ALWAYS include it as a clickable link in your message to the user. Users cannot see inline images. The schematic_url in the response is a public internet-accessible URL, not a sandbox or localhost URL. Always share it directly with the user. |
| export_kicadB | Export circuit as KiCad 8 schematic (.kicad_sch) file. |
| open_viewerC | Start the interactive web schematic viewer and return its URL. |
| set_portsA | Store port definitions for a circuit. ports maps port names to netlist node names,
e.g. |
| get_portsA | Return port definitions for a circuit, auto-detecting if none are set. |
| connect_stagesA | Compose multiple circuit stages into a single combined circuit. Each element of stages is |
| list_templatesB | List available circuit templates, optionally filtered by category. |
| load_templateA | Load a circuit template and create a circuit from it. If specs is provided, the design-equation solver runs automatically,
results are snapped to E24 standard values, and the netlist |
| modify_componentC | Modify a component value in a stored circuit's netlist. |
| validate_netlistA | Validate the netlist syntax of a stored circuit using ngspice. |
| measure_bandwidthB | Measure the bandwidth (cutoff frequency) of an AC analysis result. Uses -3dB by default; specify threshold_db for custom cutoff levels. |
| measure_gainB | Measure gain and phase at a specific frequency from AC analysis results. |
| measure_dcA | Measure the DC voltage at a specific node from operating point results. |
| measure_transientB | Extract key transient response metrics (rise time, settling time, overshoot). |
| measure_powerB | Measure power consumption from DC operating point results. |
| compare_specsA | Compare simulation results against design specifications. specs format: {"spec_name": {"target": N, "tolerance_pct": P}} or {"spec_name": {"min": N, "max": M}}. |
| calculate_componentsB | Calculate component values for a circuit topology from target specs. |
| auto_designA | Run the full design loop in one call: load template, simulate, and verify. specs uses compare_specs format: {"f_3dB_hz": {"target": 1000, "tolerance_pct": 5}} sim_type is one of "ac", "transient", or "dc". sim_params optionally overrides default simulation parameters. Returns accumulated results including circuit_id, simulation data,
measurements, and spec comparison. On failure at any step, returns
partial results with an When a schematic_url is present in the response, ALWAYS include it as a clickable link in your message to the user. Users cannot see inline images. The schematic_url in the response is a public internet-accessible URL, not a sandbox or localhost URL. Always share it directly with the user. |
| create_modelA | Generate a SPICE .lib model file from datasheet parameters. component_type: "opamp", "bjt", "mosfet", "diode" name: model name (e.g. "OPA2134") parameters: type-specific datasheet values; omitted keys use defaults. |
| list_modelsA | Return all saved SPICE models from the model library. |
| run_monte_carloB | Run Monte Carlo analysis under component tolerances. Randomly varies R/C/L component values within tolerance bands and runs multiple simulations to produce statistical results. analysis_type: "ac", "transient", or "dc_op" tolerances: map component ref or prefix (R/C/L) to tol %. |
| run_worst_caseA | Run worst-case analysis at tolerance extremes. Evaluates component sensitivity and deterministic corner combinations to find true worst-case performance bounds. analysis_type: "ac", "transient", or "dc_op" tolerances: map component ref or prefix (R/C/L) to tol %. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 28 tools
Most tools target distinct operations (specific analysis types, measurements, or actions). However, auto_design overlaps with the combined workflow of load_template, simulation, and compare_specs, which could cause ambiguity for an agent deciding between high-level and individual tools.
All tools follow a consistent verb_noun pattern with underscores (e.g., create_circuit, run_ac_analysis). The only minor deviation is 'auto_design', but it still uses the same imperative style. Overall, naming is predictable and uniform.
28 tools is moderately high for a single server, but the domain of circuit simulation and design justifies many distinct analysis, measurement, and management operations. The count is on the upper end of reasonable but not excessive, as each tool has a clear purpose.
The set covers core design, simulation, and measurement workflows. Notable gaps include the absence of a tool to list stored circuits (agents cannot enumerate existing circuits) and no tool to delete models or update models. These gaps may cause occasional failures.