NetSendo website
Server Details
NetSendo facts, plans, releases, docs and blog; release alerts after OAuth sign-in.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 10 tools
Each tool targets a clearly distinct resource and action: blog search vs. blog fetch, docs listing vs. doc fetch, releases, plans, product facts, and the three release-alert operations. The only mild touchpoint is that search_blog with an omitted query also lists latest articles, but the description states this explicitly and no separate list_blog_posts exists to collide with. An agent can pick the right tool without guessing.
Every tool follows a clean snake_case verb_noun pattern (get_blog_post, list_docs, list_plans, search_blog, subscribe_release_alerts, unsubscribe_release_alerts) with a consistent verb vocabulary of get/list/search/subscribe. 'get_my_release_alerts' adds 'my' to signal per-user scoping, which is a deliberate and readable deviation, not a convention break.
Ten tools is well within the ideal band, and each earns its place by covering a distinct content area or a distinct alert lifecycle operation. There is no redundancy: no duplicate fetch or list variants, and the subscribe/unsubscribe/get trio is the minimum needed to manage a subscription state.
The surface covers the apparent website domain well: discovering and reading blog and docs content, release history, pricing plans, product facts, and self-service alert management with proper OAuth scopes. Minor gaps remain, such as fetching a single release by id (only list_releases exists, with the notes URL as an escape hatch) and the lack of a docs search or a get_plan detail endpoint, but agents can work around these.
Available Tools
10 toolsget_blog_postRead a NetSendo blog articleARead-onlyIdempotentInspect
Full text of one blog article as Markdown, by slug from search_blog. Falls back to English when the article has no translation in the requested locale. Cite the url field.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | ||
| locale | No | en |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so safety is covered. The description adds genuinely new behavior: locale fallback to English when no translation exists. It does not cover failure behavior for an unknown slug, so the added context is useful but partial.
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?
Three short sentences, each doing distinct work: what is returned, how the input is obtained, fallback behavior, and a citation instruction. Front-loaded with the resource and format, with no filler.
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 correctly specifies the return format (Markdown) and points at the url field for citation. Missing only edge-case behavior such as an invalid or unknown slug, which is a minor gap for a simple two-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?
Schema description coverage is 0%, so the description must carry the load. It explains that slug is sourced from search_blog and, importantly, that locale degrades to English when a translation is missing — semantics the enum alone does not convey. The slug pattern and default locale are left 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 verb and resource ('Full text of one blog article'), the return format (Markdown), and the key input ('by slug from search_blog'). This clearly separates it from search_blog (discovery) and get_doc (a different document type).
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 slug from search_blog' tells the agent this is the second step after a search, which is strong implied routing. There is no explicit statement of when not to use it (e.g., for docs, use get_doc), so it stops just short of full alternative coverage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_docRead a NetSendo documentation pageARead-onlyIdempotentInspect
One documentation page as Markdown, by id from list_docs (e.g. "docs-quickstart"). English.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuinely new behavioral facts beyond them: the response is a single page rendered as Markdown, and content is English-only, both of which shape how an agent should consume the output.
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 telegraphic sentence with zero filler; the resource and return format are front-loaded ahead of the id-sourcing hint. It reads as a fragment rather than a sentence, but 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?
For a one-parameter read tool with no output schema, the description covers the essentials: what comes back (Markdown), how to obtain a valid id, and the language of the content. Only edge behavior (unknown or stale ids) is unstated, which is minor at this complexity.
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% — the id property is an untyped-in-prose string with only maxLength 100 — so the description must compensate, and it does: it names the source of valid ids (list_docs) and supplies a concrete example of the expected id format. It does not state whether the id is case-sensitive or how failures surface.
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 (one documentation page) plus the return format (Markdown) and the identifier source (id from list_docs, with example "docs-quickstart"). This clearly separates it from the sibling list_docs, which enumerates pages rather than fetching one.
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 from list_docs" establishes the dependency chain and implicitly routes an agent to list_docs first when it lacks an id. There is no explicit statement of when not to use it or what happens on an unknown id, so it stops short of full when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_my_release_alertsMy NetSendo release alertsARead-onlyIdempotentInspect
Whether the signed-in user's email address is subscribed to NetSendo release alerts (one email per release). Requires OAuth scope alerts:read.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint=false, so the safety profile needs no restating. The description adds genuinely new behavior context that annotations cannot convey: the required OAuth scope alerts:read, and the fact that the subject is the signed-in user rather than an arbitrary address.
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, front-loaded with the core question and followed by the auth prerequisite. Nothing is repeated from the title or schema and no sentence is wasted.
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 status check with no output schema, the description supplies enough to call it correctly and to anticipate a yes/no answer about the subscription. It could go slightly further by stating the return type explicitly or pointing at the mutation siblings, but nothing essential is missing.
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?
With zero parameters the baseline is 4, and the description earns it by clarifying the one thing an agent might wonder about — whose subscription is being checked (the signed-in user's email), which is implicit in the identity rather than passed as an argument.
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 precisely what is being queried: whether the signed-in user's email is subscribed to NetSendo release alerts, with the cadence clarified (one email per release). It implicitly separates itself from the subscribe/unsubscribe siblings by framing the call as a status query, though it never names those siblings explicitly.
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 the read-side counterpart to subscribe_release_alerts and unsubscribe_release_alerts, but the description never says when to call it or that those siblings are the way to change the state. No exclusions or prerequisites beyond the OAuth scope are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_product_factsNetSendo product factsARead-onlyIdempotentInspect
Key facts about NetSendo: what it is, license (source-available EULA, not OSI open source), deployment with Docker, current version, AI and SMS providers, integrations, links and company details.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already establish that this is a read-only, idempotent, non-destructive, closed-world operation. The description adds useful topical scope by listing license, deployment, version, providers, integrations, links, and company details, but it does not disclose freshness, source, response format, or whether the facts are static. With annotations carrying the safety profile, this is adequate but not rich.
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 filler. The enumerated topics are dense but each item helps clarify scope, though the list is long enough that it could be slightly more skimmable.
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 zero-parameter, read-only tool with no output schema, the description covers the topics returned well enough to set expectations. It omits details such as whether the facts are live or static and what form the response takes, leaving minor gaps for an agent deciding whether this is the right source.
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 has zero parameters, so the baseline is 4. The description correctly implies no input is needed by presenting the tool as a fixed product-facts lookup.
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 identifies the resource as key facts about NetSendo and enumerates the topics covered, so an agent can understand its general purpose. It does not explicitly differentiate from sibling tools such as get_doc or list_docs, so it falls short of a 5.
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 by the topic list; an agent can infer that this tool is for product overview facts rather than documentation or release content. There is no explicit guidance on when to choose this tool over get_doc, list_docs, or other siblings, and no exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_docsList NetSendo documentationARead-onlyIdempotentInspect
Documentation pages: installation, configuration, API, webhooks, AI providers, MCP and n8n. Use get_doc with an id to read one.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=false, and destructiveHint=false, so the safety profile is clear. The description adds useful context that documents are addressable by id via get_doc, but it does not describe return shape, ordering, or pagination behavior; with strong annotation coverage, a 3 is appropriate.
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 cover the tool's scope and the key alternative workflow. The content is front-loaded with the documentation topics and ends with the actionable routing to get_doc, with no wasted wording.
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 no-parameter discovery tool with read-only annotations and no output schema, the description provides enough to understand the domain and the follow-up read operation. It would be slightly stronger if it explicitly stated that the list returns documents with ids, but the reference to using an id with get_doc makes that sufficiently clear.
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 has zero parameters, so there are no parameter meanings to explain beyond the schema. The baseline for a zero-parameter tool is 4, and the description does not need to add parameter semantics here.
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 documentation pages and enumerates the covered domains (installation, configuration, API, webhooks, AI providers, MCP, n8n), so the agent knows exactly what resource this tool exposes. It also distinguishes the tool from get_doc by explaining that get_doc reads an individual document by id.
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 explicitly routes the agent to get_doc when it wants to read one document by id, which clearly separates listing from reading. It does not explicitly say 'use list_docs to discover available documentation', but that use is strongly implied by the enumeration and the contrast with get_doc.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_plansNetSendo plans and pricesARead-onlyIdempotentInspect
NetSendo license plans with prices in USD and features: SILVER (free) and GOLD (monthly or yearly), plus NetSendo Cloud hosting plans. Link users to the url field for current details.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a safe, idempotent, closed-world read, so the bar is low, and the description still adds value: it fixes the currency (USD), names the tiers and billing cycles, and signals via 'current details' in the url field that the embedded prices may be stale. That freshness caveat is genuine behavioral context an agent would not get from annotations.
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 compact sentences with no filler, and the most important content (what the plans are and their tiers) is front-loaded before the url pointer. The dense parenthetical enumeration is slightly awkward to read but every clause carries information.
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 read tool with no output schema, the description covers scope, currency, plan tiers, and one output field (url), which is enough to call it correctly and interpret results. A little more on the overall return shape beyond the url field would close the remaining 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?
The tool takes zero parameters, so there is no parameter semantics to explain and the baseline of 4 applies. The description correctly spends its words on scope and output content instead.
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 noun phrase 'NetSendo license plans with prices in USD and features' plus the tier enumeration (SILVER free, GOLD monthly/yearly, Cloud hosting) tells an agent exactly what data comes back. It is distinguishable from siblings like get_product_facts or list_docs, though the verb is only implied by the tool name 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 only implied - it is obviously a listing tool with no parameters. The one piece of real guidance is 'Link users to the url field for current details,' which tells the agent how to act on the output, but nothing states when to prefer this over get_product_facts or other catalog-type siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_releasesLatest NetSendo releasesARead-onlyIdempotentInspect
Most recent NetSendo releases from GitHub, newest first, with date, highlights and release notes URL.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the description's job is to add context — and it does, disclosing the upstream source (GitHub), the sort order, and the fields returned (date, highlights, release notes URL). It stops short of noting default page size, the max cap, or any rate-limit/caching 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?
A single well-formed sentence with the resource and ordering front-loaded and zero filler. Every clause (source, ordering, returned fields) carries information an agent can use.
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 one optional parameter, no output schema, and full annotation coverage, the definition is nearly complete — it compensates for the missing output schema by naming the returned fields. The residual gap is the undocumented limit parameter and default result count.
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% and the description never mentions 'limit', so the only meaning comes from the schema's own default of 5 and 1–20 bounds. The 'newest first' phrasing hints at a truncated recent window, but no guidance is given on choosing a limit.
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 verb and resource ('Most recent NetSendo releases from GitHub') plus ordering ('newest first') and returned fields, so an agent knows exactly what it gets. It does not explicitly contrast itself with siblings like get_my_release_alerts, leaving the public-vs-personal distinction to inference.
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 when-to-use or when-not-to-use statement and no pointer to alternatives such as get_my_release_alerts for a user's own subscriptions. Usage is only implied by the resource name and the 'most recent' framing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_blogSearch the NetSendo blogARead-onlyIdempotentInspect
Search NetSendo blog articles about email marketing, deliverability, automation and product updates by words in the title or excerpt. Returns slug, title, excerpt and url, newest first. Omit q to list the latest articles.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Words to search for, e.g. "deliverability" or "n8n". | |
| limit | No | ||
| locale | No | Language of titles and URLs. | en |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive, closed-world behavior, and the description usefully adds the result ordering ('newest first') and the returned fields (slug, title, excerpt, url), which an agent needs to know before planning follow-up calls. It does not say whether matching is substring or full-text, case sensitivity, or what an empty result looks like.
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?
Three short sentences, front-loaded with purpose, then return shape, then the alternative mode. No filler and no repetition of annotation or schema content beyond what is needed for context.
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 low-complexity, zero-required-parameter search tool with no output schema, the description covers purpose, matching fields, ordering, return fields, and default behavior. The only gap is match semantics (multi-word handling, case sensitivity), which is minor for this tool's complexity.
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 67% and the schema documents q and locale, but the description adds meaning the schema does not: q matches words in the title or excerpt, and omitting q changes the tool into a latest-articles listing. The limit parameter is left to its schema constraints, which are self-explanatory.
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 verb and resource ('Search NetSendo blog articles') plus the searchable fields (title or excerpt) and the exact return fields, and distinguishes itself from a single-post fetch by noting that omitting q lists the latest articles instead.
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?
Gives explicit when-to-use guidance for the two modes ('Omit q to list the latest articles'), so an agent knows how to switch between keyword search and a latest-articles listing. It does not explicitly name get_blog_post as the alternative for retrieving a full article once a slug is found, which keeps this from a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
subscribe_release_alertsSubscribe to NetSendo release alertsAIdempotentInspect
Subscribes the signed-in user's own verified email address to NetSendo release alerts. Idempotent. Requires OAuth scope alerts:write.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare non-read-only, idempotent, non-destructive and open-world behavior, so the bar is lower. The description still adds value beyond them by disclosing the required OAuth scope (alerts:write) and constraining the target to the caller's own verified address, though it does not say whether a confirmation email is sent or what a failure looks like.
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?
Three short sentences with the action first, then the idempotency and auth requirements. Every clause carries information an agent needs, and nothing is padded or repeated.
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 mutation with no output schema and full annotation coverage, the description supplies the essential missing pieces: target identity, idempotency, and required scope. It stops short of describing the observable outcome (confirmation email, state change visibility in get_my_release_alerts), which would make it fully self-contained.
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 are zero parameters, so the baseline is 4. The description usefully explains why no email argument exists (it always targets the signed-in user's own verified address), which prevents an agent from hunting for a parameter that does not exist.
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 opens with a specific verb and resource ("Subscribes ... to NetSendo release alerts") and narrows the scope to "the signed-in user's own verified email address," which immediately distinguishes it from the sibling unsubscribe_release_alerts and from any admin-style subscription operation.
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 intent to opt a user into release notifications is clear, and the scope requirement gives a de facto precondition for calling it. However, it never names unsubscribe_release_alerts as the inverse operation or states when an agent should prefer this over checking get_my_release_alerts first, so routing guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unsubscribe_release_alertsUnsubscribe from NetSendo release alertsADestructiveIdempotentInspect
Unsubscribes the signed-in user's email address from NetSendo release alerts. Requires OAuth scope alerts:write.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is largely covered. The description adds a materially useful detail not in the annotations: the required OAuth scope alerts:write. It does not state what happens when the user is not subscribed, but idempotentHint covers the no-op interpretation.
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, behavior first and the auth prerequisite second. Nothing could be removed without losing information.
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, no-output-schema action this is close to complete: it identifies the actor, the effect, and the required scope. Only the not-subscribed edge case and confirmation of what the user sees afterward are 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, which is the baseline-4 case; there is nothing for the description to disambiguate. It correctly notes that the target address is taken implicitly from the signed-in user rather than passed in.
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 a specific verb (unsubscribes), a specific resource (NetSendo release alerts), and the exact target (the signed-in user's email address). This makes the inverse relationship to the sibling subscribe_release_alerts immediately obvious without opening either schema.
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 the verb — call this when the user wants to stop receiving release alerts — but there is no explicit when-to guidance, no mention of the re-subscribe alternative, and no note on the precondition of being currently subscribed.
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.
10 tool updates
- First observed
get_blog_post - First observed
get_doc - First observed
get_my_release_alerts - First observed
get_product_facts - First observed
list_docs - First observed
list_plans - First observed
list_releases - First observed
search_blog - First observed
subscribe_release_alerts - First observed
unsubscribe_release_alerts
Related MCP Connectors
Hosted NeuroDock — stateless communication and planning tools over OAuth-secured Streamable HTTP.
Form backend: create forms, get embed code, read submissions, add webhooks. OAuth sign-in.
Email API + newsletters. 17 MCP tools. OAuth 2.1 PKCE or API key. EU-hosted (Hetzner + SES).
Release notes and changelogs from across the web, indexed for agents. Also via CLI and REST API.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenancePublishes experimental MCP Events methods — events/list, events/stream, events/poll, and events/subscribe/events/unsubscribe with verified webhook delivery — so MCP clients can receive pushed notifications alongside a public website. Anonymous visitors appear as floating dots and can ping or send a short message of up to 200 Unicode code points to any chosen name, with no accounts, database, or persistent storage.MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents and their human owners to browse, search (keyword, semantic, and hybrid), create, and revise a versioned personal knowledge base of Markdown documents, checkpoint summaries, and structured tasks. Access is OAuth-protected with separately grantable read and write scopes, and edits are history-tracked with conflict protection so concurrent clients don't overwrite each other.3MIT
- AlicenseAqualityDmaintenanceConnect AI agents to real-time financial news covering global markets, geopolitics, and company-level events. Search and filter articles by ticker, source, country, and language; every article includes sentiment scores and tagged company entities with tickers and ISINs. Remote server with standard OAuth 2.0, works out of the box with Claude, ChatGPT, Cursor, and any MCP client. Free tier available379 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables searching, reading, and privately archiving news from supported publisher subscriptions, with per-user authentication via human sign-in links and separate tokens, sessions, and archives.872 PyPIMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.