mcpField
S
simulatte

simulatte

Local
github.com/Iqbalahmed7Business & Marketing0Updated 14w ago

About simulatte

simulatte is an MCP server for running Simulatte synthetic research studies from compatible AI clients. It offers multiple research formats, structured results, persona-pool management, and questions across study history.

Key features

  1. 01Run 26 synthetic research study types
  2. 02Estimate credit and USD costs
  3. 03Retrieve structured study results
  4. 04Create and list persona pools
  5. 05Run simulated depth interviews
  6. 06Ask questions across past studies

Use cases

  1. 01Test a product concept with synthetic personas
  2. 02Compare pricing or messaging options
  3. 03Explore recurring objections across studies

MCP support

Exposes Simulatte research tools to MCP clients, including study execution, result retrieval, cost estimates, and cross-study insights. Requires a per-customer Simulatte API key.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"iqbalahmed7-simulatte": {
"command": "npx",
"args": [
"-y",
"@simulatte-io/mcp-server"
],
"env": {
"SIMULATTE_API_KEY": "<SIMULATTE_API_KEY>",
"SIMULATTE_API_URL": "<SIMULATTE_API_URL>"
}
}
}
}
Run commandnpx -y @simulatte-io/mcp-server
Environment variables to set
SIMULATTE_API_KEYSecretYour Simulatte workspace API key (format: sim_live_…). Generate one at https://app.simulatte.io/settings/api-keys
SIMULATTE_API_URLBase URL of the Simulatte API. Defaults to https://app.simulatte.io/api — only override for self-hosted or staging environments.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@simulatte-io/mcp-server0.1.1

Tools

7

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
skuenumYesconcept-viability | claim-credibility | brand-identity-test | message-resonance | price-sensitivity | feature-priority | ad-copy | b2b-committee | conjoint | iris-pulse | card-sort | open-end | ab-backlog | polarization-stress-test | name-test | founder-positioning | ad-concept-resonance | depth-interview | custom-study | iat | counterfactual-positioning | personalization-sensitivity | regulated-claim-preflight | volume-forecast | brand-tracker | creative-audit
inputsobjectYesSKU-specific study inputs
sample_sizeintegerNoNumber of synthetic personas to run (default varies by SKU)
persona_pool_idstringNoID of persona pool to use

Details

From the project README

Simulatte MCP Server

Run any of Simulatte's 26 SKUs from Claude, Cursor, Zed, or any MCP-compatible AI client. Get results back as structured JSON. No new UI to learn.

User: "Test this sleep coaching concept on 50 stressed parents."
Claude: [calls simulatte_estimate_cost] → 150 credits (~$1.80). Approve?
User: "yes"
Claude: [calls simulatte_run_study] → Results in 4 minutes.

Installation

One-off (no install):

SIMULATTE_API_KEY=sim_live_your_key npx @simulatte-io/mcp-server

Global install:

npm install -g @simulatte-io/mcp-server
SIMULATTE_API_KEY=sim_live_your_key simulatte-mcp

Get an API key

  1. Go to app.simulatte.io/settings/api-keys
  2. Create a key — starts with sim_live_
  3. Set it as SIMULATTE_API_KEY in your environment or MCP client config

Claude Desktop setup

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "simulatte": {
      "command": "npx",
      "args": ["-y", "@simulatte-io/mcp-server"],
      "env": {
        "SIMULATTE_API_KEY": "sim_live_your_key_here"
      }
    }
  }
}

Restart Claude Desktop. Simulatte tools appear automatically.


Cursor setup

