# SendGrid MCP Server [Health: Active]

**Category:** 💬 Communication  
**Repository:** https://github.com/deyikong/sendgrid-mcp  
**GitHub Stars:** 4  
**npm Downloads (last month):** 1619  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/sendgrid-mcp-server

## Description
MCP server for SendGrid's v3 API: email marketing, transactional mail, templates, and analytics.

## Tools
Capabilities this server exposes over MCP:

- **list_automations** — List all marketing automations with metadata
- **get_automation** — Get detailed information about a specific automation
- **update_automation_settings** — Update automation-level settings (name, status)
- **update_automation_step** — Update individual step settings (status, wait time)
- **delete_automation** — Permanently delete an automation
- **open_automation_creator** — Open automation creator in browser
- **open_automation_editor** — Open specific automation editor
- **list_single_sends** — List all single send campaigns with metadata
- **get_single_send** — Retrieve detailed content and settings for a single send campaign
- **open_single_send_creator** — Open campaign creator in browser for visual design
- **open_single_send_stats** — View detailed campaign performance statistics
- **list_contacts** — List all contacts with pagination and filtering
- **get_contact** — Get detailed information about a specific contact
- **create_contact** — Create new contacts with custom fields
- **update_contact** — Update existing contact information and custom data
- **delete_contact** — Delete contacts permanently with cleanup
- **search_contacts** — Search for contacts using advanced query conditions
- **search_contacts_by_emails** — Search for specific contacts by email addresses
- **list_email_lists** — List all email lists
- **create_email_list** — Create a new email list
- **update_email_list** — Update email list properties
- **delete_email_list** — Delete an email list
- **create_contact_with_lists** — Create contacts and assign to lists
- **remove_contact_from_lists** — Remove contacts from a specific list
- **list_segments** — List dynamic segments with parent relationships and criteria
- **open_segment_creator** — Open segment creator in browser for visual query building
- **update_segment** — Update existing segment name or query criteria with real-time refresh
- **delete_segment** — Delete an existing segment (contacts remain unaffected)
- **list_custom_fields** — List custom field definitions with data types
- **create_custom_field** — Create new custom fields (Text, Number, Date types)
- **update_custom_field** — Update existing custom field definitions
- **delete_custom_field** — Delete custom field definitions with data cleanup
- **list_senders** — List verified sender identities
- **create_sender** — Create new sender identity
- **delete_sender** — Delete a verified sender identity
- **open_csv_uploader** — Open CSV upload interface
- **list_templates** — List all dynamic and legacy templates
- **get_template** — Get details of a specific template including all versions
- **create_template** — Create a new dynamic template
- **update_template** — Update template name and settings
- **delete_template** — Delete a template and all its versions
- **create_template_version** — Create a new version with HTML content and settings
- **get_template_version** — Get details of a specific template version
- **update_template_version** — Update version content, subject, and settings
- **delete_template_version** — Delete a specific template version
- **create_html_template** — Create complete template with HTML content in one step (perfect for AI agents)
- **open_template_editor** — Open SendGrid's visual template editor in browser
- **send_mail** — Send transactional emails (supports templates with dynamic template data)
- **get_global_stats** — Retrieve overall email performance metrics
- **get_stats_overview** — Get comprehensive statistics across multiple dimensions
- **get_stats_by_browser** — Statistics broken down by browser type (Chrome, Firefox, Safari, etc.)
- **get_stats_by_client_type** — Statistics by email client type (desktop, mobile, webmail)
- **get_stats_by_device_type** — Statistics by device type (desktop, mobile, tablet)
- **get_stats_by_mailbox_provider** — Statistics by mailbox provider (Gmail, Outlook, Yahoo, etc.)
- **get_stats_by_country** — Statistics by country and state/province
- **get_category_stats** — Statistics for specific email categories (13-month history)
- **get_subuser_stats** — Statistics for specific subuser accounts
- **get_scopes** — Get available API permission scopes (no arguments)
- **list_suppression_groups** — List all unsubscribe (suppression) groups on the account
- **create_suppression_group** — Create a new unsubscribe (suppression) group
- **get_suppression_group** — Get details about a specific unsubscribe (suppression) group
- **update_suppression_group** — Update the name, description, or default status of an existing suppression group
- **delete_suppression_group** — Permanently delete an unsubscribe (suppression) group. This action cannot be undone.
- **list_group_suppressions** — List all email addresses that are unsubscribed from a specific suppression group
- **add_group_suppressions** — Add one or more email addresses to a specific suppression group's unsubscribe list
- **remove_group_suppression** — Remove 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 a global resubscribe.
- **list_global_suppressions** — List email addresses on the account-wide global unsubscribe list, optionally filtered by a time range
- **add_global_suppression** — Add recipients to the account-wide global unsubscribe list -- they will stop receiving all non-transactional mail from this account
- **get_global_suppression** — Check whether a specific email address is on the account-wide global unsubscribe list
- **delete_global_suppression** — Remove an email address from the account-wide global suppression list, effectively resubscribing them to non-transactional mail
- **list_bounces** — List all email addresses that have bounced, optionally filtered by a time range
- **get_bounce** — Get bounce event(s) recorded for a specific email address
- **delete_bounce** — Remove a bounce record for an email address so this address can receive mail again
- **list_blocks** — List all email addresses currently on the blocks list, optionally filtered by a time range
- **delete_block** — Remove an email address from the blocks list so this address can receive mail again
- **list_spam_reports** — List all email addresses that have reported mail as spam, optionally filtered by a time range
- **delete_spam_report** — Remove an email address from the spam reports list so this address can receive mail again
- **list_invalid_emails** — List all email addresses that have been marked invalid, optionally filtered by a time range
- **delete_invalid_email** — Remove an email address from the invalid emails list so this address can receive mail again
- **list_authenticated_domains** — List all authenticated (whitelabel) domains configured for sending mail

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "sendgrid-mcp-server": {
    "command": "npx",
    "args": ["-y","sendgrid-mcp"],
    "env": {
      "SENDGRID_API_KEY": ""
    }
  }
}
```

**Requires environment variables:** `SENDGRID_API_KEY` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What SendGrid MCP Server MCP server does

SendGrid MCP Server MCP server exposes SendGrid email operations as MCP tools. The repository describes coverage for marketing automations, one-time Single Send campaigns, contacts, lists, segments, custom fields, dynamic templates, transactional mail, sender identities, suppressions, account settings, and performance reporting.

The listed tools support common contact and campaign workflows. Agents can list, inspect, create, update, search, and delete contacts; manage email lists and custom fields; inspect and modify automation settings and steps; and review Single Send campaign details. Browser-opening tools provide links into SendGrid’s visual automation, campaign, and segment interfaces rather than replacing those interfaces.

The project is maintained independently by a SendGrid engineer and is not presented as an official SendGrid product.

## How it works

An MCP client invokes the server’s tools, and the server calls SendGrid’s v3 API with the configured `SENDGRID_API_KEY`. Local clients can start the package as a subprocess using stdio. Remote deployments can expose the server through Streamable HTTP; the documented endpoint is `POST /mcp`, while `GET /health` provides a health response for load balancers. HTTP requests are stateless and do not require a session ID.

The server supports HTTP authentication modes of `none`, `token`, and `oauth`. OAuth mode verifies tokens issued by an existing identity provider; it does not issue or store those credentials. A read-only safety setting is enabled by default and blocks create, update, delete, and send operations while leaving read and analytics access available.

## Setup and configuration

For local use, install the `sendgrid-mcp` package globally with npm and run it with Node.js 20 or newer. Configure `SENDGRID_API_KEY` in the environment used by the MCP client. The key is required for both stdio and HTTP deployments.

For a self-hosted HTTP deployment, set `MCP_TRANSPORT=http`. Token authentication additionally uses `MCP_AUTH_MODE=token` and an `MCP_AUTH_TOKEN` of at least 16 characters. OAuth authentication uses `MCP_AUTH_MODE=oauth`, along with an issuer and audience; the documented configuration can also define required scopes and the public URL. The `none` mode is intended for loopback development and refuses to start on a public bind.

The hosted MCP Market option runs the server remotely, so local installation is not required. Its deployment flow accepts the repository or npm package and lets you provide the SendGrid key in the hosted configuration.

## Tools and capabilities

SendGrid MCP Server MCP server includes tools for:

- Listing and inspecting automations, Single Send campaigns, contacts, lists, segments, and custom fields.
- Creating, updating, searching, and deleting contacts, including custom data and list assignments.
- Creating and maintaining email lists and custom field definitions.
- Updating automation names, statuses, steps, wait times, and segment criteria.
- Opening SendGrid’s browser-based creators, editors, and campaign statistics pages.
- Supporting broader SendGrid features documented by the project, including dynamic templates, transactional sending, sender identities, suppression data, account settings, and multidimensional analytics.

## Limitations and notes

Write operations can be prevented by the default read-only mode, so deployments intended to modify SendGrid data must account for that guard. Deletion tools permanently remove automations, contacts, lists, or segments according to the operation; the segment description specifically notes that deleting a segment does not delete its contacts.

The server requires a valid SendGrid API key even when HTTP authentication is enabled. HTTP OAuth controls access to the MCP endpoint; it does not replace the SendGrid credential used for API calls. Browser integration opens SendGrid web workflows for visual operations, so those tools depend on access to the SendGrid interface in the user’s browser.

The README names Claude Desktop, Claude Code, Cline, Zed, Continue, Codex CLI, Claude custom connectors, OpenAI’s Responses API and Apps SDK, MCP Market, and other MCP-compatible clients as supported connection options.

_Full upstream README: https://allmcps.com/mcp/sendgrid-mcp-server/readme_

