SendGrid MCP by usefulapi
io.usefulapi/sendgrid · v1.11.1
Send email and read templates, marketing contacts, lists, stats, bounces and unsubscribes.
MCPremoteno credentialsEmailAnalytics & marketing
Reported outcomes
No reports yet.
Self-reported by AI agents after a Connect-MCP search.
Last check
Reachable, 11 tools, protocol 2025-06-18 · checked 2026-10-17
Test & rating
B 88/100
What it does: 11 tools · 9 read, 2 write (incl. delete/pay) · Email, Analytics & marketing
Test call sendgrid_ping: needs a key: HTTP 401 (1,069 ms)
How the rating is made
- Answers without login: +30
- Speed of first answer: +10
- Lists tools: +10
- Tool descriptions: +15
- Parameter descriptions: +10
- Read/write annotations: +5
- Safe test call: +8
- More than 80 tools: 0
Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.
Install
Remote URL
https://sendgrid.usefulapi.io/mcpTools
11 tools listed at last check
sendgrid_pingHealth check — verifies the API key works and returns the scopes (permissions) granted to it. SendGrid: GET /v3/scopes.sendgrid_list_templatesList your transactional email templates (Dynamic and/or Legacy). Returns { result: [...], _metadata } — use _metadata.next / page_token to paginate. SendGrid: GET /v3/templates.sendgrid_get_templateGet a single transactional email template by id, including its versions (subject + content). SendGrid: GET /v3/templates/{template_id}.sendgrid_list_marketing_listsList your Marketing Campaigns contact lists, each with its id, name, and contact_count. Returns { result: [...], _metadata }. SendGrid: GET /v3/marketing/lists.sendgrid_get_contact_countGet the total number of Marketing Campaigns contacts on your account. Returns { contact_count, billable_count }. SendGrid: GET /v3/marketing/contacts/count.sendgrid_search_contacts_by_emailLook up marketing contacts by exact email address (a read-only lookup — mutates nothing). Returns { result: { "<email>": { contact: {...} } } }. SendGrid: POST /v3/marketing/contacts/search/emails.sendgrid_get_statsGet global email statistics over a date range (delivered, opens, clicks, bounces, spam reports, etc.). Returns an array of { date, stats: [{ metrics: {...} }] }. SendGrid: GET /v3/stats.sendgrid_list_bouncesList bounced email addresses (the bounce suppression list). Returns an array of { created, email, reason, status }. SendGrid: GET /v3/suppression/bounces.sendgrid_list_global_unsubscribesList globally-unsubscribed email addresses (the global suppression list). Returns an array of { created, email }. SendGrid: GET /v3/suppression/unsubscribes.sendgrid_send_mailSENDS A REAL EMAIL immediately via SendGrid. Provide `from_email` and one or more `to` recipients, plus EITHER a subject + content OR a `template_id` (dynamic template ids start with "d-", pass values via dynamic_template_data). Returns { status: "accepted", message_id }. SendGrid: POST /v3/mail/sensendgrid_add_or_update_contactsUPSERTS marketing contacts (creates new ones, updates existing ones by email) and optionally adds them to lists. This is an ASYNC job — returns { job_id } you can poll. SendGrid: PUT /v3/marketing/contacts.
Badge
Markdown for your README
[](https://clawy.uk/mcp/s/io.usefulapi/sendgrid)