Skip to main content
Glama
useballast

Ballast - Cold Email

Official

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
BALLAST_API_KEYYesYour Ballast workspace API key from Settings > API Keys (starts with bl_).

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
add_domainA

Connect a new sending domain to the workspace and verify DNS. Registers a new sending domain under the workspace, saves it, and immediately initiates DNS and deliverability verification (MX, SPF, DKIM, DMARC, blacklists). USE THIS when setting up a new custom domain to send cold emails from Ballast. DO NOT use to test an external or unverified domain without adding it to the workspace (use check_domain instead) or to list existing domains (use list_domains instead).

add_leads_to_campaignB

Add leads from lists (or by id) to a campaign Skips leads already in the campaign, unsubscribed, bounced or suppressed leads, and addresses verification found invalid.

add_mailboxA

Connect a mailbox Tests SMTP and IMAP login first and saves only when both pass. Google needs an app password. Microsoft 365 connects with OAuth from the dashboard.

add_suppressionsA

Suppress addresses or whole domains Up to 10,000 values per call: emails, or domains written as @acme.com. Matching leads are marked suppressed.

check_domainA

Inspect DNS and deliverability health of any domain without adding it. Performs a live, read-only diagnostic check on any domain name (MX, SPF, DKIM, DMARC records, blacklist status, and domain age) with actionable DNS fix instructions. Results are cached for 10 minutes. USE THIS to test or grade arbitrary prospect or candidate domains without saving or connecting them. DO NOT use to configure a domain for sending in Ballast (use add_domain instead) or to view already configured sending domains (use list_domains instead).

create_campaignA

Create a draft campaign Starts with one empty email. Use set_sequence to write the emails, then add leads and mailboxes.

get_billingB

Plan, subscription status, emails and AI drafts used this period

get_campaignB

Get a campaign with its sequence, schedule and settings

get_campaign_analyticsA

Multi-dimensional performance breakdown by provider, mailbox, and sentiment. Returns granular aggregate performance metrics broken down across email providers (Google Workspace, Microsoft 365, etc.), individual sending mailboxes, and reply sentiment classifications. USE THIS to diagnose deliverability issues across providers or compare mailbox performance. DO NOT use for day-by-day time-series data (use get_campaign_stats instead) or macro workspace KPI totals (use get_overview instead).

get_campaign_statsA

Daily time-series email metrics for a campaign or all campaigns. Returns daily time-series counts (day-by-day sent, replied, opened, bounced, positive) for a specific campaign (pass campaignId) or all campaigns combined over the last N days. USE THIS to plot charts or view daily performance trends over time. DO NOT use for high-level workspace summary totals (use get_overview instead) or for multi-dimensional breakdowns by ESP provider, mailbox, or step (use get_campaign_analytics instead).

get_launch_checklistC

What has to be fixed before launch Required items block the launch; warnings are advice.

get_overviewA

Workspace-wide aggregate email outreach totals and trends. Returns macro-level aggregate counts (total sends, replies, positive replies, bounces, won deals) across the entire workspace for the last 7, 30, or 90 days, comparing against the prior period for trend analysis. USE THIS for high-level workspace executive summaries. DO NOT use for a single campaign (use get_campaign_stats instead) or for provider/mailbox breakdowns (use get_campaign_analytics instead).

get_threadC

A thread with every message, the campaign emails and the lead

get_unibox_filtersC

Unibox counts by label, mailbox and campaign

import_leadsA

Import leads in chunks Send up to 5,000 rows per call. The first call creates the import and returns its id; pass importId with every next chunk and final: true with the last. Addresses are deduped, suppressed ones skipped, invalid ones counted. ESP detection and verification run in the background after the final chunk.

label_threadA

Set or clear a thread's label The lead gets the label for the thread's campaign and the label's triggers run (suppress, stop in campaign, pause campaign, move to list). null clears it.

launch_campaignA

Launch or resume a campaign Runs the launch checklist first and refuses when a required item fails. The worker then sends inside the schedule window.

list_campaignsC

List campaigns Newest first, with lead counts by progress.

list_domainsA

List all connected sending domains and their verification status. Returns all custom sending domains currently registered in the workspace, including their mailbox count, latest deliverability scores, and verification history. USE THIS to review existing sending infrastructure. DO NOT use to register a new domain (use add_domain instead) or to test an external domain without adding it (use check_domain instead).

list_lead_listsC

Lead lists with counts

list_leadsB

List leads Paged, newest first by default. Filter by list, label, status, verification and ESP, or search email, name and company.

list_mailboxesB

List mailboxes Connected sending mailboxes with today's limit, ramp-up and the DNS health of their domain.

list_threadsB

Reply threads, newest first Filter by unread, label, mailbox or campaign. Page with cursor from the previous answer.

pause_campaignB

Pause a running campaign Nothing more is sent until it is launched again. Emails already handed to the provider still arrive.

preview_campaignA

Render every step and variant for one lead Shows the emails exactly as that lead would get them, with spintax resolved the way it will be for them. Defaults to the first lead in the campaign.

send_replyB

Answer a thread Sends from the mailbox the conversation is on, in the same thread (In-Reply-To and References), to whoever wrote last. The previous message is quoted below.

set_sequenceA

Replace the whole sequence Steps in order, each with 1 to 5 variants. Bodies may be plain text (blank lines split paragraphs) or simple HTML. Use {{first_name}} style variables, {{first_name|there}} for a fallback, {Hi|Hello} spintax, and put {{unsubscribe}} in the first email. Only drafts and paused campaigns.

update_campaignC

Rename a campaign or change its schedule, mailboxes and options

whoamiA

Who am I: the user, workspace and plan behind this key or session

write_sequenceA

Write emails with AI from the offer profile. Drafts a whole sequence (mode sequence) or a new version of one variant (rewrite, shorter, angle), using only facts from the workspace offer profile and lead fields. Results are saved as new variants and never overwrite existing text; an empty campaign gets the drafted steps. Each email is checked against the content checklist; anything still failing comes back in problems. Requires that the workspace offer profile is configured in Ballast settings (or updated via update_offer_profile).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.4/5.0

Scored across 30 tools

Disambiguation4/5

Tools are largely distinct and descriptions explicitly cross-reference siblings with USE THIS/DO NOT patterns (stats vs analytics vs overview, add/check/list domain). Minor overlap remains between set_sequence and write_sequence (both author sequences) and between get_campaign and get_campaign_stats, but boundaries are mostly clear.

Naming Consistency5/5

Nearly every tool follows a consistent snake_case verb_noun pattern (list_campaigns, add_domain, create_campaign, send_reply, update_campaign). The only deviation is the single 'whoami', which is idiomatic and harmless.

Tool Count3/5

30 tools is heavy and sits at the top of the acceptable range, but the surface spans genuinely broad sub-domains (domains, mailboxes, campaigns, sequences, leads, threads, analytics, billing). Each tool maps to a distinct area, though consolidation is possible.

Completeness4/5

Coverage is strong across the cold-email lifecycle: leads, campaigns, sequences, domains, mailboxes, analytics, threads, billing and suppressions. Gaps are the lack of delete/remove operations (campaign, mailbox, domain) and a referenced-but-absent update_offer_profile tool, which agents must work around.

Maintenance

ActivityNo data
ResponsivenessNo issues