cancel_provider_access_request
Private draft: cancel one of this account's pending provider access requests.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| requestId | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |
Private draft: cancel one of this account's pending provider access requests.
| Name | Required | Description | Default |
|---|---|---|---|
| requestId | Yes |
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |
Changes observed during successful MCP inspections.
Input schema / additionalPropertiesRemoved value: -falseOutput schema / requiredAdded value: +[
+ "result"
+]Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and readOnlyHint=false, so the mutation profile is conveyed. The description adds worthwhile scope detail — only *pending* requests can be cancelled — but says nothing about reversibility, permissions required, or what happens to the request record afterward. The unexplained 'Private draft:' prefix adds ambiguity rather than clarity.
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 tight sentence with the action front-loaded. The leading 'Private draft:' tag is unexplained noise that consumes the most prominent position but earns little.
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?
An output schema exists, so return values needn't be described, and annotations cover the destructive profile. Still, for a destructive mutation the description leaves open what state the request ends in, whether cancellation is reversible, and whether an approval is required — gaps an agent would want filled before calling.
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 a single required parameter, requestId, with 0% schema description coverage, so the description must compensate. Saying the request must be 'one of this account's pending provider access requests' does constrain the ID's valid domain, but no format, source (where to obtain the ID), or failure behavior is given.
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?
Specific verb+resource: 'cancel ... pending provider access requests', scoped to 'this account's'. This implicitly separates it from siblings like request_provider_access, list_provider_access_requests, and disconnect_provider_access, though no sibling is named.
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 word 'pending' implies usage is limited to not-yet-approved requests, and 'this account's' implies an ownership precondition. However, no explicit when-to-use, when-not-to-use, or alternative (e.g. disconnect_provider_access for active access) is articulated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.