Skip to main content

Run Prior.Run audience simulations from Claude Desktop, Claude Code, Cursor, or any MCP-compatible agent.

Project description

priorrun-mcp

MCP server for Prior.Run — run synthetic-audience simulations on design variants and ad creatives from Claude Desktop, Claude Code, Codex, Gemini CLI, Cursor, Windsurf, Cline, Zed, or any MCP-compatible agent.

Install

Requires Python 3.11+. Install uv if you don't have it.

uvx priorrun-mcp

That's it — uvx fetches and runs the server on demand.

Configure

Grab an API key from prior.run/settings, then register the server with your agent host.

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "prior-run": {
      "command": "uvx",
      "args": ["priorrun-mcp"],
      "env": {
        "PRIORRUN_API_KEY": "pr_live_xxxxxxxxxxxxxxxxxxxxxxxx"
      }
    }
  }
}

Claude Code

~/.claude/mcp.json (global) or .mcp.json in a project root:

{
  "mcpServers": {
    "prior-run": {
      "command": "uvx",
      "args": ["priorrun-mcp"],
      "env": { "PRIORRUN_API_KEY": "pr_live_..." }
    }
  }
}

Codex (OpenAI)

~/.codex/config.toml — TOML, not JSON:

[mcp_servers.prior-run]
command = "uvx"
args = ["priorrun-mcp"]

[mcp_servers.prior-run.env]
PRIORRUN_API_KEY = "pr_live_..."

Gemini CLI

~/.gemini/settings.json:

{
  "mcpServers": {
    "prior-run": {
      "command": "uvx",
      "args": ["priorrun-mcp"],
      "env": { "PRIORRUN_API_KEY": "pr_live_..." }
    }
  }
}

Cursor

~/.cursor/mcp.json (global) or .cursor/mcp.json (per-project):

{
  "mcpServers": {
    "prior-run": {
      "command": "uvx",
      "args": ["priorrun-mcp"],
      "env": { "PRIORRUN_API_KEY": "pr_live_..." }
    }
  }
}

Windsurf / Cline / Zed / other MCP hosts

All modern MCP hosts share the same mcpServers JSON shape used by Claude Code. Drop the same block into the host's MCP config file — check the host's docs for the exact path.

Tools

Tool What it does
create_design_review single design review
create_design_compare two design variants head-to-head
create_design_multi 3–5 design variants
create_design_flow two funnel flows (each 2–5 screens)
create_ads_single single ad creative evaluation
create_ads_compare two ad creatives head-to-head
create_ads_multi 3–5 ad creatives
create_creative_from_fieldnotes 3 ad creative variants (quote / editorial / bold graphic) generated from a focus-group's field notes — no memo required
get_memo fetch status + full memo JSON by id
wait_for_memo block until synthesis completes

Image arguments accept local file paths, https:// URLs, or base64. Create tools default to wait=True — the agent gets the completed memo in one tool call.

Example prompts

The agent picks the right tool from your wording. Say "ad creative" / "creative compare" / name a platform (Meta/TikTok/Google) for the ads tools, or "landing page" / "design compare" / "variant" for the design tools.

Design compare — evaluates the page itself (layout, hierarchy, CTA clarity, conversion readiness):

Run a Prior.Run design compare on ~/desktop/landing-a.png vs
~/desktop/landing-b.png targeting the gen_z audience template. Hypothesis:
the warmer palette will lift click-through.

→ agent calls create_design_compare, full page-level synthesis, burns 1 analysis credit.

Ads compare — evaluates the creative as it would appear in-feed (scroll-stop, hook clarity, brand recall), platform-aware:

Run a Prior.Run ads compare on ~/desktop/creative-a.jpg vs
~/desktop/creative-b.jpg. Campaign context: Gen Z skincare awareness on TikTok.

→ agent calls create_ads_compare with run_platform="tiktok", ads-specific synthesis (scroll-stop, hook, brand recall, no landing-page critique).

Both return a completed memo (~90s) with verdict, audience quotes, and a memo URL.

Environment variables

Variable Required Default Notes
PRIORRUN_API_KEY yes pr_live_... format. Generate at prior.run/settings.
PRIORRUN_API_BASE no https://api.prior.run Override for staging or local dev.

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

priorrun_mcp-0.4.1.tar.gz (49.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

priorrun_mcp-0.4.1-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file priorrun_mcp-0.4.1.tar.gz.

File metadata

  • Download URL: priorrun_mcp-0.4.1.tar.gz
  • Upload date:
  • Size: 49.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for priorrun_mcp-0.4.1.tar.gz
Algorithm Hash digest
SHA256 e35b30bb73f37996246a0a1a821d0ade4ec53ae4aca07e926dc945f12ff55f64
MD5 134cd803b2a9bfeb59910e55ffa45a35
BLAKE2b-256 4e3ea3e0bccc36a8f79f03a3d321929e9dec366ea79aaa3b94aaabebde19ec96

See more details on using hashes here.

File details

Details for the file priorrun_mcp-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: priorrun_mcp-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for priorrun_mcp-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b629dffccc6b2d5a33e91067e880dc7e810784a9866b179c84b5ff88a162115c
MD5 cbbd7a3bd346b7aaba69d3fdda2b4318
BLAKE2b-256 cf07f568a9fed286949ba2db1f0edbb3253a040ec8abc9deac10beffaf92d41a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page