Skip to content
Projects

yxy050208/multisim-mcp has 39 GitHub stars and 7 forks. GitHot measured +2 stars in 24 hours and +6 in 7 days. Last checked 2026-11-12 17:59 UTC. Last push 2026-11-02.

How these counts are measured

Unofficial MCP server for AI-driven NI Multisim circuit generation, simulation, data export, and reports

39 stars7 forks +2 in 24h

Measured star growth

in 24h
+2
in 7 days
+6
in 15 days
Update delayed
in 1 month
Update delayed

Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.

README.en.md

Original

Multisim MCP + Skills

Glama MCP server score DeepSeek Harness npm bundle

中文 | English (current)

An unofficial local MCP server that lets an AI agent generate editable NI Multisim circuits from constrained SPICE input, run experiments, export data, and create reproducible reports.

The release/v1.3.0 branch is completing the stable-release gates. PyPI, MCP Registry, GitHub, and npm metadata will be verified independently after publication. This project is not affiliated with or endorsed by NI. A locally installed and licensed Multisim 14+ environment is required. The COM runs in an isolated 32-bit Python worker; the MCP frontend may use either 32-bit or 64-bit Python.

Current main status (2026-10-09): the source branch has completed native Multisim 14.3 acceptance for the two-board digital regression, covering split_logic_load, split_mixed_logic, HDR1X4 pin checks, cross-board interfaces, a remote 1 kΩ load, and DC/TRAN/AC. This remains source-candidate functionality; see the regression evidence. The historical v1.2.0 release remains available while the v1.3.0 publication is prepared.

v1.2.0 is the frontend-free MCP Core release. It contains the Python MCP server, CLI, EDA core, model/DeepSeek adapters, tests, documentation, and optional loopback bridge APIs. It deliberately excludes the independently developed React Workbench. GitHub, PyPI, and the MCP Registry all publish v1.2.0.

The completed development phases and release gates are recorded in the 1.0 roadmap.

PyPI package · Official MCP Registry entry · 1.3.0 release notes

The v1.2.0 release exposes 78 tools, 20 resource templates, and five bilingual prompts. It adds approval-gated design planning, diagnosis and patch evaluation, global optimization, autonomous correction, Multisim/ngspice differential validation, and recoverable jobs. See the release notes.

The 1.3.0 release branch currently exposes 123 tools in its full profile. The public package and registry publication remain separate release steps.

The release branch has passed the local public-artifact and target compatibility checks. The final Windows/Linux CI run and the PyPI, MCP Registry, and npm publication checks remain required before calling 1.3.0 publicly released.

End-to-end workflow

run_circuit_experiment uses one validated source netlist to:

  1. validate the circuit and analysis commands;
  2. generate an editable .ms14 schematic;
  3. open and reverse-verify it in real Multisim;
  4. export the schematic as PNG;
  5. run operating-point, DC, AC, or transient analysis;
  6. export raw data, CSV, SVG plots, and command logs; and
  7. generate Markdown, standalone bilingual HTML/PDF reports, and a SHA-256 manifest.json.

For longer experiments, use the durable submit_circuit_experiment workflow. It returns a job_id immediately; get_experiment_job, list_experiment_jobs, cancel_experiment_job, retry_experiment_job, and multisim://jobs/{job_id} expose progress, cancellation, and safe retries. Each job runs in an isolated job subprocess, while every Multisim COM/codec operation crosses a stateful 32-bit worker boundary. A crash, RPC timeout, or heartbeat timeout does not take down the MCP frontend; the COM worker restarts on a later call and interrupted jobs are safely requeued after restart.

Version 1.0 adds computable design verification and batch experiments:

  • run_verified_circuit_experiment accepts a versioned ExperimentSpec, measures time-domain frequency, THD, gain, bandwidth, cutoff, rise time, overshoot, ripple, and power, then persists per-requirement pass, fail, or unverified evidence in verification.json and the Markdown report.
  • measure_experiment and verify_experiment_requirements recompute metrics for registered experiments. Missing signals or evidence remain unverified; the server does not infer a result.
  • plan_experiment_sweep, run_experiment_sweep, and submit_experiment_sweep support parameter, tolerance, temperature, and seeded Monte Carlo sweeps. A hard limit of 100 runs applies, and durable sweeps reuse cancellation, timeouts, worker recovery, and output leases.
  • Sweeps export summary.json, flat data.csv, and per-run raw artifacts via multisim://sweeps/{sweep_id}/summary|data.

Real Multisim 14.3 regressions cover resistor dividers, coupled inductors, digital truth tables, JK timing, and a combined function-generator/oscilloscope experiment.

