Skip to main content
Glama

Get deliverability

get_deliverability
Read-only

Fetch best-effort deliverability metrics for recent sends (7d or 30d window).

Input Schema

NameRequiredDescriptionDefault
windowNoLook-back window. Default 30d

Output Schema

NameRequiredDescriptionDefault
notesNoHow to read the numbers
windowYes7d or 30d
summaryYesCounts and rates across all sends in the window
by_domainNoThe same, per sending domain
generated_atNoISO 8601
window_startNoISO 8601
top_bounce_reasonsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / window / description
      Added value: +"Look-back window. Default 30d"
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "by_domain": {
      +      "description": "The same, per sending domain",
      +      "items": {
      +        "properties": {
      +          "attempted": {
      +            "type": "number"
      +          },
      +          "bounce_rate": {
      +            "type": "number"
      +          },
      +          "bounced": {
      +            "type": "number"
      +          },
      +          "click_rate": {
      +            "type": "number"
      +          },
      +          "clicked": {
      +            "type": "number"
      +          },
      +          "complained": {
      +            "type": "number"
      +          },
      +          "complaint_rate": {
      +            "type": "number"
      +          },
      +          "delivered": {
      +            "type": "number"
      +          },
      +          "delivery_rate": {
      +            "type": "number"
      +          },
      +          "domain": {
      +            "type": "string"
      +          },
      +          "failed": {
      +            "type": "number"
      +          },
      +          "mail_server_relay": {
      +            "description": "Relay counts from the mail server, for the busiest domains",
      +            "properties": {
      +              "bounced": {
      +                "type": "number"
      +              },
      +              "delayed": {
      +                "type": "number"
      +              },
      +              "failed": {
      +                "type": "number"
      +              },
      +              "sent": {
      +                "type": "number"
      +              },
      +              "total_messages": {
      +                "type": "number"
      +              },
      +              "window_days": {
      +                "type": "number"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          "open_rate": {
      +            "type": "number"
      +          },
      +          "opened": {
      +            "type": "number"
      +          },
      +          "scheduled": {
      +            "type": "number"
      +          },
      +          "sent": {
      +            "type": "number"
      +          },
      +          "suppressed": {
      +            "type": "number"
      +          },
      +          "total_emails": {
      +            "type": "number"
      +          }
      +        },
      +        "required": [
      +          "domain"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "generated_at": {
      +      "description": "ISO 8601",
      +      "type": "string"
      +    },
      +    "notes": {
      +      "description": "How to read the numbers",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "summary": {
      +      "description": "Counts and rates across all sends in the window",
      +      "properties": {
      +        "attempted": {
      +          "type": "number"
      +        },
      +        "bounce_rate": {
      +          "type": "number"
      +        },
      +        "bounced": {
      +          "type": "number"
      +        },
      +        "click_rate": {
      +          "type": "number"
      +        },
      +        "clicked": {
      +          "type": "number"
      +        },
      +        "complained": {
      +          "type": "number"
      +        },
      +        "complaint_rate": {
      +          "type": "number"
      +        },
      +        "delivered": {
      +          "type": "number"
      +        },
      +        "delivery_rate": {
      +          "type": "number"
      +        },
      +        "failed": {
      +          "type": "number"
      +        },
      +        "open_rate": {
      +          "type": "number"
      +        },
      +        "opened": {
      +          "type": "number"
      +        },
      +        "scheduled": {
      +          "type": "number"
      +        },
      +        "sent": {
      +          "type": "number"
      +        },
      +        "suppressed": {
      +          "type": "number"
      +        },
      +        "total_emails": {
      +          "type": "number"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "top_bounce_reasons": {
      +      "items": {
      +        "properties": {
      +          "count": {
      +            "type": "number"
      +          },
      +          "reason": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "window": {
      +      "description": "7d or 30d",
      +      "type": "string"
      +    },
      +    "window_start": {
      +      "description": "ISO 8601",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "window",
      +    "summary"
      +  ],
      +  "type": "object"
      +}
  2. First observed

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds a genuinely useful caveat with 'best-effort', signaling the metrics may be approximate or incomplete, but says nothing about aggregation scope, latency, or account-level vs domain-level resolution.

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?

A single sentence with the caveat ('best-effort') and the scope ('recent sends', window size) front-loaded. There is no filler and nothing redundant.

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?

For a one-optional-parameter, read-only tool with full schema coverage, an output schema, and annotations covering the safety profile, the description supplies the two things the structured fields cannot: the accuracy caveat and the fact that results cover 'recent sends'. The missing usage guidance is a minor gap given the tool's simplicity.

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 description coverage is 100% and the enum values and default (30d) are fully documented in the schema. The description only restates '7d or 30d window' without adding meaning such as what a 30d look-back actually aggregates, so the baseline of 3 applies.

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

Purpose4/5

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

States a specific verb and resource: 'Fetch deliverability metrics for recent sends', with the scope narrowed to a 7d/30d window. No sibling tool overlaps with deliverability reporting, so the purpose is unambiguous, though it does not explicitly differentiate itself from neighbors like get_domain or list_emails.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance, no prerequisites, and no alternatives. It mentions the two windows but does not say which to pick or when this tool is the right call versus inspecting a specific domain or email.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources