MCP Server

The SparkPost MCP server lets AI agents work in your SparkPost account over the Model Context Protocol. They can send transmissions, manage templates and sending domains, pull deliverability metrics, and much more.

It is a remote server, so there is nothing to install and no API key to create. Point a supported host at the endpoint for your region, sign in to SparkPost, and approve the connection.

Endpoints

AccountMCP endpoint
SparkPosthttps://mcp.sparkpost.com/mcp
SparkPost EUhttps://mcp.eu.sparkpost.com/mcp

Use the endpoint that matches the region your account is in. An account on app.sparkpost.com uses the first; an account on app.eu.sparkpost.com uses the second.

Connecting

Claude

In Claude on the web or in the desktop app, open Settings → Connectors → Add custom connector, name it SparkPost, and paste the endpoint URL for your region. Claude opens a SparkPost sign-in window; approve the connection and the tools become available in your conversations.

Claude Code

Add the server from your terminal:

claude mcp add --transport http sparkpost https://mcp.sparkpost.com/mcp

For an EU account, use https://mcp.eu.sparkpost.com/mcp instead. Then run /mcp inside Claude Code and choose to authenticate. Your browser opens for SparkPost sign-in and consent.

Signing in

Authorization uses OAuth 2.1 with PKCE. The first time a host connects:

  1. It sends you to SparkPost to sign in.
  2. SparkPost shows a consent screen where you choose what the connection can do.
  3. Approving it returns you to the host with the connection ready to use.

You sign in with your ordinary SparkPost credentials. No API key is created, and none is pasted into the host.

Permissions

You select the permissions a connection holds on the consent screen. You may grant all of your own permissions, or any narrower subset of them.

A connection cannot be granted a permission you do not hold. The available set is bounded by your role on the account.

What the server can do

FamilyWhat it coversTools
TransmissionsSend email.transmissions_send
TemplatesCreate, list, retrieve, update, delete, and preview templates.templates_create, templates_list, templates_get, templates_update, templates_delete, templates_preview
Suppression listsSearch the suppression list; retrieve, add, update, and remove entries.suppression_search, suppression_get, suppression_upsert_bulk, suppression_upsert, suppression_delete
Recipient listsCreate, list, retrieve, update, and delete recipient lists.recipient_lists_create, recipient_lists_list, recipient_lists_get, recipient_lists_update, recipient_lists_delete
Sending domainsCreate, list, retrieve, update, delete, and verify sending domains.sending_domains_create, sending_domains_list, sending_domains_get, sending_domains_update, sending_domains_delete, sending_domains_verify
Tracking domainsCreate, list, retrieve, update, delete, and verify tracking domains.tracking_domains_create, tracking_domains_list, tracking_domains_get, tracking_domains_update, tracking_domains_delete, tracking_domains_verify
WebhooksCreate, list, retrieve, update, delete, and validate webhooks.webhooks_create, webhooks_list, webhooks_get, webhooks_update, webhooks_delete, webhooks_validate
MetricsDeliverability metrics overall and over time, broken out by domain, campaign, or template, plus bounce and rejection reasons.metrics_deliverability, metrics_deliverability_time_series, metrics_deliverability_by_domain, metrics_deliverability_by_campaign, metrics_deliverability_by_template, metrics_bounce_reasons, metrics_rejection_reasons
Message eventsSearch message events, and fetch sample events.events_search_message, events_samples_message
SubaccountsList, create, retrieve, and update subaccounts.subaccounts_list, subaccounts_create, subaccounts_get, subaccounts_update