Streakfox
API

MCP Setup

Connect Claude, ChatGPT, Cursor or VS Code to the Streakfox MCP server.

Streakfox exposes an MCP server for agents that set up and operate retention programs.

Connect your assistant

In your program’s connection settings, choose Connect Cursor or Connect VS Code. Approve the install in your assistant, then ask: “Help me set up a streak program.” No token copying or configuration file editing is needed.

These buttons use the official Cursor install links and VS Code MCP install links. Your browser may ask permission to open the installed app. This does not install WordPress plugins or grant access to your WordPress server.

Each connection uses a separate customer token, scoped to the project’s workspace, with a 90-day expiry. Personal projects use your account’s accessible projects. Use Manage assistant access → Disconnect to revoke a connection immediately. Streakfox stores token hashes, and sends the token directly to the installed app via its local install link.

Claude, ChatGPT and other MCP clients

Add https://mcp.streakfox.com/mcp as a custom connector. When the client asks, sign in with Streakfox and choose Allow. There's no token to copy.

Under the hood this is standard MCP authorization (OAuth 2.1 with PKCE). The server answers unauthenticated requests with a WWW-Authenticate challenge that points to https://mcp.streakfox.com/.well-known/oauth-protected-resource/mcp. Clients identify themselves with a Client ID Metadata Document hosted on their own site, or older clients register themselves. They then ask for the mcp scope and the https://mcp.streakfox.com/mcp resource. Each token only works on the server it was issued for: MCP tokens don't work on the customer API, and Zapier tokens don't work here.

The consent page shows what Streakfox knows about the app. An app identified by a metadata document shows its domain. An app that registered itself is marked unverified, with the address it will send you back to. Only continue if you started from that app. The connection appears under Connected apps on a program's Connections tab, where Disconnect stops it straight away.

Tools

ToolPurpose
list_projectsList projects available to the authenticated token.
create_projectCreate a project in the token's user or organization scope.
list_programsList programs for an authorized project.
create_programCreate a program/widget for an authorized project.
update_programUpdate program name, action, cadence, target, timezone, or status.
create_or_rotate_webhook_secretCreate or rotate a program inbound webhook secret.
get_install_snippetsReturn the webhook snippet that counts and the widget that displays.
record_eventRecord a program event through MCP.
get_streak_stateRead current program state for a subject.
list_at_risk_usersFind subjects whose streak has not updated since a cutoff date.
create_milestoneCreate or update a milestone for a program's action.

Setup Flow

  1. Connect your assistant from the dashboard.
  2. Approve the install in your assistant.
  3. Call list_projects or create_project.
  4. Call create_program or update_program.
  5. Call create_or_rotate_webhook_secret if inbound webhooks will record events.
  6. Call get_install_snippets for widget, REST, webhook, and MCP examples.
  7. Call record_event, then get_streak_state to verify the event updated state.

Example Tool Arguments

Create a program:

{
  "projectId": "PROJECT_ID",
  "name": "Activation streak",
  "eventKey": "activation_complete",
  "mode": "continuous",
  "cadence": "daily",
  "target": 1,
  "status": "live"
}

Record an event:

{
  "projectId": "PROJECT_ID",
  "userHash": "agent-user-123",
  "event": "activation_complete",
  "externalService": "internal-agent",
  "integrationId": "support-resolution-agent",
  "meta": {
    "ticketId": "TCK-123"
  }
}

MCP events are stored with source: "mcp" so they appear separately in event-source analytics while updating the same program state.

On this page