RenewRoster
Server Details
Track domain and SSL certificate expiry for your agency clients from any MCP client.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- raghuchinnannan/renewroster-mcp
- GitHub Stars
- 0
- Server Listing
- RenewRoster MCP Server
TDQS
Scored across 15 tools
Most tools have clearly distinct purposes: asset retrieval, history, expiring lists, reports, webhooks, and live lookups are separated by resource and action. Minor overlap exists because get_asset already includes recent check history while get_asset_history exists separately, and lookup_cert versus lookup_ct both concern certificates but use different sources.
All tool names follow a consistent snake_case verb_noun pattern using get_, list_, or lookup_. The convention is predictable throughout, with no mixed casing or vague standalone verbs.
Fifteen tools is at the upper end of the ideal range but remains well-scoped for an expiry/renewal tracking service. The set covers assets, reports, clients, alerts, webhooks, members, and external lookups without obvious redundant tools.
The read-only surface is broad and covers monitoring, reporting, history, and external lookups well. However, there are no create/update/delete operations for assets, reminders, alert channels, webhooks, or clients, so agents cannot manage the roster despite the domain implying lifecycle operations.
Available Tools
15 toolsget_agencyAgency, plan and usageARead-onlyInspect
Agency name, current plan, asset/channel/webhook/API-key usage against limits, and the API rate limit.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so safety is covered. The description adds meaningful behavioral context by enumerating what the call returns (name, plan, usage vs. limits, rate limit), which is valuable because there is no output schema; it does not mention permissions or error behavior, but those are minor gaps for a parameterless read.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence front-loads the resource and then lists the returned data categories. Every clause corresponds to useful information, though 'Agency name' is mildly redundant with the tool name and the fragment style could be sharper.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 burden of describing return values and does so adequately by listing the main data categories. For a parameterless read-only tool, that is close to complete; only edge-case behavior such as not-found handling is left unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing to disambiguate. The baseline for a 0-parameter tool is 4, and no parameter-related information is missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific resource and scope: agency name, plan, usage against limits, and API rate limit. It is clearly not a list tool or a certificate lookup like its siblings, though it never states an explicit verb and does not directly contrast itself with any sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer this is used to check agency-level plan and usage. There is no explicit when-to-use, when-not-to-use, or mention of alternatives among the many sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_assetGet one assetBRead-onlyInspect
One tracked domain or certificate by id, with recent check history.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is a safe, read-only, non-destructive operation. The description adds that it returns one tracked asset with recent check history, but does not explain returned fields, history depth, or any failure behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted wording. It immediately states scope and the inclusion of recent check history.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with annotations covering safety, the description gives the basic scope and return hint. However, because there is no output schema and no id documentation, an agent still lacks enough detail about the identifier and the shape of the returned asset/history.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one parameter with 0% schema description coverage, so the description must carry the burden of explaining it. 'By id' identifies the selector, but it does not clarify what kind of id is expected, its format, or whether it is an asset id versus a domain or certificate identifier.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource ('tracked domain or certificate') and retrieval by id, and adds that recent check history is included. It is clear enough to distinguish from list_assets, though it does not explicitly contrast with get_asset_history or lookup_domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'by id' implies the usage condition for retrieving one asset, but there is no explicit when-to-use guidance versus alternatives such as get_asset_history, lookup_domain, or lookup_cert. The implied use case is adequate but not fully disambiguated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_asset_historyAsset check historyBRead-onlyInspect
Recent expiry checks for one asset, newest first.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| limit | No |
TDQS
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 ordering (newest first) and recency scoping, but says nothing about how 'recent' is bounded, whether the result is capped, or pagination — meaningful gaps for a history endpoint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler; the scope constraint and ordering come first. Nothing is repeated from the title or schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read tool with annotations covering safety and no output schema, the description is close to sufficient but leaves the limit parameter and the meaning/shape of a 'check' record unexplained. Adequate, not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning and largely does not. 'One asset' loosely maps to the required id, but the limit parameter is never mentioned — no default, no indication of what it limits (checks returned) — and id's expected format is left entirely to the schema's maxLength constraint.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the resource precisely — expiry check history for a single asset — and distinguishes it from sibling get_asset/list_assets by making clear it returns checks, not the asset itself. It also discloses ordering (newest first). No explicit verb ('returns'), but the resource and scope are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer this is for inspecting an asset's past expiry checks. There is no explicit when-to-use vs get_asset or list_expiring, and no guidance on choosing a limit value or what happens with the default.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_remindersGet reminder scheduleBRead-onlyInspect
Days before expiry when reminders go out, for domains and SSL.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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 fully covered structurally. The description adds only the scope qualifier ('for domains and SSL'), which is genuinely useful, but says nothing about the shape or granularity of what comes back.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short with no filler, but the brevity comes from under-specification rather than tight writing, and the leading element is a noun phrase rather than an action, which weakens front-loading. A single sentence with a verb would have cost nothing and been far clearer.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description bears responsibility for conveying return values, and it only partially does so ('days before expiry ... for domains and SSL'). It does not indicate whether the result is a per-asset schedule, a global config, or how domain vs. SSL entries are distinguished — a meaningful gap for a zero-parameter read tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline of 4 applies. The description correctly implies no input is needed, consistent with the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is a noun fragment ('Days before expiry when reminders go out, for domains and SSL') that conveys the subject matter — reminder lead times scoped to domains and SSL — but never states a verb or makes clear whether it returns reminder configuration, a list of pending reminders, or something else. It is distinguishable from siblings like list_expiring or get_asset by topic, but only because the reader infers from the title.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus alternatives such as list_expiring (which deals with expiring assets) or list_alert_channels (which deals with notification routing). The reader must guess whether this is configuration lookup or event listing, and no prerequisites or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_reportMonthly renewal reportBRead-onlyInspect
Renewals due in a month (YYYY-MM, default current) with who pays and totals.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No |
TDQS
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 useful behavior beyond that: the period defaults to the current month, it must use the YYYY-MM format, and it returns payer information plus totals. It says nothing about paging, empty results, or how totals are aggregated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One compact sentence with the resource and time scope front-loaded, followed by the format/default and payload hint. Nothing is wasteful, though the telegraphic phrasing ('who pays') is slightly ambiguous.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read-only tool with no output schema, the description sufficiently covers the input default and format and sketches the return contents (payer, totals). Richer detail on the response shape would help, but annotations supply the safety context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the single period parameter has no description, so the description must carry the meaning. It does: 'YYYY-MM, default current' explains both the format and the default, which is exactly what an agent needs to invoke it correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource and scope: renewals due in the given month, including who pays and totals. It clarifies the generic name get_report, but it never distinguishes this from the similar sibling list_expiring, so an agent could hesitate between the two.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives such as list_expiring or get_reminders. The month-scoped renewal framing implies usage, but no exclusions or choice criteria are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_alert_channelsList alert channelsBRead-onlyInspect
Email, Slack, Discord and webhook alert channels. URL targets are masked.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true, destructiveHint=false and closed-world scope, so the safety profile is covered. The description adds one genuinely useful behavioral fact not in structured fields: URL targets are masked in the response. It says nothing else about result shape or volume, so it earns partial credit but no more.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with zero filler, and the masking behavior is stated up front where it matters. The fragmentary phrasing leaves it slightly front-light on action rather than over-long.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless list tool with full annotation coverage this is close to sufficient, and the masking note fills the return-value gap that the absent output schema creates. It still leaves an agent guessing about result shape (IDs, names, whether channel counts or config details are included), which a single clause could have covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is no parameter semantics to explain; the baseline of 4 applies. The description correctly does not waste words on arguments.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is a noun phrase ('Email, Slack, Discord and webhook alert channels') with no verb, so the listing action comes only from the tool name/title. It does enumerate the resource classes returned, which helps distinguish it from list_webhooks, but the sentence alone does not state what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No indication of when to call this versus siblings such as list_webhooks or list_webhook_deliveries, and no prerequisites or exclusions. A user must infer from the name alone that this is the read path for configured alert destinations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_assetsList tracked assetsCRead-onlyInspect
All tracked domains and SSL certificates with filters.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | ||
| limit | No | ||
| client | No | client id, or 'none' for unassigned | |
| offset | No | ||
| status | No | ||
| expiring_within | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is a safe, read-only, non-destructive operation. The description adds only that it covers 'all tracked' assets and supports filters; it does not explain pagination behavior or result limits, but the annotations carry most of the safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It is appropriately sized, though its brevity contributes to gaps handled poorly in other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With six parameters, low schema coverage, no output schema, and complex filtering options like expiring_within and status, the description is too thin to guide correct invocation. It omits pagination, filter semantics, and expected return shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 17%, with just the 'client' parameter documented in-schema. The description says 'with filters' but never explains type, status, expiring_within, limit, or offset semantics, leaving most filter behavior undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the resource: tracked domains and SSL certificates. It does not name or differentiate against siblings such as list_expiring, lookup_domain, or lookup_cert, so an agent must infer that this is the unfiltered/listing endpoint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'with filters' hints that filters are optional, but there is no guidance on when to use this tool versus list_expiring or lookup_domain/lookup_cert. No prerequisites or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_clientsList clientsBRead-onlyInspect
The agency's clients with asset counts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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 only that results include asset counts, with no mention of pagination, ordering, or whether the full client list is returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loaded, with no wasted words, but the single noun phrase is under-specified rather than genuinely concise. A verb-led sentence would cost one more word and add clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only list tool with annotations covering safety and no output schema, the description supplies the key missing piece: that each client comes with asset counts. Nothing else is strictly required to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, which is the baseline-4 case; there is nothing for the description to disambiguate. The description correctly implies an unfiltered list of all clients.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The fragment names the resource (clients) and the enrichment (asset counts), so an agent knows roughly what it returns. But it lacks a verb and offers no differentiation from siblings like get_agency or list_members, leaving purpose only implied by the tool name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus get_agency, list_members, or list_assets, and no prerequisites or exclusions. The agent must infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_expiringList expiring domains and certificatesARead-onlyInspect
Domains and SSL certificates expiring within N days (default 30), soonest first. Includes already expired ones.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | ||
| type | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this is a safe read-only op, so the description correctly spends its words elsewhere: it discloses the default window (30 days), the sort order (soonest first), and the non-obvious inclusion of already-expired items. That last detail is genuinely useful behavior an agent could not predict. The only miss is that it does not say what happens at the 0 boundary or whether results are paginated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence of roughly twenty words that front-loads the resource and the window, then appends the two behavioral caveats. Nothing is redundant and nothing is buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description is the only place an agent can learn what a result row contains (asset name, expiry date, days remaining, type). It omits that, and also omits the `type` filter, so a caller cannot fully predict the shape of the response. Adequate for deciding whether to call it, thin for interpreting the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description needs to carry parameter meaning. It documents `days` well (default 30, semantic of the window) but never mentions the `type` enum filter (domain vs. ssl), leaving the agent to infer that this argument exists and what it does from the schema alone. The 3650 maximum is also undisclosed, though the schema carries it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (domains and SSL certificates) and a specific condition (expiring within N days), which is enough for an agent to distinguish it from lookup_domain, lookup_cert and list_assets. It does not name a sibling or contrast explicitly, which keeps it out of the top band.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The expiring-window framing implies when to use it (a proactive expiry check rather than a specific-asset lookup), but there is no explicit when-to-use/when-not-to-use or pointer to lookup_domain/lookup_cert for single-asset detail. Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_membersList team membersARead-onlyInspect
People with access to the agency and their roles (read-only; invites and role changes are dashboard-only).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, but the description adds actionable context beyond them: it explicitly tells the agent that invitations and role modifications cannot be done here and must go through the dashboard. That prevents wasted attempts at mutation, which annotations alone would not convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single parenthetical sentence, front-loaded with the resource and role information, with the read-only caveat immediately following. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read tool with no output schema, the description covers the essential question of what data comes back (people and their roles) and what is out of scope. Slightly short of 5 only because it doesn't hint at ordering, pagination, or which role fields are returned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters and the schema is empty at 100% coverage, so there is nothing for the description to document. Baseline 4 applies; no syntax or format details are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource ('people with access to the agency') and, through the title plus 'their roles', makes the listing intent unambiguous. It is clearly distinguishable from siblings like list_assets or list_clients, though the verb is implied rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'read-only; invites and role changes are dashboard-only' sets a useful boundary on what this tool can accomplish, implying use it for inspection only. However, it gives no guidance on choosing it over sibling tools such as get_agency, which likely also exposes member information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_webhook_deliveriesWebhook delivery logBRead-onlyInspect
Recent deliveries for one webhook with status, attempts and HTTP code.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this is a safe read-only operation. The description adds useful context about what the log contains — status, attempts, and HTTP code — but does not explain ordering, pagination behavior, retention, or what 'recent' means.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no wasted words. It efficiently conveys the core purpose and returned fields.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool whose annotations already cover safety, the description is adequate about the resource and returned fields. However, with no output schema and 0% schema description coverage, the omission of limit semantics and ordering behavior leaves meaningful gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for undocumented parameters. It only indirectly implies the required webhook id via 'one webhook' and says nothing about the optional limit parameter, its default, or maximum of 200.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource — recent deliveries for one webhook — plus the key fields returned. It is clearly distinct from list_webhooks because it scopes to one webhook's delivery log, though it does not explicitly name the sibling alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies inspecting recent delivery attempts for a single webhook, but gives no explicit when-to-use guidance, prerequisites, or comparison to alternatives such as list_webhooks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_webhooksList webhooksARead-onlyInspect
Webhook endpoints, their events and last delivery. Secrets are never returned.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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 genuinely new behavioral context: it enumerates the return payload (events, last delivery) and discloses a security constraint, 'Secrets are never returned,' which tells the agent there is sanitization and it should not expect secret material.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no filler, and the payload summary is front-loaded ahead of the secret-handling note. The first sentence is a verbless fragment, which costs a little clarity but nothing in length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read tool whose annotations cover safety and whose scope (closed world, read-only) is already declared, this conveys what comes back and the secret policy. It stops short of noting ordering, pagination behavior, or how many endpoints are returned, which would matter for a list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4; there is nothing in the schema for the description to elaborate. The description instead describes output fields, which is useful but not parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource (webhook endpoints) and what is included (events and last delivery), which pairs with the 'list' verb in the name to make the operation unambiguous. It also implicitly distinguishes itself from list_webhook_deliveries by framing per-endpoint last-delivery info, though it never names that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to call this versus list_webhook_deliveries or get_webhook-style siblings, and no stated prerequisites or exclusions. The listing intent is only implied by the name and the noun phrase describing the payload.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_certCheck a host's SSL certificateARead-onlyInspect
Live TLS check of a public host's served certificate (not saved). Ports: 443, 8443, 465, 993, 995.
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes | ||
| port | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds meaningful context beyond that: the check is live against the served certificate and results are not saved, and it enumerates supported ports. It stops short of describing failure behavior or timeouts.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with no filler. The core behavior (live TLS check, not saved) is front-loaded, followed by the port list.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with rich annotations and no output schema, the description covers the essential behavioral distinction (live vs stored) and supported ports. Minor gaps remain around default port, host format constraints, and error behavior, but nothing critical for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the schema itself contributes no parameter meaning. The description compensates partially by listing ports (443, 8443, 465, 993, 995), which informs the port parameter, and by saying 'public host', which loosely constrains host. It does not clarify whether port is optional, what the default is, or what host formats are accepted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource — a live TLS check of a host's served certificate — and the qualifier 'not saved' implicitly contrasts it with lookup_ct (historical CT logs). It does not explicitly name lookup_ct or lookup_domain, so sibling differentiation is inferred rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'live TLS check of a public host's served certificate (not saved)', which suggests checking the current served cert rather than historical records. However, there is no explicit when-to-use guidance, no named alternatives, and no mention of prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_ctCertificate Transparency lookupARead-onlyInspect
Latest certificate for a hostname from public CT logs (not saved; does not contact the host).
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, but the description adds the non-obvious side-effect profile: nothing is persisted and the target host is never contacted. That is exactly the extra context annotations cannot express. It stops short of noting rate limits or result freshness beyond 'latest'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with a tight parenthetical for the behavioral caveats. No preamble, no restated title, nothing that could be cut.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read tool this is nearly sufficient, but with no output schema the description should indicate what a 'latest certificate' response contains (issuer, validity window, SANs) or its empty/failure shape. As written the agent knows what goes in but not what comes back.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
One parameter at 0% schema coverage, so the description must carry the load. Saying 'hostname' does convey that the input is a bare host name rather than a URL or full certificate body, but format rules (no scheme, no port, no path) and the 253-character bound are left entirely to the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource and source: the latest certificate for a hostname, pulled from public CT logs. It is clear in isolation but never distinguishes itself from the sibling lookup_cert (or lookup_domain), so an agent cannot tell which one to pick from this text alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not-to-use, or alternative routing is given. With lookup_cert and lookup_domain sitting right beside it in the tool list, the absence of any disambiguation rule leaves the selection ambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_domainLook up a domain's registration expiryBRead-onlyInspect
Live RDAP/WHOIS lookup of any domain (not saved).
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false. The description adds useful context that the lookup is live and not persisted, but it does not cover external-service failure modes, rate limits, or response behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It states the core action and the non-persistence constraint immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter lookup, annotations cover the safety profile and the description covers live/non-saved behavior. However, it leaves the domain input format and what registration-expiry data is returned unstated, and there is no output schema to fill that gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain the single 'domain' parameter. 'any domain' is minimal and does not clarify accepted format, whether protocols/subdomains are allowed, or examples such as example.com.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: a live RDAP/WHOIS lookup of a domain. The title adds that it retrieves registration expiry, but the description itself does not explicitly distinguish this from sibling lookup tools such as lookup_cert or lookup_ct beyond the implicit 'domain' resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives no explicit when-to-use guidance, prerequisites, or alternatives. '(not saved)' hints that this is a transient lookup, but no sibling or saved-asset path is named to help an agent choose between them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
15 tool updates
- First observed
get_agency - First observed
get_asset - First observed
get_asset_history - First observed
get_reminders - First observed
get_report - First observed
list_alert_channels - First observed
list_assets - First observed
list_clients - First observed
list_expiring - First observed
list_members - First observed
list_webhook_deliveries - First observed
list_webhooks - First observed
lookup_cert - First observed
lookup_ct - First observed
lookup_domain
Related MCP Connectors
SSL certificate, domain expiry, DNS and uptime monitoring for web agencies, grouped by client.
Track domain, hosting, SSL and licence renewals. Check WHOIS and SSL expiry dates from chat.
Add, check, diagnose and remove your SaaS customers' custom domains from any MCP client.
Client-website monitoring for agencies: uptime, incidents, SSL/domain expiry, server metrics.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceMCP server for SSL certificate management, enabling agents to issue, renew, revoke, monitor, download, and install certificates, with expiry tracking and webhooks across nine server types.25 npm-
- AlicenseBqualityDmaintenanceEnables monitoring of domain registration information via WHOIS lookup and SSL certificate validity checking. Provides domain expiration dates, registrar details, certificate validity periods, and issuer information for website security monitoring.29 npm4MIT
- FlicenseNot gradedqualityCmaintenanceUptime, SSL, DNS and domain monitoring you can talk to: check, create and manage monitors for all your client sites from Claude, ChatGPT, or any MCP client.1-
- AlicenseAqualityDmaintenanceEnables checking SSL certificate expiry for any domain, with status indicators for validity and remaining days.1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.