SuperSend MCP

SuperSend MCP connects your AI assistant (Cursor, Claude, Windsurf) to SuperSend’s outreach and email platform.

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeCan modify data

What it can do

  • Get Health: Check SuperSend API health and connectivity
  • List Teams: List teams the user has access to
  • Get Team: Get a single team by ID

What data it sees

Do you need an account

No: the server works without sign-in

SuperSend MCP connects your AI assistant (Cursor, Claude, Windsurf) to SuperSend’s outreach and email platform. Manage contacts, campaigns, and senders; analyze deliverability, bounce rates, and placement; run capacity planning; and handle domains and mailboxes. Tools cover teams, contacts, campaigns, conversations, events, webhooks, blacklists, and placement tests—everything needed to run and optimize enterprise outreach at scale.

How to connect

How to connect SuperSend MCP to Claude

The server address to paste into Claude settings:

https://supersend--supersend.run.tools

  1. Open Claude (claude.ai or the desktop app).
  2. Go to Settings → Connectors.
  3. Click Add custom connector.
  4. Paste the server address copied below into Remote MCP server URL and click Add.
  5. In a chat, click + → Connectors and switch the new connector on.

Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.

Authorization

After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.

How to connect SuperSend MCP to ChatGPT

The server address to paste into ChatGPT settings:

https://supersend--supersend.run.tools

  1. Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
  2. Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
  3. Open Settings → Connectors and click Create.
  4. Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
  5. Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
  6. In a new chat open + → Apps/Connectors and enable the connector.

OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.

Authorization

On first use ChatGPT opens the service's sign-in window. Sign in and approve access.

How to connect SuperSend MCP to Cursor

The server address to paste into Cursor settings:

https://supersend--supersend.run.tools

Fastest: click Open in Cursor below and confirm the prompt.

Manually:

  1. In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
  2. Paste the JSON copied below into ~/.cursor/mcp.json (per project: .cursor/mcp.json in the repo root).
  3. Save the file. The server appears in the MCP list; authorize it there if asked.

Authorization

If the service needs sign-in, an authorize button appears next to the server in the MCP list.

Server tool list (48)

Raw names from tools/list. Only developers need these.

