Skip to main content
Glama
@mitr-analytics/mcp

@mitr-analytics/mcp

by shiv9thakur

Check webhook delivery health

get_webhook_health
Read-only

Show delivery counts by status for each webhook endpoint and the latest failure with its error, without payloads, to diagnose why a webhook is not receiving events.

Instructions

For each webhook endpoint, show delivery counts by status over its recent deliveries (delivered, pending, failed, exhausted) and the latest failure with its error. Payloads are not returned. Use this when a user says their webhook is not receiving events.

Input Schema

NameRequiredDescriptionDefault
deliveriesPerEndpointNoHow many recent deliveries to count per endpoint. Defaults to 50.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.3.1

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false. The description adds value on top of that by disclosing the return shape (per-endpoint status breakdown, latest failure plus error) and a meaningful boundary: "Payloads are not returned." That last point prevents the agent from promising message bodies to a user. Pagination or retention windows are still unstated.

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?

Three short sentences with zero filler. The return shape comes first, the payload exclusion second, and the situational trigger last, which is the right ordering for an agent scanning for fit.

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?

With no output schema, the description carries the return-value burden and does so adequately: the agent knows it gets per-endpoint status counts and a latest-failure error, and that payloads are absent. Missing only minor operational detail such as how endpoints with zero deliveries appear, or whether results cover all endpoints or only active ones.

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 single optional parameter deliveriesPerEndpoint carries its own description with default and bounds. The description never mentions the parameter, so it adds no meaning beyond the schema; baseline 3 applies.

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 names a specific verb and resource (show delivery counts per webhook endpoint) and enumerates exactly what is reported: counts by status (delivered, pending, failed, exhausted) plus the latest failure with its error. This clearly separates it from the sibling mutation tools create_webhook, update_webhook and delete_webhook.

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

Usage Guidelines4/5

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

There is an explicit trigger: "Use this when a user says their webhook is not receiving events." This gives the agent a concrete diagnostic entry point. It does not name an alternative tool or exclusion case, but the sibling set contains no competing read/diagnostic tool, so the guidance is effectively unambiguous.

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