The current main branch also includes a two-board complex-digital regression. split_logic_load and split_mixed_logic divide the design across logic and io boards and verify the cross-board clk/data interface, an accepted HDR1X4 connector, explicit boundary fixtures, a remote 1 kΩ load, and complete DC, TRAN, and AC sampling. Six native runs on Windows 11 with Multisim 14.3 and a locally licensed component pack were accepted/native-verified, including generation, save/reopen, ReportNetlist, pin-by-pin connector checks, layout, interface comparison, and report export. This evidence covers the stated fixtures, component families, and Multisim 14.3 only; other connectors, versions, or more complex multi-board topologies require separate manifests and native acceptance.

Version 1.0 also adds portable models without redistributing NI database assets:

  • transformer, potentiometer, relay, crystal, power-diode, and power-MOS macros;
  • D/T flip-flops, four-bit counter/shift-register, and one-bit ADC/DAC macros;
  • data-backed multimeter, Bode, and logic-analyzer tools; and
  • standalone Chinese/English HTML/PDF reports plus a reproducibility manifest.

See the adapter API and compatibility matrix for syntax and evidence levels. The 1.0 regressions additionally cover portable adapter open/export, transformer transient, relay and power-device operating points, crystal AC, DFF transient behavior, and the complete bilingual-report transaction.

Capability

Stable:

  • local MCP stdio lifecycle and 32-bit runtime diagnostics;
  • circuit open/save/enumeration and image/netlist/BOM export;
  • DC, AC, transient, waveform injection, and RLC read/write;
  • safe SPICE subset execution and raw/CSV/SVG/report generation.
  • durable experiment queueing, progress/cancellation/timeouts, output leases, and crash/hang worker recovery.
  • versioned measurements, strict requirement verdicts, and four deterministic sweep modes.
  • versioned project, experiment, and optimization directory manifests with revision tracking, lifecycle state, and SHA-256 integrity verification.

Experimental but verified:

  • editable R/L/C, source, B/E/F/G/H, K/T/O/U, semiconductor, switch, five-terminal op-amp, and 2-16-terminal generic subcircuit schematics;
  • recursive editable expansion for compatible inline vendor .subckt models, including nested dependencies, local nodes, and PARAMS: overrides, with machine-readable complete/partial/carrier-only coverage;
  • NOT/AND/OR/NAND/NOR/XOR/XNOR and JK preview symbols with real timing data;
  • native XFG function-generator and four-channel XSC oscilloscope state.

See component coverage for precise boundaries. See vendor macro-model compatibility for the editable-expansion and safe-file boundary. See workspace manifests for the persistent directory schema and integrity contract.

Public-release asset policy

Project-owned code is MIT licensed. XML templates derived from locally licensed NI samples are not covered by that code license and must not be uploaded without a separate redistribution review. The public repository should contain the extractor, manifest, code, tests, and documentation—not extracted samples, decoded designs, type-library dumps, experiment output, or development wheels.

Users generate a local component pack from their own installation:

$env:PYTHONPATH = (Resolve-Path .\mcp_server).Path
C:\path\to\python32\python.exe .\tools\bootstrap_local_component_pack.py `
  --output C:\MultisimMcp\component-pack
$env:MULTISIM_MCP_TEMPLATE_DIR = 'C:\MultisimMcp\component-pack'

The pack generator connects to licensed Multisim and creates one temporary blank circuit so the structural template matches the installed version. Save open work before running it. Schema-1 packs generated by alpha releases must be rebuilt.

See the publishing guide and third-party notices.

Quick start

The simplest compatible deployment still installs into 32-bit Python:

C:\path\to\python32\python.exe -m pip install "multisim-mcp==1.1.0"
C:\path\to\python32\Scripts\multisim-mcp.exe

Alternatively, install the MCP frontend in 64-bit Python and retain a separate 32-bit Python containing this package and pywin32. The Windows py launcher is auto-detected, or configure the worker explicitly:

$env:MULTISIM_MCP_WORKER_PYTHON = 'C:\path\to\python32\python.exe'
C:\path\to\python64\python.exe -m multisim_mcp.server

Linux and Docker provide MCP tool discovery and compatibility diagnostics only; they cannot run Multisim simulations. runtime_status reports introspection-only in the container, while every COM automation capability continues to require the Windows environment described above. The root Dockerfile exists for registries such as Glama to validate the protocol and tool definitions.

To build a user-local component pack, install from source and run:

cd mcp_server
.\setup.ps1 -Python C:\path\to\python32\python.exe
npm install --global [email protected]
.\run_server.ps1

Version v1.1.0 includes diagnostic and configuration commands. By default, they do not start Multisim or modify an existing client configuration:

C:\path\to\python32\Scripts\multisim-mcp.exe doctor --lang en
C:\path\to\python32\Scripts\multisim-mcp.exe doctor --lang en --connect
C:\path\to\python32\Scripts\multisim-mcp.exe --json doctor

# Print a Claude Desktop JSON fragment.
C:\path\to\python32\Scripts\multisim-mcp.exe config `
  --client claude-desktop `
  --python C:\path\to\python32\python.exe `
  --template-dir C:\MultisimMcp\component-pack