Edit ~/.cursor/mcp.json (or your project's .cursor/mcp.json):

{
  "mcpServers": {
    "simulatte": {
      "command": "npx",
      "args": ["-y", "@simulatte-io/mcp-server"],
      "env": {
        "SIMULATTE_API_KEY": "sim_live_your_key_here"
      }
    }
  }
}

Zed setup

In ~/.config/zed/settings.json, add:

{
  "context_servers": {
    "simulatte": {
      "command": {
        "path": "npx",
        "args": ["-y", "@simulatte-io/mcp-server"],
        "env": {
          "SIMULATTE_API_KEY": "sim_live_your_key_here"
        }
      }
    }
  }
}

Available tools

ToolWhat it does
simulatte_run_studyRun any of 26 research SKUs — concept testing, pricing, messaging, B2B committee, and more
simulatte_get_resultsRetrieve full structured results for a completed study
simulatte_ask_insightsAsk a natural-language question across your entire study history
simulatte_list_poolsList all synthetic persona pools in your workspace
simulatte_create_poolCreate a new persona pool with custom demographic/psychographic specs
simulatte_depth_interviewRun a multi-turn simulated depth interview with a synthetic persona
simulatte_estimate_costGet a credit + USD cost estimate before running a study (local — no API call)
SKUs supported by simulatte_run_study

concept-viability · claim-credibility · brand-identity-test · message-resonance · price-sensitivity · feature-priority · ad-copy · b2b-committee · conjoint · iris-pulse · card-sort · open-end · ab-backlog · polarization-stress-test · name-test · founder-positioning · ad-concept-resonance · depth-interview · custom-study · iat · counterfactual-positioning · personalization-sensitivity · regulated-claim-preflight · volume-forecast · brand-tracker · creative-audit


Example prompts

Concept test:

"I have a new sleep coaching app concept. Test it on 50 stressed parent personas and tell me if it'll land."

Pricing sensitivity:

"Run a price sensitivity study on my premium plan ($99/mo) against 100 millennial professionals. Use pool_abc123."

Cross-study synthesis:

"What are the most common objections across all of our B2B studies this quarter?"

Depth interview:

"Conduct a depth interview with a skeptical 35-year-old UK parent about our onboarding flow. 15 turns."


Authentication

Preferred: per-customer API key

Send your sim_live_* key in either of these headers — both are accepted:

x-api-key: sim_live_your_key_here
# or
Authorization: Bearer sim_live_your_key_here
Deprecated: shared platform key

The shared key forge-prod-2026 (used in internal integrations before v0.4) is deprecated and will be removed at v0.5. If your integration sends x-api-key: forge-prod-2026, migrate to a sim_live_* per-customer key now. The worker logs a deprecation warning on every request that uses the shared key.


Response headers

Every successful /v1/forge/* and /v1/iris/* response includes these headers:

HeaderDescription
X-Simulatte-Credits-UsedCredits charged for this request
X-Simulatte-Credits-RemainingWorkspace credit balance after this charge
X-Simulatte-Spend-WarningPresent only when your key has consumed ≥ 80% of its spend cap. Value: "85%-of-cap-consumed" (percentage varies).
Sample curl showing all headers
curl -X POST https://forge-worker-production.up.railway.app/v1/forge/concept-viability \
  -H "x-api-key: sim_live_your_key" \
  -H "x-workspace-id: your-workspace-uuid" \
  -H "Content-Type: application/json" \
  -d '{"concept":"A sleep app for stressed parents","population_id":"default","sample_size":20}' \
  -i

Expected response headers (2xx):

HTTP/2 201
x-simulatte-credits-used: 28
x-simulatte-credits-remaining: 472

If your key is at 85% of its spend cap:

x-simulatte-spend-warning: 85%-of-cap-consumed

Error reference

Statuserror fieldMeaning
401invalid_api_keyKey not found, revoked, or expired
401(message)Bearer JWT invalid or expired
402key_spend_cap_exceededKey has a spend cap and this request would exceed it. Body: {"error":"key_spend_cap_exceeded","cap":500,"used":498,"would_charge":10}
429rate_limited60 req/min or 1000 req/hr limit hit. Check Retry-After header
503database_unavailableWorker DB not reachable — retry in 30s
Sample error bodies

402 — spend cap exceeded:

{
  "detail": {
    "error": "key_spend_cap_exceeded",
    "cap": 500,
    "used": 498,
    "would_charge": 10
  }
}

429 — rate limited:

{
  "detail": {
    "error": "rate_limited",
    "limit": "60/min",
    "retry_after_seconds": 42
  }
}

Retry-After: 42 header is also present.


Rate limits and quotas

Rate limits and credit caps are enforced per API key:

Default limitValue
Per-minute60 req/min
Per-hour1,000 req/hr

Spend caps are optional, set per-key by workspace admins. A key with no spend cap has unlimited spend (bounded only by workspace credit balance).

See app.simulatte.io/settings/billing for your current usage.


Troubleshooting

"Missing SIMULATTE_API_KEY" — Make sure the env block in your MCP config contains your key. The key must start with sim_live_.

Tool not appearing in Claude Desktop — Restart Claude Desktop after editing claude_desktop_config.json. Check the MCP logs at ~/Library/Logs/Claude/mcp*.log.

simulatte_get_results returns status: "running" — Studies take 2–8 minutes. Poll again in 30 seconds, or ask Claude to wait and retry.

401 Unauthorized — Your API key may be revoked or incorrect. Generate a new one at app.simulatte.io/settings/api-keys.

429 Too Many Requests — You've hit the rate limit for your tier. Upgrade at app.simulatte.io/settings/billing.


Development

git clone https://github.com/Iqbalahmed7/simulatte-mcp-server
cd simulatte-mcp-server
npm install
npm run build    # compiles TypeScript → dist/
npm test         # runs vitest test suite
npm run dev      # runs directly via tsx (no build step)

License

MIT — see LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.