Simengine logo

Simengine

Runs configurable Monte Carlo simulations, evaluates risk, and optimizes decisions through MCP or a local Python web UI.

Install Simengine

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "simengine": {
      "command": "uvx",
      "args": [
        "simengine-mcp"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

The simengine MCP server connects AI agents to a domain-agnostic Monte Carlo engine for simulating uncertain outcomes, evaluating safety constraints, and optimizing decisions. It accepts JSON-defined variables, controls, logic, metrics, and risk tolerances, then runs thousands of simulated futures and returns structured results. Reach for it when a decision model needs probability distributions, scenario analysis, Bayesian updates, or constraint-aware optimization rather than deterministic calculations. The package runs with Python 3.8+ and can be installed through uvx without additional dependencies.

Use cases

  • Model business, investment, or project outcomes under uncertainty
  • Evaluate chance and CVaR constraints before choosing a strategy
  • Optimize tunable controls against configured fitness scores
  • Update probability models with observed evidence
  • Compare simulated scenarios and inspect input sensitivity

Key features

  • JSON-defined Monte Carlo simulations
  • Chance and CVaR safety constraints
  • Genetic optimization of tunable controls
  • Bayesian conjugate updating
  • Convergence and sensitivity diagnostics
  • Local web UI and structured simulation API

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

5/5 checks healthy over the last 41d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 15d ago via OSV.dev · simengine-mcp (PyPI)

How Simengine works

What simengine MCP server does

The simengine MCP server gives an AI agent access to configurable Monte Carlo decision modeling. A model is described in JSON, including uncertain parameters, operator-controlled variables, external factors, starting state, per-step calculations, accumulators, final metrics, safety rules, and optimization settings. The engine can run 5,000 or more simulated futures for a selected time horizon and score the resulting outcomes.

The system supports common probability models including fixed values, uniform, triangular, normal, lognormal, Bernoulli, Poisson, Student's t, and correlated normal distributions. Configurations can represent business pipelines, portfolios, job searches, project timelines, rental properties, or SaaS growth, while the schema is general enough for other domains.

Risk evaluation includes chance constraints and CVaR constraints. When controls are marked as tunable, the genetic optimizer can search for better outcomes using selection, crossover, mutation, elitism, and tournament selection. Bayesian updating supports Beta-Binomial, Gamma-Poisson, and Normal-Normal conjugate updates for incorporating observed evidence.

How it works

The simengine MCP server uses a JSON configuration as the model contract. Each simulation samples the configured variables, executes the step logic over the requested number of steps, updates accumulators, and calculates final metrics. A random seed can be supplied when reproducible runs are needed.

Diagnostics provide convergence analysis, one-at-a-time sensitivity analysis, and comparison with a deterministic baseline. The project also includes a forecast ledger and calibration workflow using Brier score, log-loss, and CRPS, with an offline backtest based on committed public FRED snapshots.

The repository's local web application runs from v3/server.py on port 8420. Its interface includes histograms, trajectory bands, risk gauges, scenario comparisons, a domain wizard, Bayesian update controls, and standalone HTML report export. Agents can also post an inline configuration to /api/simulate, so a model does not need to create a file first.

Setup and configuration

For MCP use, install or run the package with:

bash
uvx simengine-mcp

The repository's baseline engine requires Python 3.8 or newer and uses only the Python standard library. The local interface can be started with:

bash
cd v3
python3 server.py

The JSON Schema is available from GET /api/schema. Use it to validate or generate configurations containing fields such as parameters, controls, exogenous, step_logic, metrics, safety, fitness, and tunable.

Optional Rust components can accelerate metric reducers, trajectory bands, risk evaluation, histograms, and some numeric sampling. They require building the PyO3 extension with maturin; the Python implementation remains the fallback when the native module is unavailable.

Tools and capabilities

The simengine MCP server is suited to workflows that need to:

  • Run repeated simulations over uncertain inputs.
  • Measure probabilities, tail losses, and other configured metrics.
  • Compare scenarios, control values, and input changes.
  • Search tunable controls for higher fitness subject to safety bounds.
  • Update distributions with supported Bayesian conjugate methods.
  • Diagnose convergence and identify influential inputs.
  • Generate structured results for an AI agent through the simulation API.

Expression caching is enabled for repeated expressions and for the diagnostics evaluator. Native sampling and expression paths can be disabled for benchmarking or troubleshooting through the documented environment variables.

Limitations and notes

The model author must provide valid JSON configuration, distributions, step logic, metrics, and safety or fitness definitions. The engine does not supply domain assumptions automatically; shipped examples and the template are starting points rather than a substitute for calibrated inputs.

The native acceleration path is optional and selective. Its batch sampler applies only to plain numeric variable parameters and remains disabled for correlated configurations. General expression evaluation, accumulators, and metrics continue to use Python even when the extension is installed. No hosted endpoint is available directly from the documented local setup; the README only identifies a waitlist for a hosted, no-install endpoint.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Simengine

simengine is an MCP server that connects AI agents to a domain-agnostic Monte Carlo engine. Its main tools and workflows simulate uncertain futures, evaluate chance and CVaR safety constraints, optimize tunable controls with a genetic algorithm, and update supported probability distributions with Bayesian evidence supplied through JSON configurations.

Install or run it with `uvx simengine-mcp`. The baseline engine uses Python 3.8 or newer and has no required third-party dependencies. You can also clone the repository and start its local web UI with `cd v3 && python3 server.py`.

simengine uses a JSON domain configuration. The schema covers variables, controls, external factors, initial state, step logic, accumulators, metrics, safety constraints, fitness, tunable fields, context, and calibration. The live schema is available at `GET /api/schema`.

Yes. Mark decision variables as tunable and define fitness and safety settings in the JSON configuration. The genetic optimizer uses selection, crossover, mutation, elitism, and tournament selection while respecting configured chance constraints and CVaR limits.

No. The default implementation is pure Python and runs without the native extension. An optional Rust and PyO3 workspace can accelerate selected reducers, risk calculations, histograms, and numeric sampling; the engine falls back to Python if the module is missing.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewSimengine AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/simengine?style=directory)](https://allmcps.com/mcp/simengine)
HTML Embed
<a href="https://allmcps.com/mcp/simengine"><img src="https://allmcps.com/api/badge/simengine?style=directory" alt="Simengine on AllMCPs" /></a>