get_healthCheck SuperSend API health and connectivity
list_teamsList teams the user has access to
get_teamGet a single team by ID
analyze_capacity_and_scheduleGet capacity planning and campaign completion forecasts for a team. Returns when campaigns will finish, allocated capacity, and whether more infrastructure is needed. Run list_teams first to get teamId.
diagnose_deliverabilityGet deliverability diagnosis for a team. Use when the user asks about reply rate, bounce rate, why campaigns underperform, deliverability, spam placement, or email performance. Returns sends, replies, bounces, placement test results, target mix (Gmail/Outlook/corporate), and actionable recommendations.
analyze_sender_healthGet sender health for a team. Use when the user asks which senders are at risk, sender bounce rates, or sender performance. Returns per-sender metrics (sends, bounces, bounce rate) and flags at-risk senders.
get_outbound_summaryGet outbound summary for a team. Use when the user asks how their outreach is performing, overall send/reply stats, or top campaigns by volume. Returns team-level sends, replies, bounce rate, reply rate, and top campaigns.
analyze_domain_healthGet domain health for a team. Use when the user asks which domains have DNS issues, SPF/DKIM/DMARC problems, or deliverability concerns. Returns per-domain status (SPF, DKIM, DMARC, MX), blacklist status, and at-risk flags.
list_contactsList contacts in a team. Run list_teams first to get TeamId, then pass the team id (UUID) here.
get_contactGet a single contact by ID
create_contactCreate or update a contact (upsert by email). Requires TeamId, CampaignId, and at least one of email, linkedin_url, or twitter.
update_contactUpdate a contact. Only provided fields are updated.
delete_contactDelete a contact by ID (soft delete)
create_campaignCreate a new campaign in a team. Run list_teams first to get TeamId. Campaign starts inactive/draft. Creates ContactConfig with default fields. Use update_campaign_sequence to add nodes and edges (startNode, emailNode, waitNode, etc.). Optionally assign to a category from list_campaign_categories.
list_campaignsList campaigns in a team. Run list_teams first to get TeamId. Use status to filter: "active" (1) or "inactive" (2).
get_campaignGet a single campaign by ID
activate_campaignActivate a campaign (turn it on). Campaign will start sending. Requires campaign to have a sequence. Get campaign ID from list_campaigns.
deactivate_campaignDeactivate a campaign (turn it off / pause). Campaign will stop sending. Get campaign ID from list_campaigns.
get_campaign_sequenceGet the campaign sequence (nodes and edges) for a campaign. Nodes are steps like start, email, wait, if, switch; edges connect them.
update_campaign_sequenceUpdate campaign sequence nodes and/or edges. Pass nodes array (steps: startNode, emailNode, waitNode, ifNode, etc.) and/or edges array (connections between nodes). Each node needs id, type, data, position; each edge needs id, source, target.
list_campaign_categoriesList campaign categories (folders) for a team. Categories organize campaigns. Run list_teams first to get teamId.
create_campaign_categoryCreate a campaign category (folder) for organizing campaigns. Run list_teams first to get TeamId. Category names must be unique per team.
update_campaign_categoryRename a campaign category. Get category ID from list_campaign_categories.
delete_campaign_categoryDelete a campaign category. Campaigns in this category become uncategorized. Get category ID from list_campaign_categories.
list_sendersList email senders. Optionally filter by team (get TeamId from list_teams).
get_senderGet a sender by ID
update_senderUpdate a sender. Pass only fields to change (disabled, max_per_day, signature, etc.).
list_eventsList events (sends, opens, clicks, replies, bounces). Get TeamId from list_teams.
get_eventGet a single event by ID
list_conversationsList conversations from email inbox or LinkedIn inbox. Use channel to pick inbox: "email" or "linkedin". Use last_message_direction: "inbound" for replies from contacts (needs response), "outbound" for our sent messages. Get team_id from list_teams.
get_conversationGet a conversation by ID
get_conversation_messagesGet messages in a conversation
send_conversation_messageSend a message in a conversation. For email, include sender_id and subject.
bulk_import_contactsBulk import contacts. Requires TeamId and CampaignId (from list_teams, list_campaigns). Each contact needs at least one of email, linkedin_url, or twitter.
list_labelsList conversation labels. Requires team_id from list_teams.
list_blacklistList blacklisted emails, domains, or LinkedIn URLs.
add_to_blacklistAdd email, domain, or LinkedIn URL to blacklist.
remove_from_blacklistRemove an item from the blacklist by ID
list_webhooksList webhooks. Requires team_id from list_teams.
create_webhookCreate a webhook. Requires team_id from list_teams.
list_domainsList managed domains.
get_domainGet a domain by ID with health and sender info
purchase_domain⚠️ CHARGES REAL MONEY. Always confirm with the user before calling. Only proceed when they explicitly say "yes, purchase" or "go ahead." Do not call based on vague intent like "I need domains." Ask: "This will charge your payment method for [domains]. Confirm purchase?" Purchase one or more domains. Requires Stripe payment method. Domains are processed asynchronously. Run list_domains to check status.
purchase_mailbox⚠️ CHARGES REAL MONEY. Always confirm with the user before calling. Only proceed when they explicitly say "yes, purchase" or "go ahead." Do not call based on vague intent like "I need mailboxes." Ask: "This will charge your payment method for [N] mailbox(es). Confirm purchase?" Purchase mailboxes for existing domains. Requires Stripe payment method. Domains must already exist (use purchase_domain first). Mailboxes are processed asynchronously. Provider: google, outlook, or smtp.
purchase_domains_and_mailboxes⚠️ CHARGES REAL MONEY. Always confirm with the user before calling. Only proceed when they explicitly say "yes, purchase" or "go ahead." Do not call based on vague intent like "I need more capacity." Ask: "This will charge your payment method for [domains/mailboxes]. Confirm purchase?" Purchase domains and mailboxes in one transaction. Use domains for domains-only, mailboxes for mailboxes on existing domains, or both. domainsWithProviders links domains to providers (google/outlook/smtp).
list_placement_testsList placement tests (deliverability tests).
get_sender_bounce_insightsGet AI-categorized bounce breakdown for a sender (invalid_email, seg_block, reputation_block, etc.). Get sender ID from list_senders.
get_domain_bounce_insightsGet AI-categorized bounce breakdown for a domain. Requires V2 domain bounce-insights endpoint.