Skip to main content
Back to blog
MCP
Marketing Mix Modeling
AI
Open Source
PyMC-Marketing
Claude
Cursor

Introducing the SIMBA MCP Server: Marketing Mix Modeling Meets AI Assistants

Build Bayesian marketing mix models, measure channel ROI, optimize budgets, and run scenario forecasts through natural language in Claude, Cursor, or any MCP-compatible AI assistant.

Niall OultonApril 5, 20266 min read

Today we are releasing the SIMBA MCP Server, an open-source integration that connects AI assistants to our Bayesian Marketing Mix Modeling platform. With a single pip install simba-mcp, you can upload marketing data, build MMM models, analyze channel contributions, optimize budgets, and run scenario forecasts, all through natural language.

The server implements the Model Context Protocol (MCP), the emerging open standard that lets AI assistants call external tools. That means it works out of the box with Cursor IDE, Claude Code, the Claude API, and any other MCP-compatible client.

Why we built this

Marketing mix modeling has traditionally required specialized statistical knowledge, custom code, and long iteration cycles. Even with SIMBA's web platform simplifying the workflow, there is still a gap between asking a question about your marketing data and getting an answer.

MCP closes that gap. Instead of clicking through dashboards, you can simply ask your AI assistant: "Upload this CSV, build a model with TV, Search, and Social as media channels, then show me the ROI by channel." The assistant handles the orchestration, calling the right SIMBA APIs in the right order, and presents the results in a conversational format.

What you can do

The MCP server exposes 11 tools covering the full marketing mix modeling workflow:

ToolWhat it does
get_data_schemaGet the canonical CSV schema for MMM input files
upload_dataUpload a CSV dataset to SIMBA
list_modelsList all models with their status
create_modelConfigure and start fitting a new MMM model
get_model_statusPoll fitting progress for a model
get_model_resultsGet results (ROI, contributions, response curves, diagnostics, and more)
run_optimizerRun budget optimization on a completed model
get_optimizer_resultsGet optimizer status and results
get_scenario_templateGenerate a forward-period template for scenario planning
run_scenarioRun a "what-if" scenario prediction
get_scenario_resultsGet scenario prediction results

These tools chain together naturally. Your AI assistant can run a full end-to-end workflow in a single conversation: ingest data, fit a model, wait for convergence, pull results, and optimize your budget allocation.

Getting started

Install from PyPI:

bash
pip install simba-mcp

Or run directly without installing:

bash
uvx simba-mcp

Cursor IDE setup

Add this to your .cursor/mcp.json:

json
{
  "mcpServers": {
    "simba": {
      "command": "uvx",
      "args": ["simba-mcp"],
      "env": {
        "SIMBA_API_URL": "https://demo.simba-mmm.com",
        "SIMBA_API_KEY": "simba_sk_..."
      }
    }
  }
}

Claude Code

Add to your Claude Code MCP config:

json
{
  "mcpServers": {
    "simba": {
      "command": "uvx",
      "args": ["simba-mcp"],
      "env": {
        "SIMBA_API_URL": "https://demo.simba-mmm.com",
        "SIMBA_API_KEY": "simba_sk_..."
      }
    }
  }
}

Claude API (Remote — no local process needed)

For server-side integrations, use the hosted MCP endpoint directly with the Anthropic SDK:

python
import anthropic
client = anthropic.Anthropic()
response = client.beta.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=4096,
    messages=[{"role": "user", "content": "List my Simba models"}],
    mcp_servers=[
        {
            "type": "url",
            "url": "https://demo.simba-mmm.com/mcp",
            "name": "simba",
            "authorization_token": "simba_sk_...",
        }
    ],
    tools=[{"type": "mcp_toolset", "mcp_server_name": "simba"}],
    betas=["mcp-client-2025-11-20"],
)

No local process required -- Anthropic’s servers connect directly to the hosted SIMBA MCP endpoint. Your API key is passed securely as the authorization token.

Example prompts to try

Once connected, try these with your AI assistant:

  • "List my SIMBA models and show me the channel ROI summary for the most recent complete model."
  • "Upload this CSV data and create a new MMM model with TV, Search, and Social as media channels."
  • "Run a budget optimization on model a1b2c3d4 with $1M total budget over 12 months. Set TV bounds to 5-40% and Search to 10-50%."
  • "Show me the response curves for model a1b2c3d4. At what spend level does TV hit diminishing returns?"
  • "Get a scenario template for the next 12 weeks, then run a scenario where I increase TV by 20% and cut Search by 10%."

Built on PyMC-Marketing

Under the hood, every model is a full Bayesian MMM built on PyMC-Marketing. That means proper uncertainty quantification, adstock and saturation transformations, lift test calibration, and transparent priors you can inspect and override. The MCP server does not simplify or approximate the modeling. It gives your AI assistant direct access to the same engine that powers the SIMBA web platform.

Open source and extensible

The server is MIT-licensed and available on GitHub. We welcome contributions, whether that is new tools, transport improvements, or integrations with additional MCP clients.

To get started, create an API key in the SIMBA dashboard under Profile > API Keys. Set scopes for ingest, read:models, read:results, create:models, optimize, and scenario.

What is next

This is our first release (v0.1.0). We are actively working on richer result formatting, streaming progress updates during model fitting, and deeper integration with the SIMBA platform's collaboration features. If you have feedback or feature requests, open an issue on GitHub or reach out at info@pymc-labs.com.

Marketing mix modeling should be as easy as asking a question. With the SIMBA MCP Server, it is. Try it today.

Published on April 5, 2026 by Niall Oulton

All posts