Skip to main content
Glama

Present a Know Your Agent attestation

present_attestation

Show Yarnhen who you are. Get an attestation from apis.io (POST https://apis.io/api/v1/kya/attest with aud=https://yarnhen.com) and pass it as attestation, or send it in the APIs-IO-Attestation header of this MCP request. A key-bound attestation counts only if this MCP request is Web Bot Auth-signed with the bound key. The decision (trusted or known) is stored on the account; trusted raises the free search allowance and never changes prices or the owner's card requirement.

Input Schema

NameRequiredDescriptionDefault
attestationNoThe kya+jwt, when a header is not convenient (the MCP tool and A2A skill send it this way).

Output Schema

NameRequiredDescriptionDefault
howNo
subNoThe KYA subject, e.g. wba:<domain>.
tierNo
agentNoThe agent registry slug on apis.io.
boundNoThe request was signed with the key the attestation is bound to.
issuerNo
recordNoThe public KYA record.
reasonsNo
unlocksNo
decisionNo
registryNo
disclosureNo
verified_atNo
verificationNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

With readOnlyHint=false and openWorldHint=true already declared, the description still adds substantial context: it names the external network dependency and exact endpoint, discloses that the resulting decision is persisted on the account (a durable side effect for a non-idempotent call), and scopes the impact by stating that trusted status raises the free search allowance but never changes prices or the owner's card requirement. That is exactly the kind of consequence disclosure annotations cannot carry.

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

Conciseness4/5

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

Four sentences, front-loaded with the mechanism and followed by the caveat and the consequence. Almost every clause carries information. The opening pleasantry ("Show Yarnhen who you are") is the one sentence that does not fully earn its place, and the pricing clarification, while useful, is denser than needed.

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?

An output schema exists, so return values need not be explained. The description covers the acquisition path, the two delivery channels, the signature precondition, and the persisted outcome plus its limits — everything an agent needs to call this correctly against an open-world, non-read-only tool.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3; the description goes beyond it by explaining the delivery alternative (header of the MCP request) and the binding/signature condition that determines whether the attestation is honored. It adds real semantic meaning about what makes a value valid, though it does not detail the token format beyond the schema's kya+jwt mention.

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

Purpose4/5

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

The description opens with a metaphorical framing ("Show Yarnhen who you are") but immediately grounds it in concrete terms: obtain a KYA attestation from apis.io and present it via the parameter or the APIs-IO-Attestation header. The verb+resource is unambiguous once past the first sentence, and the tool's purpose is distinct from any of the listed siblings (no other tool deals with identity/attestation). It stops short of a crisp one-line statement of what the tool itself does versus what the caller must first do.

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?

The description gives clear context for when to call it: after obtaining an attestation via the specified POST endpoint with aud=https://yarnhen.com, and it states an important precondition (a key-bound attestation only counts if the MCP request is Web Bot Auth-signed with the bound key). It also explains the payoff (trusted raises the free search allowance), which motivates use. There are no explicit exclusions, e.g., what to do if the caller has no attestation at all, and no sibling routing, which keeps it below a 5.

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.

Resources