# Print a Codex config.toml fragment.
C:\path\to\python32\Scripts\multisim-mcp.exe config `
  --client codex `
  --python C:\path\to\python64\python.exe `
  --worker-python C:\path\to\python32\python.exe `
  --template-dir C:\MultisimMcp\component-pack

# Print a DeepSeek Harness Cordis plugin fragment.
C:\path\to\python32\Scripts\multisim-mcp.exe config `
  --client deepseek-harness `
  --python C:\path\to\python32\python.exe `
  --template-dir C:\MultisimMcp\component-pack `
  --work-dir C:\msre_exp `
  --artifact-export-dir C:\MultisimMcp\exports `
  --tool-profile experiment

# Install the five bilingual experiment skills from a Harness project root.
C:\path\to\python32\Scripts\multisim-mcp.exe harness-skills --output .dsh/skills

# Discover and safely preview model-provider settings (no write, no network).
C:\path\to\python32\Scripts\multisim-mcp.exe configure --auto --json

# Persist environment-variable references after reviewing the preview.
C:\path\to\python32\Scripts\multisim-mcp.exe configure --auto --apply

# Make one explicit, tool-free request from a UTF-8 file.
C:\path\to\python32\Scripts\multisim-mcp.exe model `
  --input .\prompt.txt `
  --json

# Explicitly enable four read-only EDA tools over a safely parsed SPICE file.
C:\path\to\python32\Scripts\multisim-mcp.exe model-diagnose `
  --input .\diagnosis-prompt.txt `
  --netlist .\circuit.cir `
  --json

The generator prints a copy-pasteable fragment by default. --output writes a new file and refuses to replace one unless --force is also present. It never merges into a live Claude Desktop, Codex, or Harness configuration automatically. See the DeepSeek / Harness integration guide for the credential boundary and compatibility baseline. --tool-profile core|experiment|optimization|full limits tool discovery; omitting it preserves the 122-tool full compatibility mode. Artifact export is disabled unless --artifact-export-dir explicitly approves a destination root. The Harness skill installer preserves existing files unless --force is explicit. Model-provider self-configuration supports DeepSeek, OpenAI, Ollama, and custom OpenAI-compatible services. It previews by default, writes only with --apply, and connects only with --probe; API key values are never stored. See the bilingual provider configuration guide. The first provider runtime supports bounded non-streaming Chat Completions, usage, cancellation, explicit failover, and an allowlisted tool loop. The ordinary model command exposes no tools. The separate model-diagnose command enables four fixed read-only EDA tools over strict CircuitDesign JSON or safely parsed SPICE; it cannot simulate or mutate a design. See the runtime guide and read-only diagnosis guide. Repository maintainers can validate the pinned local Harness contract with python tools/check_deepseek_harness_compat.py --json. The independently installable bundle under integrations/deepseek-harness is published as [email protected]. Install the pinned release with dsh plugin --profile web add [email protected]. Maintainers should follow the npm release guide for post-publication Trusted Publishing and later OIDC-staged updates.

Manual MCP client configuration:

{
  "mcpServers": {
    "multisim": {
      "command": "C:\\path\\to\\python32\\python.exe",
      "args": ["-m", "multisim_mcp.server"],
      "env": {
        "MULTISIM_MCP_TEMPLATE_DIR": "C:\\MultisimMcp\\component-pack"
      }
    }
  }
}

Security

Only op, dc, ac, and tran are accepted by default. Arbitrary Multisim command files are opt-in and disabled for normal use. Run this MCP only as a trusted local stdio service; do not expose it directly to a network.

See SECURITY.md.

Alpha users should read the 1.0 migration guide. Durable-job and artifact recovery procedures are documented in the recovery guide. The diagnosis, optimization, multi-EDA, and visual-workbench direction is documented in the 2.0 roadmap. The first transport- neutral EDA core and backend boundary and limited-SPICE adapter are now available. Schematic generation and standalone SPICE simulation plus synchronous, verified, and durable-worker complete experiments are routed through application services while existing MCP signatures and persisted-job formats remain compatible. Experiment staging, reporting, atomic publication, and rollback now live in an independent injectable pipeline. The stable response contract for DeepSeek Harness, other Agents, and the future Workbench is documented in the Agent API contract and is available from runtime_status.api_contract. The product direction, approval-gated workflow, minimal UI principles, and the AI engineering circuit control-plane positioning are documented in the Product Vision.

License

Project-owned code is available under the MIT License. NI Multisim, trademarks, file formats, installed samples, and third-party models remain subject to their respective terms.

Explore related projects