MCP Server

EarlyPass exposes a hosted Model Context Protocol server so AI assistants like Claude and Cursor can manage your waitlist campaigns without you writing a line of code.

Endpoint

https://api.earlypass.app/mcp

The server uses MCP Streamable HTTP transport. No binary to install — it's hosted alongside the rest of the EarlyPass API.

Authentication

Two methods are supported:

Option A — OAuth 2.1 (recommended for interactive clients)

MCP clients that support dynamic client registration (RFC 7591) — including Claude Desktop and MCP Inspector — will discover and complete the OAuth flow automatically using:

GET  /.well-known/oauth-authorization-server   ← discovery
POST /oauth/register                            ← dynamic client registration
GET  /oauth/authorize                           ← user login (magic link)
POST /oauth/token                               ← token exchange

Just point your MCP client at https://api.earlypass.app/mcp and it handles the rest.

Option B — Account API key (non-interactive / CI)

Generate an account API key in the dashboard under Settings → API Keys. Keys have the prefix ep_acc_.

Pass it as a Bearer token in the MCP client config:

Authorization: Bearer ep_acc_your_key_here

Claude Desktop setup

Add this block to your Claude Desktop config file:

{
  "mcpServers": {
    "earlypass": {
      "type": "http",
      "url": "https://api.earlypass.app/mcp",
      "headers": {
        "Authorization": "Bearer ep_acc_your_key_here"
      }
    }
  }
}

Restart Claude Desktop after saving. You should see EarlyPass tools appear in the tool picker.

Cursor setup

Add to .cursor/mcp.json in your project (or ~/.cursor/mcp.json for global):

{
  "mcpServers": {
    "earlypass": {
      "type": "http",
      "url": "https://api.earlypass.app/mcp",
      "headers": {
        "Authorization": "Bearer ep_acc_your_key_here"
      }
    }
  }
}

Available tools

ToolDescription
list_campaignsList all campaigns for the authenticated account
create_campaignCreate a new waitlist campaign
get_campaignGet campaign details by ID
update_campaignUpdate campaign name, settings, or status
get_campaign_statsSignup counts, referral totals, and daily breakdown
list_signupsPaginated signup list with optional status filter
export_signupsFull export as JSON or CSV (up to 10,000 rows)
invite_signupsInvite the top N verified signups, sends emails
get_invite_tokenCheck invite token status (active or redeemed)
redeem_invite_tokenMark an invite token as redeemed (idempotent)
manage_webhookCreate, list, or delete webhook endpoints
get_leaderboardTop referrers ranked by referral count
get_widget_embedGet the <script> embed snippet for a campaign

Example prompts

Once connected, you can talk to your waitlist naturally:

Self-hosted MCP

If you self-host EarlyPass, your MCP server is at https://your-domain.com/mcp. Authentication works the same way — account API keys and OAuth both work out of the box.