MCP Integration

Connect any AI assistant to Pulse synthetic market data using the Model Context Protocol.

The Pulse MCP server exposes our market data and backtesting tools as LLM-callable functions via the Model Context Protocol. Ask your AI assistant to analyse spread behaviour, run a TWAP backtest, or profile order book depth — all in natural language.

The MCP server never returns raw market data. All responses are aggregated statistics or backtest results, keeping payloads small and LLM-friendly.

Available tools

The following tools are registered on the MCP server. Your AI assistant will automatically discover them when connected.

ToolDescription
list_available_dataDiscover available symbols and calibration dates
list_scenariosList market scenarios and their default parameters
run_simulationSubmit a Monte Carlo simulation job
check_jobGet status of a simulation job
list_jobsList all simulation jobs for the current user
get_job_resultsGet results for all simulations in a job
list_cached_simulationsList cached baseline simulations (free tier)
list_sim_filesList available files for a simulation
get_mid_price_seriesDownload mid-price time series for a simulation
get_exec_scheduleDownload execution schedule for algo simulations
get_sim_paramsGet simulation configuration parameters
get_sim_metricsGet simulation result metrics

Available data

See Download data for the full symbol list, available cached simulations, and output file details.

Prerequisites

  • A Pulse API key — get one from your Dashboard
  • Node.js installed (for the mcp-remote bridge used by Claude Desktop)

Claude Desktop

1. Open your config file

On macOS it is located at:

path
~/Library/Application Support/Claude/claude_desktop_config.json

On Windows:

path
%APPDATA%\\Claude\\claude_desktop_config.json

2. Add the Pulse MCP server

Paste the following into the mcpServers object, replacing YOUR_API_KEY with your actual key:

json
{
  "mcpServers": {
    "pulse": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://pulse-mcp.simudyne.com/mcp",
        "--header",
        "X-API-Key: YOUR_API_KEY"
      ],
      "timeout": 300000
    }
  }
}

The timeout is set to 5 minutes (300 000 ms). Some tools like run_simulation submit asynchronous jobs, so you can use check_job to poll for completion. 5 minutes is a safe default for most operations.

3. Restart Claude Desktop

Fully quit Claude Desktop (Cmd+Q on macOS) and reopen it. You should see a tools icon at the bottom of the chat input showing pulse with 8 tools available.

Try asking: "What symbols are available for simulation?"

Claude Code (CLI)

Add the server in one command:

bash
claude mcp add pulse \
  --transport http \
  https://pulse-mcp.simudyne.com/mcp \
  --header "X-API-Key: YOUR_API_KEY"

Restart Claude Code and you are ready to go. Ask it to "run a flash crash simulation for 700.HK".

Any MCP-compatible client

The Pulse MCP server works with any tool that supports the Model Context Protocol — including Cursor, Windsurf, VS Code + GitHub Copilot, Cline, Zed, and many others. To connect, you need three things:

What you need

  • MCP server URL https://pulse-mcp.simudyne.com/mcp
  • Your API key — passed as an X-API-Key header with every request
  • Node.js — required for the mcp-remote bridge that converts between stdio and HTTP (most desktop clients use stdio under the hood)

Generic configuration

The JSON config is the same as the Claude Desktop example above — only the file location differs between clients. Replace YOUR_API_KEY with your actual key and paste the block into your client's MCP server configuration.

If your client supports Streamable HTTP transport directly (e.g. via a url field), you can point it straight at https://pulse-mcp.simudyne.com/mcp and skip the mcp-remote bridge entirely. Pass your API key as an X-API-Key header.