Skip to content
Conduit

mcp server

ballast-mcp

Official Ballast MCP Server: Connect Claude, Cursor, and ChatGPT to manage cold email campaigns, domain health, mailboxes, and replies.

useballast/ballast-mcpcommunitylistedunreviewed

Set up

Runs on your computer. Pick your agent and operating system.

Before you start

  • Node.js 20 or newer
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "ballast-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "ballast-mcp"
      ]
    }
  }
}

same format Cursor, GitHub Copilot CLI, Junie, JetBrains AI Assistant, Augment (Auggie CLI), Factory Droid, Kiro, Devin CLI +12

Values in angle brackets are placeholders. Restart Claude Desktop after editing its config.Claude Desktop docs

README

synced Oct 25, 2026

Ballast MCP Server

Ballast - Cold Email MCP server – quality and maintenance score on Glama Protocol License: MIT

Official Model Context Protocol (MCP) server implementation for Ballast — connect AI agents to manage cold email campaigns, deliverability warmup, lead lists, and inbox replies.

This repository contains the standalone MCP server package that runs locally via standard I/O (stdio) and connects AI assistants (Claude Desktop, Cursor, Claude Code, Zed, etc.) to your Ballast workspace.


Features

  • Deliverability & DNS Diagnostics: Inspect secondary domains for SPF, DKIM, DMARC alignment, MX configuration, and blacklist health.
  • Campaign & Sequence Management: Build multi-step outbound sequences, set A/B variants, configure sending delays, and verify launch checklists.
  • Automated Bounce Circuit Breakers: Monitor campaign placement rates and pause sends if bounce rate thresholds are crossed.
  • Unified Inbox (Unibox): Read and summarize customer email threads, check sentiment classification, and draft human-confirmed replies.
  • Safe by Default: Destructive operations (launching campaigns, sending emails, deleting data) require explicit two-step confirmation with a 10-minute HMAC token.

Installation & Setup

Requirements

Run via npx (Recommended)

You can run the server directly without manual installation:

BALLAST_API_KEY="bl_your_key_here" npx -y ballast-mcp

Install from Source

git clone https://github.com/useballast/ballast-mcp.git
cd ballast-mcp
npm install
npm start

Client Configuration

Claude Desktop

Add Ballast to your claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "ballast": {
      "command": "npx",
      "args": ["-y", "ballast-mcp"],
      "env": {
        "BALLAST_API_KEY": "bl_your_api_key_here"
      }
    }
  }
}

Cursor

Add to ~/.cursor/mcp.json (or your project's .cursor/mcp.json):

{
  "mcpServers": {
    "ballast": {
      "command": "npx",
      "args": ["-y", "ballast-mcp"],
      "env": {
        "BALLAST_API_KEY": "bl_your_api_key_here"
      }
    }
  }
}

Claude Code

claude mcp add --transport stdio ballast -- npx -y ballast-mcp --key=bl_your_api_key_here

(Note: For clients that support remote Streamable HTTP directly, you can also use --transport http ballast https://ballast.to/api/mcp --header "Authorization: Bearer bl_...")


Tools Reference

The server implements 30 core tools organized by functional area:

ToolCategoryDescription
whoamiWorkspaceGet authenticated user, active workspace, and permission role.
get_overviewWorkspaceWorkspace-wide aggregate totals and trends across all campaigns (sends, replies, sentiment, bounces).
get_billingWorkspacePlan details, sending allowances, dedicated IPs, and usage limits.
check_domainDomainsLive DNS & deliverability diagnostics on any domain without adding it.
list_domainsDomainsList connected sending domains with deliverability scores and verification status.
add_domainDomainsConnect and register a new sending domain to the workspace.
list_mailboxesMailboxesList connected Google Workspace and Microsoft 365 mailboxes with daily limits.
add_mailboxMailboxesConnect an external mailbox for outbound outreach.
list_leadsLeadsSearch and filter contacts in your workspace.
import_leadsLeadsImport lead contacts with custom variables and tag assignment.
list_lead_listsLeadsList organized lead segments and member counts.
add_suppressionsLeadsAdd email addresses or root domains to workspace-wide do-not-contact lists.
list_campaignsCampaignsList outbound sequences with sending schedules and statuses.
create_campaignCampaignsCreate a new cold email campaign.
get_campaignCampaignsRetrieve campaign settings, step variants, and assigned mailboxes.
update_campaignCampaignsUpdate campaign schedule, daily quotas, or track settings.
set_sequenceCampaignsConfigure sequence steps, delays, subject lines, and body copy.
write_sequenceCampaignsGenerate or polish multi-step sequence copy using AI.
add_leads_to_campaignCampaignsEnroll lead segments into an active sequence.
preview_campaignCampaignsPreview lead send distribution across mailboxes and first send timings.
get_launch_checklistCampaignsCheck domain alignment, sender warmup, and lead hygiene before launch.
launch_campaignCampaignsLaunch sequence sending (requires confirm token).
pause_campaignCampaignsImmediately pause sending for a campaign.
get_campaign_statsCampaignsDaily time-series email metrics for a campaign or all campaigns over time.
get_campaign_analyticsCampaignsGranular performance breakdown across email providers (Google, Microsoft), mailboxes, and sentiment.
get_unibox_filtersUniboxRetrieve unified inbox filter presets and label counts.
list_threadsUniboxList incoming recipient replies and conversation threads.
get_threadUniboxInspect full thread message history, headers, and lead details.
send_replyUniboxSend an email reply from the thread's assigned mailbox (requires confirm token).
label_threadUniboxApply sentiment labels (Interested, Meeting Booked, Not Interested, Out of Office).

Safety: Two-Step Confirmations

To prevent inadvertent mass sends or data deletion:

  1. When calling launch_campaign, send_reply, or deletion tools without a confirm_token, the server generates a dry-run preview describing the exact outcome (e.g. "Will send 320 emails across 6 mailboxes") and issues an HMAC token.
  2. The AI presents the preview to the user.
  3. The action executes only when the user approves and the AI passes the confirm_token.

Development

git clone https://github.com/useballast/ballast-mcp.git
cd ballast-mcp
npm install
npm test # or npm start

License

MIT © Ballast

↑↓ navigate openesc close