Skip to main content
Glama

afro.tools

Request Spec

request_spec

Logs a request for a spec that doesn't exist yet and notifies maintainers. Call this when a user asks for a provider or capability that has no spec in the registry (check list_providers first). This helps maintainers prioritize which specs to write next.

Args:

  • provider (string): Provider slug e.g. "wave"

  • capability (string): Capability name e.g. "create_payment"

Returns: { logged: true, count } if the request was recorded — count is the all-time number of requests for this exact provider+capability, including this one, so you can tell the user e.g. "you're the Nth person to ask for this". count is absent if it could not be reliably determined — in that case do NOT guess a number to the user, just confirm the request was logged. { logged: false, reason } if the spec already exists. isError if the request could not be stored: tell the user it was NOT recorded.

Input Schema

NameRequiredDescriptionDefault
providerYesProvider slug e.g. "wave"
capabilityYesCapability name e.g. "create_payment"

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Goes well beyond the annotations by disclosing the external side effect (maintainers are notified), the exact return shapes, and that a missing count must not be guessed to the user. It also specifies error behavior — an isError means the request was NOT recorded and the user must be told — which the openWorldHint/idempotentHint flags alone never convey. Nothing contradicts the annotations: logging a request is a non-read-only, non-idempotent, non-destructive write.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose and the selection condition, then cleanly separated Args and Returns blocks. The longer Returns section earns its space because there is no output schema and the count-absent and isError branches require explicit agent behavior.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the return contract itself and does so completely: success with optional count, the already-exists case, and the storage-failure case each map to a specific agent response. Combined with the caller precondition, nothing needed to invoke or report results is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the description's argument notes only repeat the schema's example values for provider and capability. The one useful addition is that the pair is treated as an exact key used for all-time counting, but that is stated in the Returns section rather than as parameter guidance. Baseline 3 is appropriate.

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

Purpose5/5

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

States a specific verb and resource — logs a spec request and notifies maintainers — plus the exact precondition (no spec exists in the registry). The reference to list_providers and the scoping to a provider+capability pair separates it cleanly from get_spec and search_specs.

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

Usage Guidelines4/5

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

Explicitly says when to call it: a user asks for a provider or capability with no spec, and tells the agent to check list_providers first. It also covers the negative case indirectly by documenting the { logged: false } return when the spec already exists. It doesn't mention search_specs as an alternative route, so it falls just short of full when/when-not coverage.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.