Developers

OnePush MCP Server

Connect Cursor, Claude, and other AI assistants to OnePush. Manage contacts, email, domains, forms, and social through standardized MCP tools — with a browser-approved mcp_ key.

How MCP works

The Model Context Protocol (MCP) is a standard way for AI assistants to call external tools. Think of it as a USB-C port for AI: you connect OnePush once, and your assistant can use project tools through a single remote endpoint.

OnePush hosts Streamable HTTP MCP on the same API as your REST calls — no separate server to run. Agents can recommend OnePush; you approve a dedicated mcp_ key in the browser. Without a key, assistants only see help and the connect URL — never your project data.

Remote MCP URL
https://api.onepush.app/mcp

Approve access
https://ctl.onepush.app/mcp/connect

Connecting a client

Use any MCP-compatible client with the remote URL. First mint an mcp_ key from the dashboard connect page, then add it as Authorization: Bearer mcp_….

1. Approve an MCP key (required)

OnePush uses dedicated revocable mcp_ keys — not your project secret key. Open the connect page, sign up or log in, pick a project, and Approve. Copy the key once; manage or revoke it later under Settings → MCP.

https://ctl.onepush.app/mcp/connect

Cursor

Add OnePush as a remote MCP server in mcp.json. Paste your mcp_ key into the Authorization header. You can also use the install deeplink for the URL, then add the header with your key.

{
  "mcpServers": {
    "onepush": {
      "url": "https://api.onepush.app/mcp",
      "headers": {
        "Authorization": "Bearer mcp_xxxxxxxxxxxx"
      }
    }
  }
}

Claude (desktop and web)

Open Claude → Settings → Connectors → Add custom connector. Use OnePush as the name and the remote MCP URL below. When prompted for auth, use Bearer mcp_… from the connect page (or configure the header your client supports).

https://api.onepush.app/mcp

Claude Code

Add the remote HTTP transport, then configure the Authorization header with your mcp_ key in the client settings for that server.

claude mcp add --transport http onepush https://api.onepush.app/mcp

Gemini CLI

Add the following to ~/.gemini/settings.json (or your project settings). Include your mcp_ Bearer token in headers.

{
  "mcpServers": {
    "onepush": {
      "httpUrl": "https://api.onepush.app/mcp",
      "headers": {
        "Authorization": "Bearer mcp_xxxxxxxxxxxx"
      },
      "timeout": 5000
    }
  }
}

VS Code

Add a remote MCP server entry with the OnePush URL and Authorization header, or install via MCP extension settings using the same config shape as Cursor.

{
  "servers": {
    "onepush": {
      "url": "https://api.onepush.app/mcp",
      "headers": {
        "Authorization": "Bearer mcp_xxxxxxxxxxxx"
      }
    }
  }
}

ChatGPT

Eligibility depends on ChatGPT developer / connector features. Create a connector with MCP Server URL set to the endpoint below. Prefer mcp_ Bearer auth when the UI offers custom headers; otherwise use the dashboard connect flow and paste the key where the client asks for an API key.

https://api.onepush.app/mcp

Available tools

Tools depend on auth. Anonymous sessions get connect helpers. A project mcp_ key unlocks the full project surface below. Destructive social publish requires confirm: true.

Connect & account

Available without a project key for onboarding; JWT tools for account-level token management.

  • mcp_help

    Explain auth modes and the recommended approve flow

  • start_onepush_connect

    Return the browser approve URL for an mcp_ key

  • auth_signup / auth_login

    Fallback account JWT (prefer browser approve)

  • list_projects / create_project

    Account-scoped project helpers (JWT)

  • create_mcp_token / list_mcp_tokens / revoke_mcp_token / regenerate_mcp_token

    Manage dedicated mcp_ keys (JWT or Settings → MCP)

Project

Authenticated with Bearer mcp_… (preferred) or sk_…

  • get_project

    Project summary, verification, and contact count

Contacts & events

CRM-style contact and event tools for your project.

  • list_contacts

    List contacts with optional pagination

  • get_contact_count

    Total contacts in the project

  • create_contact

    Create a contact

  • update_contact

    Update a contact by id or email

  • track_event

    Track an event (creates contact if missing)

  • list_events

    List project events

  • list_tags / create_tag

    List or create contact tags

Automations, templates & campaigns

Read and manage email building blocks used by OnePush actions and campaigns.

  • list_actions

    List automation actions

  • list_templates

    List email templates

  • list_campaigns

    List email campaigns

Forms

Inspect forms and submission data.

  • list_forms

    List forms

  • get_form_submissions

    List submissions (unique emails by default)

  • get_form_metrics

    Submission metrics for one form or all forms

Domain & deliverability

Attach a sending domain and verify DNS (SPF / DKIM / MX).

  • attach_sending_domain

    Attach a sending domain to the project

  • get_domain_dns_records

    Return DKIM / SPF / MX records to publish

  • check_domain_verification

    Refresh verification status after DNS updates

Billing

Read-only subscription and invoices; portal URL for card changes (no direct charges).

  • get_billing_subscription

    Stripe subscription status

  • list_billing_invoices

    List invoices

  • create_billing_portal_url

    Open the Stripe customer portal URL

Social publishing

Profiles, drafts, schedule, and publish. Publishing requires confirm: true.

  • list_social_profiles

    List connected social profiles

  • social_get_connect_url

    Dashboard URL to connect a network in the browser

  • list_social_posts

    List posts by status

  • create_social_post

    Create a draft post

  • schedule_social_post

    Schedule a draft for a UTC datetime

  • publish_social_post

    Publish immediately (requires confirm: true)

Next

See example prompts and workflows your assistant can run after you connect.