# Multisim MCP (pypi · multisim-mcp)

Generate Multisim circuits, run simulations, export data, and create experiment reports.

- Trust score: 64/100 (medium)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-20

## Components

- pypi · `multisim-mcp`: 64/100 (this document), [markdown](https://verifymcp.io/servers/yxy050208-multisim-mcp/multisim-mcp.md), [page](https://verifymcp.io/servers/yxy050208-multisim-mcp/multisim-mcp)

## Channel facts

- Registry: `pypi`
- Package: `multisim-mcp`
- Version: `1.0.0`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-20.

- **Supply Chain Security**: 82/100
  - No malware found by supply-chain analysis.
  - CVE check failed: a known high-severity CVE affects cryptography 48.0.1, a direct dependency. A fixed version is available.
  - Runs setuptools.build_meta at install time, a recognised native-build step with no shell scripting around it.
  - 2 of 33 dependencies flagged as unhealthy.
- **Provenance & Transparency**: 35/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - License check failed: no license is declared.
  - Actively maintained (last published 10 days ago).
  - Publishes a security disclosure policy (SECURITY.md).
- **Schema Quality & AI Usability**: 72/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (fair).
  - Tool/resource definitions use about 2546 tokens (~49/item across 51 items; 51 tools + 0 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 40/100
  - Stability observed for 12 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 71/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 0% of tool parameters carry a description.
  - Structured output schemas are declared (37% of tools); any adoption earns full credit.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (2026-07-28).

## Install

### Claude

```bash
claude mcp add yxy050208-multisim-mcp -- uvx multisim-mcp
```

### Codex

```bash
codex mcp add yxy050208-multisim-mcp -- uvx multisim-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "yxy050208-multisim-mcp": {
      "type": "local",
      "command": [
        "uvx",
        "multisim-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add yxy050208-multisim-mcp --command uvx --arg multisim-mcp
```

### Hermes

```yaml
mcp_servers:
  yxy050208-multisim-mcp:
    command: "uvx"
    args: ["multisim-mcp"]
```

### Other

```json
{
  "mcpServers": {
    "yxy050208-multisim-mcp": {
      "command": "uvx",
      "args": [
        "multisim-mcp"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-19 (score 64, +1)

No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-08-17 (score 63, +1)

No change was recorded against any check on this day. Stability & Change Management went from 27 to 30. That category is still filling its 30-day observation window: 8 days of observed history at the previous scan, 9 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-08-15 (score 62, +1)

No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-08-13 (score 61, +1)

No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-08-11 (score 60, +2)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-08-09 (score 58, −1)

- [security regression] CVE-2026-69248 affects this package: high
- [security regression] CVE-2026-69247 affects this package: high
- [security regression] CVE-2026-69249 affects this package: high
- [security regression] Malware scan: pass → unverified
- [security regression] Known CVEs: pass → fail
- [functional regression] Schema quality: 1575 → 2546
- [functional improvement] Stability: unverified → 0.03
- [functional] First check of Tool coverage: 37
- [functional] First check of Schema quality: 100
- [functional] MCP protocol: Implements a current MCP spec version (2026-07-28).
- [functional] Package version: 0.1.0a2 → 1.0.0
- [functional] Package version: 0.1.0a2 → 0.1.0a3

### 2026-08-08 (score 59)

First indexed and scored.

## MCP tools (51)

### `connect` (~16 tokens)

Connect to the local Multisim Automation API.

### `runtime_status` (~18 tokens)

Check platform and Python compatibility without starting Multisim.

### `register_experiment_artifacts` (~53 tokens)

Register an existing complete experiment directory as MCP Resources.

Use this after a server restart when the experiment was generated earlier.
Only the fixed high-level experiment artifact set is exposed.

Input parameters:

- `output_dir` (string, required)

Output parameters:

- `experiment_id` (string)
- `output_dir` (string)
- `resources` (object)
- `success` (boolean)

### `register_sweep_artifacts` (~30 tokens)

Register a completed sweep directory and return opaque MCP Resources.

Input parameters:

- `output_dir` (string, required)

### `measure_experiment` (~35 tokens)

Compute explicit metrics from a registered experiment's raw data.

Input parameters:

- `experiment_id` (string, required)
- `measurements` (array, required)

### `read_virtual_multimeter` (~45 tokens)

Read DC, true RMS, AC RMS and range from experiment data.

Input parameters:

- `experiment_id` (string, required)
- `reference_signal`
- `signal` (string, required)

### `analyze_bode_response` (~62 tokens)

Use the Bode Plotter adapter on an AC-sweep experiment.

Input parameters:

- `experiment_id` (string, required)
- `frequency_signal`
- `input_signal` (string, required)
- `max_points` (integer)
- `output_signal` (string, required)

### `analyze_logic_signals` (~59 tokens)

Use the Logic Analyzer adapter to digitize traces and list edges.

Input parameters:

- `experiment_id` (string, required)
- `max_events` (integer)
- `signals` (array, required)
- `threshold` (number)
- `time_signal`

### `export_formal_experiment_report` (~32 tokens)

Export bilingual HTML/PDF reports and a reproducibility manifest.

Input parameters:

- `experiment_id` (string, required)

### `component_adapter_catalog` (~20 tokens)

List portable built-in and local declarative component adapters.

### `verify_experiment_requirements` (~43 tokens)

Evaluate explicit design requirements; unsupported evidence stays unverified.

Input parameters:

- `experiment_id` (string, required)
- `requirements` (array, required)
- `theoretical_values`

### `plan_experiment_sweep` (~32 tokens)

Validate and preview parameter, tolerance, temperature, or Monte Carlo runs.

Input parameters:

- `spec` (object, required)

### `submit_circuit_experiment` (~150 tokens)

Queue a durable, cancellable experiment in an isolated worker process.

Prefer this tool for long experiments. Poll ``multisim://jobs/{job_id}`` or
call ``get_experiment_job``. Completed jobs return the same experiment
result and resource handles as ``run_circuit_experiment``.

Input parameters:

- `commands` (string, required)
- `heartbeat_timeout` (number)
- `job_timeout` (number)
- `max_points` (integer)
- `netlist` (string, required)
- `output_dir` (string, required)
- `overwrite` (boolean)
- `requirements`
- `theoretical_values`
- `timeout` (number)
- `title` (string)

Output parameters:

- `job_id` (string)
- `output_dir` (string)
- `state` (string)
- `status_uri` (string)
- `success` (boolean)

### `get_experiment_job` (~30 tokens)

Return durable progress, failure diagnostics, or the completed result.

Input parameters:

- `job_id` (string, required)

### `list_experiment_jobs` (~35 tokens)

List recent durable jobs without returning their potentially large results.

Input parameters:

- `limit` (integer)
- `state` (string)

### `cancel_experiment_job` (~30 tokens)

Cancel a queued job or safely stop its isolated worker process.

Input parameters:

- `job_id` (string, required)

### `retry_experiment_job` (~34 tokens)

Queue a fresh attempt using a failed, cancelled, or timed-out job spec.

Input parameters:

- `job_id` (string, required)

Output parameters:

- `job_id` (string)
- `output_dir` (string)
- `state` (string)
- `status_uri` (string)
- `success` (boolean)

### `schematic_component_catalog` (~19 tokens)

List native component families available to the schematic generator.

### `disconnect` (~17 tokens)

Disconnect from Multisim and release the open circuit.

### `open_circuit` (~27 tokens)

Open a Multisim design file and return circuit info.

Input parameters:

- `path` (string, required)

### `new_circuit` (~17 tokens)

Create a new empty Multisim design.

### `circuit_info` (~24 tokens)

Return name, file, simulation state, and last error for the open circuit.

### `enum_components` (~27 tokens)

List component reference designators. 0 returns all.

Input parameters:

- `component_type` (integer)

### `enum_inputs` (~25 tokens)

List simulation inputs. 0 returns all.

Input parameters:

- `input_type` (integer)

### `enum_outputs` (~25 tokens)

List simulation outputs. 0 returns all.

Input parameters:

- `output_type` (integer)

### `set_output_request` (~56 tokens)

Configure an output request before RunSimulation.

Input parameters:

- `method` (integer)
- `num_samples` (integer)
- `output_name` (string, required)
- `repeat_flag` (boolean)
- `sample_rate` (number)

### `get_output_data` (~40 tokens)

Fetch data for an output that is ready; shape depends on analysis type.

Input parameters:

- `max_points` (integer)
- `output_name` (string, required)

### `run_transient` (~77 tokens)

Run a transient simulation and return downsampled time/real data.

Input parameters:

- `duration` (number)
- `max_points` (integer)
- `num_samples` (integer)
- `output_name` (string, required)
- `repeat_flag` (boolean)
- `sample_rate` (number)
- `timeout` (number)

### `run_dc_operating_point` (~44 tokens)

Run DC operating point analysis for the given outputs.

Input parameters:

- `max_points` (integer)
- `output_names` (array, required)
- `timeout` (number)

### `run_ac_sweep` (~77 tokens)

Run AC sweep and return frequency/real/imag rows.

Input parameters:

- `max_points` (integer)
- `num_points` (integer)
- `output_names` (array, required)
- `start_frequency` (number)
- `stop_frequency` (number)
- `sweep_type` (integer)
- `timeout` (number)

### `run_ac_single_frequency` (~48 tokens)

Run AC analysis at a single frequency.

Input parameters:

- `frequency` (number)
- `max_points` (integer)
- `output_names` (array, required)
- `timeout` (number)

### `set_input_data_sampled` (~51 tokens)

Inject a sampled waveform into a simulation input.

Input parameters:

- `input_name` (string, required)
- `repeat_flag` (boolean)
- `sample_rate` (number, required)
- `values` (array, required)

### `set_input_data_raw` (~54 tokens)

Inject a raw (time, value) waveform into a simulation input.

Input parameters:

- `input_name` (string, required)
- `repeat_flag` (boolean)
- `times` (array, required)
- `values` (array, required)

### `clear_input_data` (~25 tokens)

Clear injected data from a simulation input.

Input parameters:

- `input_name` (string, required)

### `stop_simulation` (~15 tokens)

Stop the currently running simulation.

### `save_circuit` (~24 tokens)

Save the circuit, optionally to a new path.

Input parameters:

- `path`

### `get_circuit_image` (~33 tokens)

Export the circuit schematic as an image.

Input parameters:

- `image_format` (integer)
- `path` (string, required)

### `report_netlist` (~42 tokens)

Export the SPICE netlist to a text file.

Input parameters:

- `fmt` (integer)
- `path` (string, required)
- `probes_flag` (boolean)

### `report_bom` (~41 tokens)

Export the bill of materials to a text file.

Input parameters:

- `fmt` (integer)
- `path` (string, required)
- `real_flag` (boolean)

### `do_command_line` (~60 tokens)

Run an unrestricted Multisim command file when explicitly enabled.

This advanced tool is disabled by default because command files can access
the filesystem and may expose engine-specific command execution features.

Input parameters:

- `command_file` (string, required)
- `log_file` (string, required)

### `run_spice_netlist` (~128 tokens)

Run a SPICE netlist with safe ``op``, ``dc``, ``ac``, or ``tran`` commands.

The default path rejects scripting, shell escapes, file commands, and
arbitrary command sourcing. Unrestricted engine commands require both the
\``unsafe_commands`` argument and an explicit server-side environment flag.

Input parameters:

- `commands` (string, required)
- `max_points` (integer)
- `netlist` (string, required)
- `output_dir`
- `overwrite` (boolean)
- `timeout` (number)
- `unsafe_commands` (boolean)

### `create_schematic_from_netlist` (~217 tokens)

Create an editable Multisim schematic from a limited SPICE netlist.

Version 0.1 supports RLC components, scalar/waveform voltage and current
sources, B/E/F/G/H/T primitives, modeled diodes, BJT, MOSFET, JFET, MESFET,
voltage switches, OPAMP5, generic two-to-five-terminal X subcircuits, ground,
named nets, wiring, and deterministic layout. Several extended families use
verified generic carrier symbols while retaining native SPICE behavior.
NOT/AND/OR/JK digital parts are schematic-preview maturity.
Generated schematic probes
remain experimental; the high-level experiment tool obtains authoritative
data from the same netlist through Multisim's command engine.

Input parameters:

- `image_path`
- `include_experimental_probes` (boolean)
- `netlist` (string, required)
- `open_after_build` (boolean)
- `output_ms14` (string, required)
- `overwrite` (boolean)
- `probe_nets`

### `run_circuit_experiment` (~111 tokens)

Create a schematic, run a safe Multisim analysis, and export a report.

This synchronous compatibility tool blocks until completion. For queueing,
progress, cancellation, persisted state, and worker recovery, prefer
\``submit_circuit_experiment``.

Input parameters:

- `commands` (string, required)
- `max_points` (integer)
- `netlist` (string, required)
- `output_dir` (string, required)
- `overwrite` (boolean)
- `timeout` (number)
- `title` (string)

Output parameters:

- `experiment_id` (string)
- `output_dir` (string)
- `plot` (string)
- `report` (string)
- `resources` (object)
- `schematic` (object)
- `simulation` (object)
- `success` (boolean)

### `run_verified_circuit_experiment` (~59 tokens)

Run an ExperimentSpec and persist evidence-backed requirement verdicts.

Input parameters:

- `max_points` (integer)
- `output_dir` (string, required)
- `overwrite` (boolean)
- `spec` (required)
- `timeout` (number)

Output parameters:

- `experiment_id` (string)
- `output_dir` (string)
- `plot` (string)
- `report` (string)
- `resources` (object)
- `schematic` (object)
- `simulation` (object)
- `success` (boolean)
- `verification` (object)
- `verification_path` (string)

### `run_experiment_sweep` (~64 tokens)

Run a transactional parameter, tolerance, temperature, or Monte Carlo sweep.

Input parameters:

- `max_points` (integer)
- `output_dir` (string, required)
- `overwrite` (boolean)
- `spec` (object, required)
- `timeout_per_run` (number)

### `submit_experiment_sweep` (~80 tokens)

Queue a durable sweep in the same isolated, cancellable worker system.

Input parameters:

- `heartbeat_timeout` (number)
- `job_timeout` (number)
- `max_points` (integer)
- `output_dir` (string, required)
- `overwrite` (boolean)
- `spec` (object, required)
- `timeout_per_run` (number)

Output parameters:

- `job_id` (string)
- `output_dir` (string)
- `state` (string)
- `status_uri` (string)
- `success` (boolean)

### `generate_report` (~66 tokens)

Write a Markdown report for the open circuit and analysis results.

Input parameters:

- `analyses`
- `include_bom` (boolean)
- `include_image` (boolean)
- `include_netlist` (boolean)
- `output_path` (string, required)
- `title` (string)

### `get_rlc_value` (~33 tokens)

Read the current value of an R/L/C component through RLCValue.

Input parameters:

- `component_name` (string, required)

### `set_rlc_value` (~38 tokens)

Set an R/L/C component value through SetRLCValue.

Input parameters:

- `component_name` (string, required)
- `value` (number, required)

### `decode_ms14` (~35 tokens)

Decode a .ms14 file to editable XML using ewd.

Input parameters:

- `output_xml`
- `path` (string, required)

### `encode_ms14` (~36 tokens)

Encode an XML design back to .ms14 using ewe.

Input parameters:

- `output_ms14`
- `source_xml` (string, required)

## Diagnostics

Captured diagnostic sections: Provenance, Install scripts, Vulnerabilities, Dependencies. The full working is on the page: https://verifymcp.io/servers/yxy050208-multisim-mcp/multisim-mcp#diagnostics

## Score history

- 2026-08-20: 64
- 2026-08-19: 64
- 2026-08-18: 63
- 2026-08-17: 63
- 2026-08-16: 62
- 2026-08-15: 62
- 2026-08-14: 61
- 2026-08-13: 61
- 2026-08-12: 60
- 2026-08-11: 60
- 2026-08-10: 58
- 2026-08-09: 58
- 2026-08-08: 59

## Links

- PyPI project: https://pypi.org/project/multisim-mcp/
- Socket report: https://socket.dev/pypi/package/multisim-mcp
- Repository: https://github.com/yxy050208/multisim-mcp
- Changelog RSS feed: https://verifymcp.io/servers/yxy050208-multisim-mcp/multisim-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/yxy050208-multisim-mcp/multisim-mcp.json
- HTML version of this page: https://verifymcp.io/servers/yxy050208-multisim-mcp/multisim-mcp
