SendGrid MCP Server

A Model Context Protocol (MCP) server that provides comprehensive access to SendGrid's API v3 for email marketing, transactional email operations, dynamic template management, and detailed analytics. Features 154 tools…

Local serverstdioISC

What is the SendGrid MCP Server?

SendGrid MCP Server source profile. From the maintainer documentation: “A Model Context Protocol (MCP) server that provides comprehensive access to SendGrid's API v3 for email marketing, transactional email operations, dynamic template management, and detailed analytics. Features 154 tools covering all aspects of email management and performance analysis.”

Local setup

The project provides a local client configuration using sendgrid-mcp. Follow the repository’s build and installation steps before copying it, and replace example paths with the paths on your own computer.

Configuration values

The example declares SENDGRID_API_KEY, READ_ONLY. Secret-looking values have been replaced with placeholders. Required and optional labels are shown only when the documentation states them.

Source

Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
list_automationsList all marketing automations with metadata
get_automationGet detailed information about a specific automation
update_automation_settingsUpdate automation-level settings (name, status)
update_automation_stepUpdate individual step settings (status, wait time)
delete_automationPermanently delete an automation
open_automation_creatorOpen automation creator in browser
open_automation_editorOpen specific automation editor
list_single_sendsList all single send campaigns with metadata
get_single_sendRetrieve detailed content and settings for a single send campaign
open_single_send_creatorOpen campaign creator in browser for visual design
open_single_send_statsView detailed campaign performance statistics
list_contactsList all contacts with pagination and filtering
get_contactGet detailed information about a specific contact
create_contactCreate new contacts with custom fields
update_contactUpdate existing contact information and custom data
delete_contactDelete contacts permanently with cleanup
search_contactsSearch for contacts using advanced query conditions
search_contacts_by_emailsSearch for specific contacts by email addresses
list_email_listsList all email lists
create_email_listCreate a new email list
update_email_listUpdate email list properties
delete_email_listDelete an email list
create_contact_with_listsCreate contacts and assign to lists
remove_contact_from_listsRemove contacts from a specific list
list_segmentsList dynamic segments with parent relationships and criteria
open_segment_creatorOpen segment creator in browser for visual query building
update_segmentUpdate existing segment name or query criteria with real-time refresh
delete_segmentDelete an existing segment (contacts remain unaffected)
list_custom_fieldsList custom field definitions with data types
create_custom_fieldCreate new custom fields (Text, Number, Date types)
update_custom_fieldUpdate existing custom field definitions
delete_custom_fieldDelete custom field definitions with data cleanup
list_sendersList verified sender identities
create_senderCreate new sender identity
delete_senderDelete a verified sender identity
open_csv_uploaderOpen CSV upload interface
list_templatesList all dynamic and legacy templates
get_templateGet details of a specific template including all versions
create_templateCreate a new dynamic template
update_templateUpdate template name and settings
delete_templateDelete a template and all its versions
create_template_versionCreate a new version with HTML content and settings
get_template_versionGet details of a specific template version
update_template_versionUpdate version content, subject, and settings
delete_template_versionDelete a specific template version
create_html_templateCreate complete template with HTML content in one step (perfect for AI agents)
open_template_editorOpen SendGrid's visual template editor in browser
send_mailSend transactional emails (supports templates with dynamic template data)
get_global_statsRetrieve overall email performance metrics
get_stats_overviewGet comprehensive statistics across multiple dimensions
get_stats_by_browserStatistics broken down by browser type (Chrome, Firefox, Safari, etc.)
get_stats_by_client_typeStatistics by email client type (desktop, mobile, webmail)
get_stats_by_device_typeStatistics by device type (desktop, mobile, tablet)
get_stats_by_mailbox_providerStatistics by mailbox provider (Gmail, Outlook, Yahoo, etc.)
get_stats_by_countryStatistics by country and state/province
get_category_statsStatistics for specific email categories (13-month history)
get_subuser_statsStatistics for specific subuser accounts
get_scopesGet available API permission scopes (no arguments)
list_suppression_groupsList all unsubscribe (suppression) groups on the account
create_suppression_groupCreate a new unsubscribe (suppression) group
get_suppression_groupGet details about a specific unsubscribe (suppression) group
update_suppression_groupUpdate the name, description, or default status of an existing suppression group
delete_suppression_groupPermanently delete an unsubscribe (suppression) group. This action cannot be undone.
list_group_suppressionsList all email addresses that are unsubscribed from a specific suppression group
add_group_suppressionsAdd one or more email addresses to a specific suppression group's unsubscribe list
remove_group_suppressionRemove a single email address from a specific suppression group's unsubscribe list. This only re-permits mail assigned to this group's category -- it is not…
list_global_suppressionsList email addresses on the account-wide global unsubscribe list, optionally filtered by a time range
add_global_suppressionAdd recipients to the account-wide global unsubscribe list -- they will stop receiving all non-transactional mail from this account
get_global_suppressionCheck whether a specific email address is on the account-wide global unsubscribe list
delete_global_suppressionRemove an email address from the account-wide global suppression list, effectively resubscribing them to non-transactional mail
list_bouncesList all email addresses that have bounced, optionally filtered by a time range
get_bounceGet bounce event(s) recorded for a specific email address
delete_bounceRemove a bounce record for an email address so this address can receive mail again
list_blocksList all email addresses currently on the blocks list, optionally filtered by a time range
delete_blockRemove an email address from the blocks list so this address can receive mail again
list_spam_reportsList all email addresses that have reported mail as spam, optionally filtered by a time range
delete_spam_reportRemove an email address from the spam reports list so this address can receive mail again
list_invalid_emailsList all email addresses that have been marked invalid, optionally filtered by a time range
delete_invalid_emailRemove an email address from the invalid emails list so this address can receive mail again
list_authenticated_domainsList all authenticated (whitelabel) domains configured for sending mail
get_authenticated_domainGet detailed information about a specific authenticated domain, including its DNS records
create_authenticated_domainSet up domain authentication (SPF/DKIM) for sending mail from a custom domain
update_authenticated_domainUpdate the custom SPF or default settings of an existing authenticated domain
delete_authenticated_domainPermanently delete an authenticated domain. This action cannot be undone.
validate_authenticated_domainCheck whether the domain's DNS records are correctly configured for authentication
get_default_authenticated_domainGet the authenticated domain currently set as the default for sending mail
list_branded_linksList all branded links (link whitelabels) configured for click tracking
get_branded_linkGet detailed information about a specific branded link, including its DNS records
create_branded_linkSet up branded link tracking (click tracking through the sender's own domain instead of sendgrid.net)
update_branded_linkUpdate the default setting of an existing branded link
delete_branded_linkPermanently delete a branded link. This action cannot be undone.
validate_branded_linkCheck whether the branded link's DNS records are correctly configured
list_event_webhooksList all configured Event Webhook settings on the account
get_event_webhookGet the configuration of a specific Event Webhook by ID
create_event_webhookCreates a new Event Webhook that POSTs email events (delivered, bounced, opened, clicked, etc.) to the given URL
update_event_webhookUpdate the configuration of an existing Event Webhook
delete_event_webhookPermanently delete an Event Webhook configuration. This action cannot be undone.
test_event_webhookSends a test event payload to the given webhook URL to verify it's reachable and correctly configured
list_inbound_parse_settingsList all configured Inbound Parse webhook settings on the account
get_inbound_parse_settingGet the Inbound Parse webhook configuration for a specific hostname
create_inbound_parse_settingConfigures inbound email parsing so mail sent to the given hostname is POSTed to the given URL
update_inbound_parse_settingUpdate the Inbound Parse webhook configuration for a specific hostname
delete_inbound_parse_settingPermanently delete an Inbound Parse webhook configuration for a hostname. This action cannot be undone.
get_inbound_parse_statsGet statistics on the number of inbound emails parsed over a given date range
get_tracking_settingsRetrieve all tracking settings (click, open, subscription, Google Analytics) in one call
get_click_tracking_settingsRetrieve the current click tracking setting
update_click_tracking_settingsEnable or disable click tracking on links within emails
get_google_analytics_settingsRetrieve the current Google Analytics tracking settings
update_google_analytics_settingsUpdate Google Analytics tracking settings, including UTM campaign, content, medium, source, and term values
get_open_tracking_settingsRetrieve the current open tracking setting
update_open_tracking_settingsEnable or disable open tracking, which inserts an invisible pixel to record when an email is opened
get_subscription_tracking_settingsRetrieve the current subscription tracking settings
update_subscription_tracking_settingsUpdate subscription tracking settings, including the unsubscribe link content, landing page, URL, and replacement tag
get_all_mail_settingsRetrieve all mail settings (address whitelist, bounce purge, footer, forward bounce, forward spam, etc.) in one call
get_address_whitelist_settingsRetrieve the current address whitelist mail setting, which controls which email addresses or domains bypass all suppression lists
update_address_whitelist_settingsUpdate the address whitelist setting that controls which email addresses or domains bypass all suppression lists
get_bounce_purge_settingsRetrieve the current bounce purge mail setting, which automatically purges old bounce records after a configured number of days
update_bounce_purge_settingsUpdate the bounce purge setting that automatically purges old bounce records after a configured number of days
get_footer_settingsRetrieve the current footer mail setting, which appends a footer to every outgoing email
update_footer_settingsUpdate the footer setting that appends a footer to every outgoing email
get_forward_bounce_settingsRetrieve the current forward bounce mail setting, which forwards bounce notifications to a given email address
update_forward_bounce_settingsUpdate the forward bounce setting that forwards bounce notifications to a given email address
get_forward_spam_settingsRetrieve the current forward spam mail setting, which forwards spam report notifications to a given email address
update_forward_spam_settingsUpdate the forward spam setting that forwards spam report notifications to a given email address
list_api_keysList all API keys on the account (names and IDs only, not the secret key values)
get_api_keyGet details for a specific API key, including its scopes
list_alertsList all usage/stats alerts configured on the account
get_alertGet details for a specific alert
list_teammatesList all teammates (users) on the account
get_teammateGet details for a specific teammate, including their permission scopes
list_pending_teammatesList pending teammate invitations that haven't been accepted yet
list_ip_addressesList all IP addresses assigned to the account
get_ip_addressGet details for a specific IP address, including its warmup status and assigned subusers
list_assigned_ipsList all IP addresses that are currently assigned to a subuser
list_ip_poolsList all IP pools on the account
get_ip_poolGet details for a specific IP pool, including the IP addresses it contains
get_remaining_ipsGet the count and cost of additional dedicated IP addresses available for purchase
list_ip_warmupsList all IP addresses currently in the warmup process
get_ip_warmup_statusGet the warmup status for a specific IP address
list_allowed_ipsList IP addresses allowed to access the account via the API/UI (the access allowlist)
get_allowed_ipGet details for a specific entry in the access allowlist
list_access_activityList recent account access attempts (successful and blocked logins/API calls)
list_designsList all custom email designs in the Design Library
create_designCreate a new custom email design in the Design Library from raw HTML
get_designGet details for a specific design in the Design Library
update_designUpdate the content or metadata of an existing design in the Design Library
delete_designPermanently delete a custom design from the Design Library. This action cannot be undone.
duplicate_designCreate a copy of an existing design in the Design Library
list_prebuilt_designsList SendGrid's built-in pre-made design templates
get_prebuilt_designGet details for one of SendGrid's built-in pre-made designs
duplicate_prebuilt_designCreate an editable copy of one of SendGrid's built-in pre-made designs
validate_emailCheck whether an email address is valid and likely to be deliverable, using SendGrid's Email Address Validation API (consumes a billed validation credit per…
search_email_activitySearch sent message activity using SendGrid's SGQL filter syntax (e.g. by recipient, status, or subject) -- useful for troubleshooting why a specific email…
get_message_detailsGet full delivery event history and details for a single sent message by its message ID
CategoryTools
Total154

How to install the SendGrid MCP Server

{
  "mcpServers": {
    "sendgrid": {
      "command": "sendgrid-mcp",
      "env": {
        "SENDGRID_API_KEY": "YOUR_SENDGRID_API_KEY",
        "READ_ONLY": "true"
      }
    }
  }
}

From the project documentation. Replace placeholders and example paths before connecting.

Configuration

VariableDescriptionRequired
SENDGRID_API_KEYDeclared in the maintainer’s client configuration.Yes
READ_ONLYDeclared in the maintainer’s client configuration.Yes