EarlyPass
An open-source viral waitlist widget with an MCP server: agents create campaigns, invite top referrers and export signups
Medium risk
We rate an entry medium when the tool runs code, makes network calls or reads project files. Check what exactly it does before installing.
Why this level
- Creates and edits campaigns and sends invite emails on behalf of the account owner
- Exports up to 10,000 rows of signup personal data at once
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/earlypassDetects the agents on your machine, checks the risk and pins the version.
Other ways to install
Assembled automatically, review before installing.
Run in a terminal
claude mcp add --transport http 'EarlyPass MCP' https://your-earlypass-domain.com/mcp --header 'Authorization: Bearer <your API_KEY>'Or add to the file .mcp.json, in the project
{
"mcpServers": {
"EarlyPass MCP": {
"type": "http",
"url": "https://your-earlypass-domain.com/mcp",
"headers": {
"Authorization": "Bearer <your API_KEY>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
API_KEYsecret, required- Account API key for Bearer token authentication
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Add to the file ~/.cursor/mcp.json, for all projects
{
"mcpServers": {
"EarlyPass MCP": {
"url": "https://your-earlypass-domain.com/mcp",
"headers": {
"Authorization": "Bearer <your API_KEY>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. For a single project, put the same block into .cursor/mcp.json.
Keys and settings
API_KEYsecret, required- Account API key for Bearer token authentication
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Run in a terminal
code --add-mcp '{"name":"EarlyPass MCP","type":"http","url":"https://your-earlypass-domain.com/mcp","headers":{"Authorization":"Bearer <your API_KEY>"}}'Or add to the file .vscode/mcp.json, in the project
{
"servers": {
"EarlyPass MCP": {
"type": "http",
"url": "https://your-earlypass-domain.com/mcp",
"headers": {
"Authorization": "Bearer <your API_KEY>"
}
}
}
}If the file already exists, add the server inside the servers key.
Keys and settings
API_KEYsecret, required- Account API key for Bearer token authentication
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.codex/config.toml, for all projects
[mcp_servers."EarlyPass MCP"]
url = "https://your-earlypass-domain.com/mcp"
http_headers = { Authorization = "Bearer <your API_KEY>" }If the file already exists, append the block to the end.
Keys and settings
API_KEYsecret, required- Account API key for Bearer token authentication
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.gemini/settings.json, for all projects
{
"mcpServers": {
"EarlyPass MCP": {
"httpUrl": "https://your-earlypass-domain.com/mcp",
"headers": {
"Authorization": "Bearer <your API_KEY>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
API_KEYsecret, required- Account API key for Bearer token authentication
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.config/devin/mcp_config.json, for all projects
{
"mcpServers": {
"EarlyPass MCP": {
"serverUrl": "https://your-earlypass-domain.com/mcp",
"headers": {
"Authorization": "Bearer <your API_KEY>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. Legacy Cascade keeps the MCP config in ~/.codeium/windsurf/mcp_config.json.
Keys and settings
API_KEYsecret, required- Account API key for Bearer token authentication
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Formerly Windsurf.
Add to the file cline_mcp_settings.json, for all projects
{
"mcpServers": {
"EarlyPass MCP": {
"type": "streamableHttp",
"url": "https://your-earlypass-domain.com/mcp",
"headers": {
"Authorization": "Bearer <your API_KEY>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. Open the settings file in Cline: MCP Servers tab, Configure MCP Servers.
Keys and settings
API_KEYsecret, required- Account API key for Bearer token authentication
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file .roo/mcp.json, in the project
{
"mcpServers": {
"EarlyPass MCP": {
"type": "streamable-http",
"url": "https://your-earlypass-domain.com/mcp",
"headers": {
"Authorization": "Bearer <your API_KEY>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
API_KEYsecret, required- Account API key for Bearer token authentication
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
A fork of Roo Code, same .roo folders.
Add to the file opencode.json, in the project
{
"mcp": {
"EarlyPass MCP": {
"type": "remote",
"url": "https://your-earlypass-domain.com/mcp",
"headers": {
"Authorization": "Bearer <your API_KEY>"
}
}
}
}If the file already exists, add the server inside the mcp key.
Keys and settings
API_KEYsecret, required- Account API key for Bearer token authentication
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.config/zed/settings.json, for all projects
{
"context_servers": {
"EarlyPass MCP": {
"url": "https://your-earlypass-domain.com/mcp",
"headers": {
"Authorization": "Bearer <your API_KEY>"
}
}
}
}If the file already exists, add the server inside the context_servers key.
Keys and settings
API_KEYsecret, required- Account API key for Bearer token authentication
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
On your server, run curl -O https://www.earlypass.app/docker-compose.yml, set DASHBOARD_JWT_SECRET and bring it up with docker compose up -d, then connect your MCP client to https://your-domain/mcp via OAuth or an Authorization Bearer ep_acc_your_key header.
Other ways from the author
curl -O https://www.earlypass.app/docker-compose.yml
export DASHBOARD_JWT_SECRET=$(openssl rand -hex 32)
docker compose up -dThe main self-hosted install path; needs your own Postgres and Redis, or the ones started by docker-compose.
This is third-party code. Review the repository files before installing.
What it does
EarlyPass is a standalone product: an embeddable waitlist widget with referral mechanics, a leaderboard and analytics, deployed self-hosted via Docker Compose, Kubernetes or a single container. Beyond the web widget and dashboard, the service runs its own MCP server at /mcp that lets an agent create and edit campaigns, check signup and referral stats, invite the top leaderboard entries with invite emails, export signups as JSON or CSV, and manage webhooks. MCP connections use OAuth 2.1 with automatic discovery for clients like Claude Desktop or MCP Inspector, or an account API key as a Bearer token.
Who it is for. For founders and marketers launching a viral product waitlist who want to manage campaigns through an agent.
Good fit when
- You need a self-hosted waitlist widget with referrals and a leaderboard on your own site
- You want an agent to create campaigns, invite top referrers and export signups on its own
- You need to programmatically grant access to top signups by email once a threshold is reached
Not a fit when
- You do not want a separate self-hosted service: hosted waitlist SaaS tools already exist
- The project is work in progress and, per the author's own warning, not production ready
- You need a tool tied to the Russian stack: this service has no connection to Russian services
Example request
Show the launch campaign stats and invite the top 20 signups by referral countLimitations
The author explicitly warns the project is under active development, APIs may change, parts are incomplete, and it is not production ready. It needs your own Postgres and Redis, or the full Docker Compose stack. It is Business Source Licensed, not perpetually open. MCP access needs either OAuth 2.1 or an account API key.
How to disable. Stop the stack with docker compose down and remove the MCP server from your client settings.
MCP
- Transport
- http
- Authentication
- OAuth
| Environment variables | |
|---|---|
| DASHBOARD_JWT_SECRET required, secret | Secret used to sign dashboard sessions, set at install time |
Security check
- Creates and edits campaigns and sends invite emails on behalf of the account owner
- Exports up to 10,000 rows of signup personal data at once
README in short
The English README describes an open self-hosted waitlist widget with a quick start via Docker Compose, a single container or a Helm chart. A dedicated MCP Server section lists 12 tools for campaigns, signups, export, invites and webhooks, explains OAuth 2.1 or API-key connection, and gives the discovery and token endpoints. It covers invite tokens with verification and redemption through the product's own backend, and detailed local development instructions using mise, kind and tilt.
FAQ
Can I only manage my own campaigns?
Yes, every MCP tool requires account-level authentication and enforces campaign ownership.
How does the agent invite signups without a password?
invite_signups sends emails with a personalized link and token that your product backend can verify and redeem via its own API.
Related
A skill that strips AI writing tells from text using Wikipedia's list, without adding invented facts
Marketing Skills for AI agents
Marketing Skills for AI Agents
About fifty skills for CRO, copywriting, SEO, analytics, ads and launches, built for coding agents
SendPulse MCP server
SendPulse MCP
SendPulse's official remote MCP server: statistics, campaigns and user data through an agent chat
Yandex Direct MCP generated from a machine-readable schema
yandex-direct-mcp
An MCP server and CLI covering all 113 Yandex Direct API v5 methods generated from WSDL, exposing 9 read tools by default and writes only on demand