Skip to main content
Glama

sendgrid

Server Details

Send email and read templates, marketing contacts, lists, stats, bounces and unsubscribes.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
m190/usefulapi-mcp
GitHub Stars
0

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.

Tool Definition Quality

Score is being calculated. Check back soon.

Available Tools

11 tools
sendgrid_add_or_update_contactsAdd or update marketing contacts
Destructive
Inspect

UPSERTS 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
contactsYesContacts to add or update (each needs an `email`; custom fields pass through).
list_idsNoList ids to add these contacts to.
sendgrid_get_contact_countGet contact count
Read-only
Inspect

Get the total number of Marketing Campaigns contacts on your account. Returns { contact_count, billable_count }. SendGrid: GET /v3/marketing/contacts/count.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

sendgrid_get_statsGet email stats
Read-only
Inspect

Get 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of results to return.
offsetNoNumber of results to skip (for pagination).
end_dateNoEnd date in YYYY-MM-DD format (defaults to today).
start_dateYesStart date in YYYY-MM-DD format (required).
aggregated_byNoHow to group the returned statistics.
sendgrid_get_templateGet email template
Read-only
Inspect

Get a single transactional email template by id, including its versions (subject + content). SendGrid: GET /v3/templates/{template_id}.

ParametersJSON Schema
NameRequiredDescriptionDefault
template_idYesThe template id (dynamic template ids start with "d-").
sendgrid_list_bouncesList bounces
Read-only
Inspect

List bounced email addresses (the bounce suppression list). Returns an array of { created, email, reason, status }. SendGrid: GET /v3/suppression/bounces.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNoFilter to a specific bounced email address.
limitNoNumber of bounces to return (1–500).
offsetNoNumber of bounces to skip (for pagination).
end_timeNoEnd of the time range, as a Unix timestamp (seconds).
start_timeNoStart of the time range, as a Unix timestamp (seconds).
sendgrid_list_global_unsubscribesList global unsubscribes
Read-only
Inspect

List globally-unsubscribed email addresses (the global suppression list). Returns an array of { created, email }. SendGrid: GET /v3/suppression/unsubscribes.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of records to return.
offsetNoNumber of records to skip (for pagination).
end_timeNoEnd of the time range, as a Unix timestamp (seconds).
start_timeNoStart of the time range, as a Unix timestamp (seconds).
sendgrid_list_marketing_listsList marketing lists
Read-only
Inspect

List your Marketing Campaigns contact lists, each with its id, name, and contact_count. Returns { result: [...], _metadata }. SendGrid: GET /v3/marketing/lists.

ParametersJSON Schema
NameRequiredDescriptionDefault
page_sizeNoNumber of lists per page (1–1000, default 100).
page_tokenNoPagination token from a previous response's _metadata.
sendgrid_list_templatesList email templatesA
Read-only
Inspect

List your transactional email templates (Dynamic and/or Legacy). Returns { result: [...], _metadata } — use _metadata.next / page_token to paginate. SendGrid: GET /v3/templates.

ParametersJSON Schema
NameRequiredDescriptionDefault
page_sizeNoNumber of templates per page (1–200, default 50).
page_tokenNoPagination token from a previous response's _metadata.
generationsNoWhich template generation(s) to return (default: dynamic).dynamic
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true. The description adds context about paginated return format (_metadata with next/page_token) and the underlying API endpoint (GET /v3/templates). No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences: first states purpose, second explains return structure and API reference. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description adequately explains the return object shape and pagination. Parameters are fully documented in schema. Lacks error handling details, but acceptable for a low-complexity list tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all three parameters. The description reiterates pagination and generation defaults but adds no new meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the resource (transactional email templates) and action (list), including the distinction between Dynamic and Legacy generations. It clearly differentiates from sibling tools like sendgrid_list_bounces or sendgrid_list_marketing_lists.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. The context of sibling tools does not cause confusion, but the description does not include when-not-to-use or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sendgrid_pingPing (health check)
Read-only
Inspect

Health check — verifies the API key works and returns the scopes (permissions) granted to it. SendGrid: GET /v3/scopes.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

sendgrid_search_contacts_by_emailSearch contacts by email
Read-only
Inspect

Look up marketing contacts by exact email address (a read-only lookup — mutates nothing). Returns { result: { "": { contact: {...} } } }. SendGrid: POST /v3/marketing/contacts/search/emails.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailsYesOne or more exact email addresses to look up.
sendgrid_send_mailSend email
Destructive
Inspect

SENDS 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/send.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNoCC recipient email addresses.
toYesOne or more recipient email addresses.
bccNoBCC recipient email addresses.
contentNoThe email body. Required unless template_id is provided.
subjectNoEmail subject line. Required unless a template_id supplies it.
reply_toNoReply-To email address.
from_nameNoSender display name.
from_emailYesSender email address (must be a verified sender/domain).
template_idNoA template id to render (dynamic template ids start with "d-"). When set, `content` is omitted.
content_typeNoMIME type of the body content (default text/html).text/html
dynamic_template_dataNoKey/value data merged into a dynamic template's handlebars variables.

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.