Skip to main content
Glama

Server Details

Pay-per-call tools for autonomous agents, settled in USDC on Base via x402.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 21 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
olie-kiss/agentic-endpoints
GitHub Stars
0

TDQS

A4.3/5.0

Scored across 20 tools

Disambiguation5/5

Each tool targets a distinct resource and action within its domain (e.g., meetings_search vs meetings_summarize, vault_retrieve vs vault_list, once_key_claim vs complete vs release). The descriptions are detailed enough that an agent can easily pick the correct tool without ambiguity. There is no real overlap; even compress, pdf_parse, and scrape are clearly separated by input type.

Naming Consistency4/5

Most tools follow a clear domain prefix + verb pattern (meetings_get, vault_store, once_key_claim, credits_balance). A few tools deviate (compress, scrape, x402_verify) but they are still intuitive and not chaotic. The convention is consistent enough that an agent can predict tool names.

Tool Count4/5

At 20 tools, the server is slightly on the heavy side but appropriate given it spans multiple domains (text processing, meetings, vault, idempotency, payments). Each tool has a clear purpose and none feel redundant. It is not excessive for the breadth of functionality offered.

Completeness4/5

The surface covers core workflows in each domain: meetings have import, search, get, list, and summarize; vault has full CRUD plus exists and rotate; idempotency has claim, complete, and release. Minor gaps exist (no meetings update/delete, no direct buy credits tool) but these are not critical dead ends for typical usage.

Available Tools

20 tools
compressCompress text to a token budgetA
Read-onlyIdempotent
Inspect

Reduce text to fit a token budget, preserving whole sentences and reporting before/after token estimates. Costs $0.010 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesText to compress
strategyNoCompression strategy (default extractive)
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.
target_tokensNoApproximate token budget

Output Schema

ParametersJSON Schema
NameRequiredDescription
textYesThe compressed text
ratioYescompressed_length / original_length. Lower is more aggressive.
strategyNoStrategy applied, echoing your request
original_lengthYesInput length in characters
compressed_lengthYesOutput length in characters

TDQS

A4.2/5.0
Behavior5/5

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

The description discloses a behavior not present in annotations: the call costs $0.010 paid via x402 or a credit token, plus it promises whole-sentence preservation and before/after token estimates. These are meaningful runtime traits beyond the readOnly/idempotent hints, and there is no contradiction with the annotations.

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?

Two sentences with no filler: the first states the operation and its guarantee, the second states cost and payment alternatives. The most important information is front-loaded and every clause supports an invocation decision.

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

Completeness4/5

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

With an output schema present and full parameter documentation in the schema, the description needs only to add what schemas don't show: cost, payment route, and the credits_trial fallback. It covers those; a small gap is that it doesn't mention the strategy default, but that is already in the input schema.

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 description coverage is 100%, so the schema already documents text, strategy, credit_token, and target_tokens. The description adds only high-level context (whole-sentence preservation, cost) rather than new parameter-level detail, matching the baseline for full schema coverage.

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?

Description opens with a specific verb and object ('Reduce text') and defines a precise goal: fit a token budget while preserving whole sentences and reporting before/after estimates. This clearly separates it from siblings like meetings_summarize and names the resource it acts on.

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

Usage Guidelines3/5

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

It supplies important context for when to use the tool (when text must fit a token budget) and directly handles the payment prerequisite by pointing to credits_trial. It does not explicitly exclude alternatives or tell an agent when not to use compress, so the guidance remains implied rather than explicit.

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

credits_balanceCheck how much credit a token has leftA
Read-onlyIdempotent
Inspect

Free. Reports the remaining balance on a credit token so you can tell 'out of credit' apart from 'the call failed', which otherwise look identical from the outside. This tool is free; no payment is required.

ParametersJSON Schema
NameRequiredDescriptionDefault
credit_tokenYesThe credit token to check

Output Schema

ParametersJSON Schema
NameRequiredDescription
currencyNoAlways 'USD'
balance_usdYesCredit remaining, in dollars
balance_microsNoCredit remaining in integer micro-dollars, the authoritative figure

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, and the description does not contradict them. It adds useful behavioral context that the tool is free and intended as a diagnostic check, which goes beyond the structured annotations.

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

Conciseness3/5

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

The description is short and front-loaded, but the word 'free' appears twice: once in the opening sentence and again in the final sentence. This redundancy means not every sentence earns its place, though the overall length is still appropriate.

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?

Given the single parameter, full schema coverage, existing output schema, and annotations covering safety traits, the description is complete. It includes the key diagnostic purpose and cost information an agent needs to use the tool correctly.

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 description coverage is 100%, so the schema fully documents the credit_token parameter. The description adds no additional parameter-level meaning beyond calling it a credit token, which aligns with the baseline score of 3.

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 clearly states it reports the remaining balance on a credit token, using a specific verb and resource. It does not explicitly differentiate itself from sibling tools like credits_trial, so it falls just 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.

Usage Guidelines4/5

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

The description gives a clear use case: distinguishing 'out of credit' from 'the call failed'. It does not mention when not to use the tool or name alternatives, but the diagnostic purpose is clear enough for an agent to select it appropriately.

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

credits_trialGet free credit to try the paid toolsA
Idempotent
Inspect

Free, and the first tool to call if any other tool has told you payment is required. Returns a credit_token carrying $0.10 of credit — roughly twenty calls — with no wallet, no signature, no account and no email. Pass the returned token as the credit_token argument to any paid tool and it will run without an x402 payment. One allowance per caller: asking again returns the same token and whatever balance is left on it, never a refill. When it runs out, buy more with the /credits/buy endpoint. This tool is free; no payment is required.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
nextNoWhat to do when it runs out
noteNoWhy a second request returns the same token rather than more credit
trialYesAlways true; distinguishes this from purchased credit
usageNoHow to spend the token
exhaustedYesTrue when the allowance is spent. Asking again will not refill it, so buy credit or pay per call.
balance_usdYesCredit remaining, in dollars
granted_usdNoSize of the one-off allowance
credit_tokenYesThe token to pass as `credit_token` to any paid tool. Shown here and derivable again from the same caller, but not recoverable from us.

TDQS

A4.8/5.0
Behavior5/5

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

The description fully discloses behavior beyond the annotations: no wallet/signature/account/email required, $0.10 credit for roughly twenty calls, one allowance per caller, and repeat calls return the same token with remaining balance rather than a refill. This aligns with and enriches the idempotentHint annotation rather than contradicting it.

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?

The description is longer than minimal, but nearly every sentence earns its place by covering cost, usage, limitations, and renewal. There is slight redundancy in saying 'Free' at the start and 'This tool is free; no payment is required' at the end, which prevents a perfect score.

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?

Given zero parameters, a rich output schema, and idempotent annotations, the description is complete. It covers prerequisites, token semantics, call limits, idempotent behavior, exhaustion behavior, and the path to purchase additional credit—everything an agent needs to invoke this tool correctly.

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?

The tool has zero parameters and 100% schema coverage, so there are no parameter semantics to clarify. The description still adds value by explaining what the returned credit_token means and how to use it as the credit_token argument in other tools, which exceeds the baseline for a no-parameter tool.

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?

The description states a specific purpose: grants a free credit token for trying paid tools, and positions itself as 'the first tool to call if any other tool has told you payment is required.' It clearly identifies the resource returned (credit_token) and distinguishes itself from paid alternatives and the /credits/buy endpoint.

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

Usage Guidelines5/5

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

It gives explicit when-to-use guidance ('first tool to call if any other tool has told you payment is required') and how to use the result: 'Pass the returned token as the credit_token argument to any paid tool.' It also states the no-refill limitation and names the alternative path for when credit runs out ('buy more with the /credits/buy endpoint').

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

meetings_getRead one meeting in fullA
Read-onlyIdempotent
Inspect

Fetch a single meeting by meeting_id, including its full transcript when it was imported as queryable. Use this after meetings_search has identified the meeting you want. A 'content_missing' status means the record exists but its stored text could not be found -- that is a broken record, not an empty meeting, so do not report it as one. Costs $0.005 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceYesIsolation scope holding your meetings
meeting_idYesReturned by meetings_import or meetings_search
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.
namespace_tokenYesOne-time token issued by the first call that claimed this namespace. Required for every later call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
titleNoMeeting title
statusYes'ok' on success
ciphertextNoClient-encrypted transcript, for private meetings
meeting_idYesIdentifier of the meeting
transcriptNoPlaintext transcript, for queryable meetings
visibilityNo'queryable' or 'private'

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations (readOnly, idempotent), the description discloses the conditional transcript inclusion ('when it was imported as queryable'), the meaning of 'content_missing' as a broken record rather than an empty meeting, and the concrete $0.005 cost with x402/credit token alternatives. These are exactly the behavioral details an agent needs that the schema cannot convey.

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?

Four sentences, each doing distinct work: scope, usage ordering, error interpretation, and payment. It is front-loaded with the primary purpose and contains no filler or repeated schema information.

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?

For a single-record read tool, the description covers when to call it, what is included, how to interpret a problematic response, and how the call is paid. The presence of an output schema means return-value detail is not needed in the description, and annotations cover safety and idempotency.

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 description coverage is 100%, with every parameter already explained, including the meaning of meeting_id and credit_token. The description adds no new parameter-level syntax or constraints, so per the baseline rule it scores 3.

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?

The description opens with a specific verb and resource: 'Fetch a single meeting by meeting_id, including its full transcript.' The phrase 'after meetings_search has identified the meeting you want' distinguishes it from the search sibling, and the title reinforces the one-record scope. This is unambiguous and immediately telegraphs the tool's niche.

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 states 'Use this after meetings_search has identified the meeting you want,' giving a clear when-to-use directive. It also covers the payment fallback path via credits_trial. However, it does not explicitly contrast with meetings_list or state when not to use it, so it earns a 4 rather than a 5.

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

meetings_importImport a meeting transcriptAInspect

Store a transcript so it can be searched later. Accepts a raw WebVTT or SRT export straight from Zoom, Teams, Meet or a notetaker -- you do NOT need to strip timestamps or parse it first, and cues split across timing boundaries are merged so phrases still match. visibility is a required decision and cannot be guessed for you: 'queryable' stores plaintext, indexes it, and means this service can read it; 'private' stores ciphertext you encrypted yourself, which is unreadable here and therefore NEVER searchable. Send transcript for queryable and ciphertext for private -- the mismatched combinations are refused rather than silently doing the wrong thing. The first import into a namespace returns a namespace_token shown exactly once; save it or the namespace is unrecoverable. Costs $0.010 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNoHuman-readable meeting title
sourceNoOptional hint about the export format. Ignored if it disagrees with the file: WebVTT and SRT are detected from the content itself, unpacked into speaker-attributed text, and any speakers found are added to participants. Plain text is stored verbatim.
namespaceYesIsolation scope, e.g. my-meetings-<uuid>
ciphertextNoClient-side encrypted transcript. Only valid with visibility 'private'.
transcriptNoPlaintext transcript. Only valid with visibility 'queryable'.
visibilityNo'queryable' (plaintext, searchable, readable by this service) or 'private' (ciphertext, never searchable). Defaults to private.
occurred_atNoISO-8601 time the meeting happened
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.
participantsNoOptional attendees
namespace_tokenNoOne-time token issued by the first call that claimed this namespace. Required for every later call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNoPresent alongside a newly issued namespace_token
statusYes'imported' on success
meeting_idYesIdentifier for later meetings_get calls
searchableNoFalse for private meetings, which are never searchable
size_bytesNoStored size
visibilityNo'queryable' or 'private'
namespace_tokenNoIssued only on the first import into a namespace, shown exactly once

TDQS

A4.6/5.0
Behavior5/5

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

The description goes well beyond the annotations, which only say the operation is not read-only, not open-world, not idempotent, and not destructive. It discloses concrete behavioral consequences: the first import creates a namespace_token shown exactly once, losing it makes the namespace unrecoverable, the call costs $0.010, private imports are never searchable, and mismatched transcript/visibility pairs are refused. This is rich, honest behavioral disclosure.

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?

The description is long but every sentence earns its place: purpose, input format flexibility, privacy/searchability trade-offs, one-time token handling, and cost/payment. It is front-loaded with the core purpose and then builds outward into operational details. There is no filler or redundant restating of the schema.

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

Completeness4/5

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

Given the tool's complexity, the description covers almost everything an agent needs: raw format handling, cue merging, visibility semantics, namespace token persistence, and payment. An output schema exists, so detailed return values do not need to be explained. The only notable gap is the inconsistency between the description's claim that visibility is required and the schema's optional default, which leaves room for agent misinterpretation.

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 already solid. The description adds valuable cross-parameter semantics: transcript is paired with 'queryable', ciphertext with 'private', namespace_token is required for later calls, and credit_token is an alternative payment path. However, it creates some confusion by calling visibility a 'required decision that cannot be guessed' while the schema lists it as optional with a default of 'private'. This tension prevents a top score.

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?

The description immediately states a specific action and resource: 'Store a transcript so it can be searched later.' It also explains that raw WebVTT/SRT inputs are accepted directly, which clearly distinguishes this ingestion tool from sibling tools like meetings_get, meetings_search, and meetings_summarize. It is not a tautology and meaningfully expands on the title.

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 strong contextual guidance: it says when to use the tool (raw transcript from Zoom/Teams/Meet/notetaker), removes a common preprocessing burden, and even routes users without credit to credits_trial. However, it does not explicitly state when to prefer this tool over related siblings like vault_store or compress, so it stops short of full when-not/alternatives guidance.

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

meetings_listList your meetingsA
Read-onlyIdempotent
Inspect

List the meetings in a namespace newest first, with titles, dates, participants and whether each one is searchable. Never returns transcripts. Useful for orienting before a search, and for finding meetings that are private and therefore invisible to meetings_search. Costs $0.005 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results, 1-500 (default 100)
namespaceYesIsolation scope holding your meetings
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.
namespace_tokenYesOne-time token issued by the first call that claimed this namespace. Required for every later call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYesNumber of meetings returned
statusYes'ok' on success
meetingsYes

TDQS

A4.5/5.0
Behavior5/5

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

The description substantially extends the annotations: it reveals the newest-first ordering, the transcript-exclusion behavior, the ability to list private meetings, and the exact cost/payment paths including the credits_trial fallback. None of this contradicts the readOnly, idempotent, or openWorld annotations.

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?

Every sentence earns its place: core behavior, key limitation, usage context, and payment instructions. The description is front-loaded with the action and result shape, and it is not padded with redundant restatements of the title or schema.

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?

Given the output schema and full parameter documentation, the description is complete enough for an agent to select and invoke the tool correctly. It covers ordering, visibility scope, the transcript limitation, cost, payment options, and how to get free credit, leaving no critical operational gap.

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 description coverage is 100%, with each parameter already documented meaningfully. The description adds no extra parameter-level semantics, so the baseline of 3 applies rather than requiring compensation for missing schema detail.

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?

The description names a specific verb ('List'), a resource ('meetings in a namespace'), and the exact fields returned: titles, dates, participants, and searchable status. It also differentiates itself from meetings_search by stating it can surface private meetings that search cannot see.

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 use cases: orienting before a search and finding private meetings invisible to meetings_search. It also states that transcripts are never returned, which is a useful exclusion, though it does not explicitly name meetings_get as the alternative for transcript retrieval.

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

meetings_summarizeAnswer a question from your meetingsA
Read-onlyIdempotent
Inspect

Ask a plain-language question and get a written answer grounded in the user's own meeting transcripts, with the meeting id cited after each claim. Prefer this over meetings_search when the user wants an ANSWER ('what did we decide about pricing?', 'who owned the migration?') rather than a list of excerpts to read themselves. Pass the question as the user asked it -- this is NOT FTS5 syntax, and the terms actually searched come back as terms so you can check the retrieval. IMPORTANT: a 'no_matches' status means no answer was generated, and 'searched_meetings': 0 means every meeting is private and NOTHING was read -- neither is evidence the topic was never discussed, and you must not report it as such. Meetings imported as private are encrypted and can never contribute to an answer; private_meetings_skipped says how many were left out. A 'truncated' meeting in consulted had only part of its transcript read, so its silence on a point is not evidence either. Costs $0.050 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax meetings to consult, 1-8 (default 5)
questionYesThe question in plain language, as the user asked it. Not a search expression.
namespaceYesIsolation scope holding your meetings
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.
namespace_tokenYesOne-time token issued by the first call that claimed this namespace. Required for every later call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
modelNoThe model that produced the answer
termsNoThe search terms derived from the question
answerNoThe grounded answer with [meeting_id] citations, or null when nothing was summarised.
statusYes'ok' when an answer was generated. 'no_matches', 'unusable_question' and 'content_missing' all mean NO answer was produced and must not be read as the topic being absent.
questionNoThe question as asked
consultedNoThe meetings the answer was actually built from
ai_generatedNoTrue: `answer` was written by an AI model
searched_meetingsNoQueryable meetings available to search. 0 means nothing was read.
private_meetings_skippedNoEncrypted meetings that could not contribute to the answer

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, and the description adds substantial behavioral context beyond them: no_matches means no answer was generated, zero searched_meetings means everything private and nothing read, private meetings are encrypted and skipped, truncated meetings cannot serve as evidence, and the cost/payment model. No contradiction with annotations exists.

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?

The description is longer than average but every sentence earns its place: purpose, usage rule, anti-pattern warning, failure semantics, privacy caveat, truncation caveat, and cost. It is front-loaded with the core action and differentiator, then layers critical operational warnings that directly affect how an agent should interpret results.

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?

Given the output schema exists, the description need not explain return structure, and it instead covers the non-obvious semantics an agent needs to reason correctly: what no_matches and searched_meetings:0 really mean, the limitation of private and truncated meetings, and the payment path. Nothing needed for correct invocation or interpretation is missing.

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, but the description adds real meaning beyond the schema: it clarifies that question is plain language, not a search syntax, that the terms actually searched come back for verification, and that credit_token can pay from a balance obtained via credits_trial or /credits/buy. This supplements structure without repeating it.

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?

The description opens with a specific verb and resource: ask a plain-language question and get a written answer grounded in meeting transcripts with cited meeting ids. It explicitly differentiates from meetings_search by describing the exact user intent that selects this tool, so an agent can distinguish it without opening the sibling schema.

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

Usage Guidelines5/5

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

Gives explicit when-to-use guidance: prefer meetings_summarize over meetings_search when the user wants an answer rather than a list of excerpts to read. It also instructs to pass the question exactly as the user asked it and explicitly warns that this is not FTS5 syntax, which prevents a common misuse.

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

once_key_claimClaim an action exactly onceA
Idempotent
Inspect

Atomic idempotency witness. Claims a {namespace, action_key} pair exactly once, so a fleet of agents cannot perform the same side effect twice. Call this BEFORE any non-idempotent action such as sending an email, charging a card, or posting an order. Returns one of: 'claimed' — you won, do the work, then call once_key_complete; 'in_progress' — another agent holds a live lease, wait retry_after seconds and do NOT do the work; 'duplicate' — already done, and the 'result' field carries the original outcome, so use it instead of repeating the work; 'held' — another agent claimed this key, set no lease, and has NOT completed it: there is no result and there may never be one, so do NOT do the work and do NOT treat it as done, because the key stays locked until expires_at; 'conflict' — the same key was claimed with a different payload hash, so your key derivation is wrong. Backed by a strongly consistent Durable Object; this is not something an agent can safely reimplement locally. Costs $0.010 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
ttlNoClaim lifetime in seconds (default 86400)
lease_ttlNoSeconds you have to call once_key_complete before the claim is treated as abandoned and another agent may take it over. Set this if your work could crash partway. Omit it to hold the claim for the full ttl, which guarantees nothing else can ever run the side effect.
namespaceYesIsolation scope, e.g. your application name
action_keyYesStable identifier for the action being claimed
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.
payload_sha256NoOptional hash of the action payload. If it differs from the stored hash, the result is a conflict.
namespace_tokenNoOne-time token issued by the first call that claimed this namespace. Required for every later call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNoPresent alongside a newly issued namespace_token
resultNoThe recorded result, present when status is 'duplicate'.
statusYes'claimed' means you own the action and must perform it. 'duplicate' means someone already did: do NOT repeat the side effect, use `result` instead.
receiptNoPayment receipt
namespaceNoIsolation scope
action_keyYesThe key that was claimed
claimed_atNoISO-8601 claim time
expires_atNoISO-8601 expiry of the claim record
has_resultNoDistinguishes a recorded null result from no result at all
namespace_tokenNoIssued only on the first claim in a namespace, shown exactly once
lease_expires_atNoCall once_key_complete before this or the claim may be taken over

TDQS

A4.9/5.0
Behavior5/5

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

Annotations only provide basic flags (readOnlyHint: false, idempotentHint: true). The description goes far beyond that by explaining the underlying consistency (strongly consistent Durable Object), cost details ($0.010 USDC), payment methods (x402 or credit token), lease semantics (lease_ttl vs ttl, abandonment, takeover), and the meaning of 'held' (key stays locked until expires_at). It also clarifies that 'conflict' indicates a key derivation error. None of these are in the annotations, and there is no contradiction.

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?

The description is long but every clause earns its place. It opens with the core purpose, then the invocation timing, then the return-value contract, then cost/payment. The information is dense yet logically ordered, with no fluff. For a tool with five distinct outcomes and a payment model, this level of detail is necessary and well-structured.

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?

Given the complexity (7 params, 5 return states, payment integration), the description is remarkably complete. It covers all return values, retry behavior, lease expiration, cost, payment fallback, and the recommendation to use credits_trial. It even notes what not to do in each scenario. An agent has everything needed to invoke this correctly without further investigation.

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?

The schema already documents all 7 parameters with 100% coverage, so the baseline is 3. The description adds value by explaining the relationship between lease_ttl and ttl, the consequence of omitting lease_ttl (hold for full ttl), the requirement of namespace_token for later calls, and the conflict semantics tied to payload_sha256. It doesn't restate each parameter's schema description but gives usage-oriented context that helps an agent choose and set them correctly.

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?

The description states a specific verb ('claims'), a concrete resource ('{namespace, action_key} pair'), and the exact purpose: to ensure a side effect is performed exactly once across a fleet of agents. It distinguishes itself from siblings like once_key_complete and once_key_release by clarifying that this is the entry point before any non-idempotent action. The primary behavior is unmistakable.

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

Usage Guidelines5/5

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

It explicitly says 'Call this BEFORE any non-idempotent action' and lists concrete examples (email, charge card, post order). It then enumerates the five possible return values and the precise action an agent should take for each (e.g., wait retry_after seconds, use the result, do not do the work). It also mentions the fallback to credits_trial for free credit and warns against reimplementation. This leaves no ambiguity about when and how to use it.

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

once_key_completeRecord the outcome of a claimed actionA
Idempotent
Inspect

Free. Records the result of work you performed under a claim from once_key_claim. Every later claim of that action_key returns 'duplicate' along with this result, which is what lets another agent continue without repeating the side effect. Always call this after the work succeeds — a claim with no recorded result leaves every other agent unable to learn what happened. Completion is final and cannot be overwritten. This tool is free; no payment is required.

ParametersJSON Schema
NameRequiredDescriptionDefault
ttlNoHow long to retain the result, in seconds (default 86400)
resultNoAny JSON value describing the outcome, up to 16 KB serialized. Store large payloads elsewhere and record a reference.
namespaceYesIsolation scope used when the key was claimed
action_keyYesThe action_key you claimed
namespace_tokenNoOne-time token issued by the first call that claimed this namespace. Required for every later call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultNoThe stored result, replayed to later claimants.
statusYes'completed'
action_keyYesThe key whose outcome was recorded
expires_atNoWhen the recorded result is discarded
has_resultNoDistinguishes a recorded null result from no result at all
completed_atNoISO-8601 completion time

TDQS

A4.4/5.0
Behavior5/5

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

The description goes beyond annotations by disclosing that completion is final and cannot be overwritten, that later claims return 'duplicate' with the recorded result, and that recording is what allows another agent to continue. It also notes the tool is free. These are meaningful behavioral traits not captured by annotations alone.

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?

The description is front-loaded with the core purpose and immediate cost signal ('Free'), then explains consequences and finality. It is slightly redundant by stating 'Free' at the start and again at the end, but overall every sentence earns its place.

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?

Given the output schema exists and parameter coverage is 100%, the description supplies all necessary behavioral context: when to call, what happens afterward, how it affects other agents, and finality. No critical operational detail is missing for correct invocation.

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 description coverage is 100%, so the parameters are already well documented. The description adds only minimal reinforcement ('action_key you claimed', 'result' of the work) and does not need to compensate for missing parameter documentation.

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?

The description gives a specific verb ('Records'), a clear resource ('the result of work you performed under a claim from once_key_claim'), and distinguishes it from the related once_key_claim tool by explaining the post-claim completion role. This is immediately clear and differentiated.

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?

It explicitly states when to call the tool: 'Always call this after the work succeeds.' It also explains the consequence of not calling it, which guides correct usage. It does not mention the alternative failure path via once_key_release, but the primary usage condition is clear.

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

once_key_releaseRelease a claim whose work failedA
Idempotent
Inspect

Free. Surrenders a claimed action_key so a retry can start immediately instead of waiting out the lease. Call this when the work you claimed fails. Refuses if the key was already completed, because releasing it would discard the recorded result and allow the side effect to run twice. This tool is free; no payment is required.

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceYesIsolation scope used when the key was claimed
action_keyYesThe action_key to release
namespace_tokenNoOne-time token issued by the first call that claimed this namespace. Required for every later call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes'released'
action_keyYesThe key that was surrendered

TDQS

A4.4/5.0
Behavior5/5

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

Discloses a key refusal behavior: releasing an already completed key is refused because it would discard the recorded result and risk running the side effect twice. This goes beyond the annotations by explaining failure semantics and safety rationale. No contradiction with annotations.

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?

Mostly efficient and informative, but the free/no-payment point is stated twice ('Free.' and 'This tool is free; no payment is required.'), wasting a sentence. Otherwise tightly written and front-loaded.

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?

For a moderate-complexity tool with full schema coverage and an output schema, the description covers what the tool does, when to call it, and the important refusal behavior. An agent has enough to invoke it correctly and avoid dangerous misuse.

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 description coverage is 100%, so parameters are already fully documented. The description adds little param-specific detail, but the baseline of 3 applies because the schema carries the load.

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 ('surrenders'/'release') and resource ('claimed action_key'), with a clear effect: letting a retry start immediately. This distinguishes it from sibling claim/complete operations even though those tools aren't named.

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 'Call this when the work you claimed fails' and explains the benefit over waiting out the lease. It does not name an alternative tool for success cases, but the condition is clear enough.

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

pdf_parseExtract text from a PDFA
Read-onlyIdempotent
Inspect

Extract text from a PDF by URL. Handles compressed streams, PDF 1.5+ object streams and ToUnicode CMaps, and reports encrypted or image-only documents honestly instead of returning garbage. Costs $0.020 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesHTTPS URL of the PDF
max_pagesNoOptional page cap
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.

Output Schema

ParametersJSON Schema
NameRequiredDescription
urlYesThe PDF that was fetched
pagesYes
page_countYesPages extracted
extracted_atNoISO-8601 extraction time

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already mark the tool as read-only, idempotent, and open-world. The description adds valuable behavioral disclosures beyond that: how it handles compressed streams, PDF 1.5+ object streams, ToUnicode CMaps, and that it returns honest diagnostics for encrypted or image-only PDFs instead of garbage. It also surfaces the cost and payment flow, which materially affects invocation.

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?

Two sentences with no filler. The first sentence states the core action; the second packs meaningful capability, failure behavior, and payment details. Every sentence earns its place and the most important information is front-loaded.

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?

For a read-only extraction tool with a full output schema, the description covers what the tool does, what PDF complexities it handles, how it behaves on problematic inputs, and how to pay. The only implicit requirement, that the URL be HTTPS, is already specified in the schema. Nothing needed for correct invocation 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 description coverage is 100%, so the schema already documents all three parameters. The description adds a little color around the credit_token payment flow and 'by URL' framing, but it does not significantly extend parameter meaning beyond what the schema provides. 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?

The description opens with a specific verb and resource: 'Extract text from a PDF by URL.' It clearly identifies the tool's core function and distinguishes it from sibling tools like scrape or meetings_* by being PDF-specific and text-extraction-focused.

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 makes clear when the tool applies (PDFs by URL) and provides practical context about payment methods and the credits_trial alternative. It does not explicitly name excluded cases or alternative tools, but the purpose is specific enough that the usage context is evident.

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

scrapeFetch a page as text or markdownA
Read-onlyIdempotent
Inspect

Fetch a URL and return readable text or markdown, optionally narrowed by CSS selector. Requests to private, loopback and link-local addresses are refused, and every redirect hop is re-validated. Costs $0.010 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesHTTPS URL to fetch
formatNoOutput format (default text)
selectorNoOptional CSS selector to extract just part of the page
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.

Output Schema

ParametersJSON Schema
NameRequiredDescription
urlYesThe page that was fetched
titleNoDocument title, when the page has one
formatNo'text', 'markdown' or 'html', echoing your request
contentYesExtracted content in the requested format
extracted_atNoISO-8601 fetch time

TDQS

A4.5/5.0
Behavior5/5

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

Beyond readOnly/idempotent annotations, the description discloses SSRF protections ('private, loopback and link-local addresses are refused, and every redirect hop is re-validated') and a concrete cost/payment model ($0.010 USDC via x402 or credit token). These are non-obvious behaviors an agent must know before invoking.

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?

Three sentences with no filler: main capability first, then security constraint, then cost/payment. Every sentence adds distinct value, and the structure front-loads the action an agent needs to identify the tool.

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?

For a four-parameter tool with full schema coverage, an output schema, and readOnly/idempotent annotations, the description adds the missing operative constraints: network restrictions, redirect safety, and payment/credit behavior. Nothing essential for correct selection or invocation is omitted.

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 description coverage is 100%, so the schema already documents URL, format, selector, and credit_token. The description adds lightweight context for selector ('narrowed by CSS selector') and payment, but does not materially extend the parameter semantics beyond what the schema provides; baseline 3 applies.

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?

Description uses a specific verb-resource pairing: 'Fetch a URL and return readable text or markdown, optionally narrowed by CSS selector.' This clearly differentiates scrape from siblings like pdf_parse or meetings_search; an agent knows exactly what resource it acts on and what it produces.

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 tool's usage context is clear: fetching a URL for readable text/markdown, with optional CSS selector. It does not name competing tools for exclusion, but it does give conditional payment guidance ('call credits_trial for free credit if you have neither'), which helps an agent decide when a prerequisite is missing.

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

vault_deleteDelete a stored secretA
DestructiveIdempotent
Inspect

Permanently delete an item. Requires the namespace_token. Costs $0.005 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYesItem key
namespaceYesIsolation scope
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.
namespace_tokenYesOne-time token issued by the first call that claimed this namespace. Required for every later call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
keyYesThe key that was removed
statusYes'deleted'
namespaceNoIsolation scope

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations (destructive, idempotent, non-read-only), the description discloses key side effects: deletion is permanent, a namespace_token is required, and the call costs $0.005 in USDC paid via x402 or a credit token. This is exactly the kind of cost and access context an agent needs before executing a destructive operation.

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?

Two compact sentences cover the action, precondition, cost, payment method, and fallback credit path with no filler. The essential destructive action is front-loaded, and every clause adds useful information.

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?

Given the rich schema, the annotations (especially destructiveHint and idempotentHint), and the presence of an output schema, the description supplies the important missing context: payment side effects, required auth token, and the free-credit fallback. An agent has enough to decide whether to call this tool and what prerequisites must be satisfied.

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?

The input schema already documents all four parameters comprehensively at 100% coverage, including the optional credit_token and the nature of the namespace_token. The description adds a helpful pointer to credits_trial for free credit, but it does not substantially expand parameter meaning beyond the schema.

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?

The description opens with 'Permanently delete an item', giving a clear verb and resource, and the title narrows it to deleting a stored secret. This separates it from sibling tools like vault_store and vault_retrieve, leaving no ambiguity about what operation is performed.

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?

It states the necessary precondition ('Requires the namespace_token') and when an alternative payment path applies ('call credits_trial for free credit if you have neither'). It does not explicitly discuss a when-not-to-use case or name a sibling alternative, but the destructive nature and token requirement provide sufficient context for an agent to invoke it correctly.

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

vault_existsTest whether a key existsA
Read-onlyIdempotent
Inspect

Check for a key without returning its ciphertext. Requires the namespace_token. Costs $0.005 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYesItem key
namespaceYesIsolation scope
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.
namespace_tokenYesOne-time token issued by the first call that claimed this namespace. Required for every later call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
keyYesThe key that was checked
existsYesWhether the key is present. Cheaper than a retrieve.
namespaceNoIsolation scope

TDQS

A4.2/5.0
Behavior5/5

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

Annotations already indicate readOnlyHint and idempotentHint, and the description adds meaningful behavioral context: it returns no ciphertext, requires the namespace_token, costs a specific amount, and explains the two payment paths. This goes well beyond the structured annotations, particularly around cost and authentication.

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?

The description is concise and front-loaded: the core behavior appears first, followed by the essential prerequisite and cost information. Every sentence adds necessary operational detail without redundancy or fluff.

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

Completeness4/5

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

Given the output schema exists, return values need not be described. The description covers the key behavioral, authentication, and cost details needed to invoke the tool. It misses only explicit sibling differentiation for when to choose this over vault_retrieve, so it is nearly complete but not perfectly so.

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 description coverage is 100%, so the baseline is 3. The description reinforces the namespace_token requirement and references credit_token indirectly, but adds little semantic detail beyond what the schema already provides. This is adequate but not exceptional.

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?

The description states a specific verb and resource: 'Check for a key' and explicitly notes it does so 'without returning its ciphertext,' making it clearly distinct from vault_retrieve. The title reinforces the existence-testing purpose. It is immediately obvious what this tool does.

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

Usage Guidelines3/5

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

The description conveys clear context around prerequisites and cost, but does not explicitly name alternatives such as vault_retrieve or state when an agent should prefer this tool over them. The phrase 'without returning its ciphertext' implies an existence-only use case, but this is not made explicit enough for definitive routing.

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

vault_listList the keys in a vault namespaceA
Read-onlyIdempotent
Inspect

List the keys held in a namespace with their metadata: alg, size, timestamps. Never returns ciphertext — use vault_retrieve for that. Each item's updated_at is the version to pass back as if_match on a conditional store. Use this when you have stored secrets and need to know what is there. Costs $0.005 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceYesIsolation scope
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.
namespace_tokenYesOne-time token issued by the first call that claimed this namespace. Required for every later call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYesNumber of entries
itemsYesMetadata only — ciphertext is never included here
statusYes'listed'

TDQS

A4.7/5.0
Behavior5/5

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

The description adds significant behavioral context beyond the annotations: it explicitly states the tool never returns ciphertext, lists the metadata fields returned (alg, size, timestamps), explains that updated_at serves as the version for conditional stores, and discloses the exact cost and payment mechanism. It does not contradict the readOnlyHint or idempotentHint annotations.

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?

Three sentences, each earning its place: the first states the core purpose, the second highlights the security boundary and alternative, and the third gives usage context and cost. Information is front-loaded and there is no filler or redundancy.

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?

The description covers purpose, constraints, alternative routing, practical usage ('updated_at ... as if_match'), and cost/payment options. Combined with the output schema and annotations, the agent has everything needed to decide when to call this tool and how to interpret its response.

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 description coverage is 100%, so the baseline is 3. The description adds little parameter-specific meaning beyond the schema; it references credit tokens and namespace context but does not clarify any parameter beyond what the schema already states. This is adequate but does not go beyond the structured fields.

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?

The description states a specific verb and resource: 'List the keys held in a namespace with their metadata'. It distinguishes itself from siblings by explicitly saying 'Never returns ciphertext — use vault_retrieve for that.' This makes it immediately clear what the tool does and how it differs from related tools.

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

Usage Guidelines5/5

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

The description gives explicit guidance: 'Use this when you have stored secrets and need to know what is there.' It also names the alternative tool for retrieval of secret values ('use vault_retrieve for that') and provides a conditional path for free credit via credits_trial. This is strong, actionable usage guidance.

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

vault_retrieveRetrieve an encrypted secretA
Read-onlyIdempotent
Inspect

Retrieve a previously stored ciphertext. Requires the namespace_token. Costs $0.02 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYesItem key
namespaceYesIsolation scope
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.
namespace_tokenYesOne-time token issued by the first call that claimed this namespace. Required for every later call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
algNoAlgorithm label you supplied at store time
keyYesThe key that was read
statusYes'retrieved'
receiptNoPayment receipt
namespaceNoIsolation scope
ciphertextYesExactly the bytes you stored. Decrypt these yourself.
created_atNoISO-8601 creation time
expires_atNoExpiry, or null if it never expires
updated_atNoISO-8601 last write

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the description doesn't need to restate that. It adds valuable behavioral context: the $0.02 cost on Base, the x402 payment requirement, the credit_token alternative, and the namespace_token prerequisite. It also clarifies this returns a ciphertext, not a decrypted secret.

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?

Two sentences with no fluff. The first sentence states the core action; the second covers prerequisites and cost, including a pointer to credits_trial. Every clause earns its place.

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

Completeness4/5

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

For a simple read tool with full schema coverage, an output schema, and idempotent/read-only annotations, the description is nearly complete. It covers cost, prerequisites, and payment alternatives. Missing details like error behavior are minor and the output schema likely covers return values.

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 description coverage is 100%, so the description doesn't need to repeat parameter details. The description does add context about the payment flow and the credit_token alternative, but it doesn't explain individual parameters beyond what the schema already states. 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?

The description opens with a specific verb and resource: 'Retrieve a previously stored ciphertext.' This clearly distinguishes it from sibling tools like vault_list (list keys) and vault_exists (check existence). The phrase 'previously stored' also implies it is the counterpart to vault_store.

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: to retrieve a stored ciphertext, and it specifies the required namespace_token and payment options. It does not explicitly name alternative tools or exclusion criteria, but the purpose is unambiguous enough that an agent can infer when it is appropriate.

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

vault_rotate_tokenRotate a vault namespace tokenA
Destructive
Inspect

Free. Mints a new namespace_token and immediately invalidates the current one, which you must present to authorize the rotation. Do this whenever the token may have been exposed — a leaked token is otherwise permanent, unrevocable read and delete access to every secret in the namespace. There is no recovery if you lose the token. This tool is free; no payment is required.

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceYesIsolation scope
namespace_tokenYesOne-time token issued by the first call that claimed this namespace. Required for every later call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
noticeNoHuman-readable warning that the old token is now invalid
statusYes'rotated'
namespace_tokenYesThe new token, shown exactly once. The previous one stops working.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations mark the operation as destructive and non-read-only, and the description goes further by disclosing immediate invalidation, irreversibility, the need to present the current token, and permanent unrevocable access if leaked. This adds significant behavioral context beyond the annotations.

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?

The description is front-loaded with the core behavior and risk in compact sentences. It is slightly padded by repeating 'free' at the start and again at the end, but the overall structure is efficient.

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 both parameters fully documented in the schema and an output schema present, the description covers everything needed to decide and invoke correctly: trigger conditions, required authorization, consequences, and irreversibility.

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 adds value by clarifying that the namespace_token must be the current token and that rotation produces a new one, disambiguating the schema's 'first call' phrasing.

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?

The description states the exact action—'Mints a new namespace_token and immediately invalidates the current one'—on a specific resource. It is unambiguous and clearly distinct from sibling tools like vault_delete or once_key_claim.

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?

It explicitly says when to use the tool ('whenever the token may have been exposed') and explains the stakes if you don't. It does not mention alternatives or explicitly state when not to use, preventing a 5.

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

vault_storeStore an encrypted secretA
DestructiveIdempotent
Inspect

Store client-side encrypted data. This service holds no key that could decrypt it and never sees plaintext; note that the item key, namespace, alg label and size ARE stored in the clear. The first store claims the namespace and returns a namespace_token shown only once — store it immediately, because it is required by every later call and cannot be recovered. Pass if_match with an item's updated_at for a compare-and-swap write, or if_absent to create only; either returns status 'precondition_failed' rather than silently clobbering a concurrent write. Costs $0.02 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
algNoAlgorithm label recorded alongside the item (default aes-256-gcm)
keyYesItem key
ttlNoItem lifetime in seconds
if_matchNoOnly write if the item's current updated_at equals this. Use it whenever you are updating a value you read earlier, or a concurrent writer's change is lost silently.
if_absentNoOnly write if the key does not already exist. Fails with status 'precondition_failed' if it does.
namespaceYesIsolation scope
ciphertextYesEncrypt before sending. Plaintext here would be a mistake.
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.
namespace_tokenNoOne-time token issued by the first call that claimed this namespace. Required for every later call.

Output Schema

ParametersJSON Schema
NameRequiredDescription
algNoAlgorithm label you supplied; the service never decrypts
keyYesThe key that was written
statusYes'stored'
receiptNoPayment receipt
namespaceNoIsolation scope
created_atNoISO-8601 creation time
expires_atNoExpiry, or null if it never expires
size_bytesNoStored ciphertext size
updated_atNoISO-8601 last write
namespace_tokenNoIssued only on the first store into a namespace, shown exactly once

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond annotations: discloses that the first store claims the namespace and returns a one-time token, that the token cannot be recovered, that metadata is stored in the clear, and that conditional writes return 'precondition_failed' instead of clobbering. No contradiction with annotations.

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?

The description is long but every sentence carries critical information. It is front-loaded with the core purpose and security model, then token handling, concurrency, and cost. The structure is logical, though a slightly tighter wording could be possible without losing content.

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?

For a complex tool with 9 parameters, an output schema, and annotations, the description covers essential aspects: security, token lifecycle, concurrency safety, cost, and payment alternatives. It also mentions the precondition_failed status. The output format is presumably in the output schema, so not needed here.

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%, but the description adds significant context: explains the one-time nature of namespace_token, the compare-and-swap semantics of if_match, the create-only behavior of if_absent, and the credit_token payment path. This adds value beyond the schema.

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?

The description clearly states the tool stores client-side encrypted data, explains the security model (no key, never sees plaintext), and distinguishes it from other vault operations like retrieve/delete. It also notes what is stored in the clear, making the scope precise.

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?

Provides clear context for when to use conditional writes (if_match/if_absent) and payment options (credits_trial, credit_token). It implicitly distinguishes from other vault tools by describing the store action, but does not explicitly name alternatives or state when not to use this tool.

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

x402_verifyCheck an x402 endpoint before paying itA
Read-onlyIdempotent
Inspect

Call this BEFORE authorising payment to any x402 endpoint you did not write yourself. It fetches the endpoint's live payment challenge and compares it against every observation previously made by every other caller, so you learn things a single agent cannot see on its own -- above all, whether the address receiving the money has changed. A 'critical' entry in drift means something determining where funds go (pay_to, network or asset) is different from before: stop and confirm out of band. Read the LIVE charges in preference to any directory listing, and pass what the listing claimed as expect to have the disagreement reported. IMPORTANT: 'status':'ok' is NOT an endorsement -- it only means a challenge was read and recorded. It cannot tell you whether the operator will deliver anything for your money. 'first_observation':true means there is no history at all, so an empty drift proves nothing. ALWAYS read prior_criticals: drift only compares against the last observation, so an endpoint that swapped its payee earlier shows an empty drift once that swap became the baseline -- a non-zero prior_criticals means it has changed where money goes before, and that is true no matter how clean today's look is. 'status':'unreachable' is not evidence of fraud and not evidence of health; do not pay on it either way. A null price_usd means the token's units are unknown here and the amount was NOT converted -- do not assume it is small. Costs $0.010 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic HTTPS URL of the endpoint you are about to pay. Loopback and private-network addresses are refused rather than fetched.
expectNoOptional. What a directory, README or earlier response led you to believe. Any disagreement with the live challenge is reported.
methodNoHow to provoke the challenge: 'POST' (default), 'GET' or 'HEAD'. Use the method you intend to pay for.
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.

Output Schema

ParametersJSON Schema
NameRequiredDescription
urlNoThe URL that was checked
driftNoDifferences from the last observation. Any severity 'critical' entry changes where money goes. Null means no comparison was made at all, which is not the same as an empty array.
adviceNoPlain-language statement of what was and was not established
statusYes'ok' means a challenge was read -- NOT that the endpoint is trustworthy. 'refused' means the URL was never fetched. 'unreachable', 'redirected' and 'not_x402' all mean no challenge was obtained.
chargesNoWhat the endpoint declares it will charge, right now
last_seenNoISO-8601 time of the previous observation
reachableNoWhether the endpoint answered at all
first_seenNoISO-8601 time this endpoint was first observed
mismatchesNoHow the live challenge disagrees with what you expected
times_seenNoHow many observations exist, across all callers
http_statusNoStatus code the endpoint returned
last_criticalNoThe most recent previously recorded critical change, or null if there has never been one.
prior_criticalsNoHow many critical changes have EVER been recorded for this endpoint, not counting this call. `drift` only compares against the last observation, so once a change has been absorbed into the baseline it stops appearing there. A non-zero value here means this endpoint has changed where money goes before, even when `drift` is empty.
first_observationNoTrue when there was no prior record, so an empty `drift` means nothing
matches_expectationNoPresent only when `expect` was supplied

TDQS

A4.9/5.0
Behavior5/5

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

The description adds substantial behavioral caveats that annotations alone cannot convey: 'status':'ok' is not an endorsement, a first observation makes empty drift meaningless, prior_criticals remains the truthful signal after a baseline swaps, unreachable is inconclusive, and null price_usd means no conversion occurred. These do not contradict readOnlyHint/idempotentHint; they enrich 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.

Conciseness5/5

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

The description is long but every section earns its place: the when-to-use rule is front-loaded, followed by the core mechanism, then the caveats most likely to prevent a mistaken payment. It uses clear emphasis markers (IMPORTANT, ALWAYS) to prioritize the highest-risk messages.

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?

For a paid verification tool with an output schema, the description covers the necessary interpretation of statuses and fields, failure semantics, pricing, and payment fallbacks. There is no missing operational context an agent would need to decide whether to call it or act on its result.

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, but the description adds semantic guidance beyond field descriptions: expect should carry 'what the listing claimed', method should be the one you intend to pay with, and credit_token is explicitly an alternative balance that avoids an x402 payment. This lifts it above baseline without needing to repeat schema details.

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?

The opening sentence names a specific action ('Call this BEFORE authorising payment') tied to a clear resource (an x402 endpoint not written by the caller), and the second sentence defines the mechanism ('fetches ... live payment challenge and compares it against every observation previously made'). This is precise and naturally distinguishes it from unrelated siblings like meetings_* or vault_*.

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

Usage Guidelines5/5

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

It states exactly when to invoke ('BEFORE authorising payment to any x402 endpoint you did not write yourself'), tells the agent to prefer live charges over directory listings, and routes users without funding to credits_trial. It also tells the caller which HTTP method to use ('Use the method you intend to pay for') and what conditions should prevent payment ('stop and confirm out of band').

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.

  1. 1 tool update
    • Changedmeetings_summarize1 field changed
      • addedOutput schema / properties / ai_generated
        Added value: +{
        +  "description": "True: `answer` was written by an AI model",
        +  "type": "boolean"
        +}
  2. 17 tool updates
    • Changedcompress1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Addedcredits_balance
    • Addedcredits_trial
    • Changedmeetings_get1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Changedmeetings_import1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Changedmeetings_list1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Changedmeetings_search1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Changedmeetings_summarize1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Changedonce_key_claim1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Changedpdf_parse1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Changedscrape1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Changedvault_delete1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Changedvault_exists1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Changedvault_list1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Changedvault_retrieve1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Changedvault_store1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
    • Changedx402_verify1 field changed
      • addedInput schema / properties / credit_token
        Added value: +{
        +  "description": "Optional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.",
        +  "type": "string"
        +}
  3. 1 tool update
    • Changedx402_verify2 fields changed
      • addedOutput schema / properties / last_critical
        Added value: +{
        +  "description": "The most recent previously recorded critical change, or null if there has never been one.",
        +  "properties": {
        +    "at": {
        +      "description": "ISO-8601 time the change was recorded",
        +      "type": "string"
        +    },
        +    "field": {
        +      "description": "What changed: pay_to, network or asset",
        +      "type": "string"
        +    },
        +    "from": {
        +      "description": "The previous value",
        +      "type": "string"
        +    },
        +    "to": {
        +      "description": "The value that replaced it",
        +      "type": "string"
        +    }
        +  },
        +  "type": [
        +    "object",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / prior_criticals
        Added value: +{
        +  "description": "How many critical changes have EVER been recorded for this endpoint, not counting this call. `drift` only compares against the last observation, so once a change has been absorbed into the baseline it stops appearing there. A non-zero value here means this endpoint has changed where money goes before, even when `drift` is empty.",
        +  "type": "number"
        +}
  4. 1 tool update
    • Changedx402_verify3 fields changed
      • changedOutput schema / properties / drift / description
        Previous value: -"Differences from the last observation. Any severity 'critical' entry changes where money goes."New value: +"Differences from the last observation. Any severity 'critical' entry changes where money goes. Null means no comparison was made at all, which is not the same as an empty array."
      • changedOutput schema / properties / drift / items / properties / severity / description
        Previous value: -"'critical' or 'warning'"New value: +"'critical' when something determining where money goes is new, 'warning' when it is worth knowing, 'info' when it is merely a fact"
      • changedOutput schema / properties / drift / type
        Previous value: -"array"New value: +[
        +  "array",
        +  "null"
        +]
  5. 1 tool update
    • Changedx402_verify1 field changed
      • changedOutput schema / properties / charges / properties / price_usd / type
        Previous value: -[
        -  "number",
        -  "null"
        -]New value: +[
        +  "string",
        +  "null"
        +]
  6. 1 tool update
    • Addedx402_verify
  7. 2 tool updates
    • Changedmeetings_import1 field changed
      • changedInput schema / properties / source / description
        Previous value: -"Free-form label for where the transcript came from, e.g. webvtt, srt, plain-text"New value: +"Optional hint about the export format. Ignored if it disagrees with the file: WebVTT and SRT are detected from the content itself, unpacked into speaker-attributed text, and any speakers found are added to participants. Plain text is stored verbatim."
    • Addedmeetings_summarize
  8. 16 tool updates
    • First observedcompress
    • First observedmeetings_get
    • First observedmeetings_import
    • First observedmeetings_list
    • First observedmeetings_search
    • First observedonce_key_claim
    • First observedonce_key_complete
    • First observedonce_key_release
    • First observedpdf_parse
    • First observedscrape
    • First observedvault_delete
    • First observedvault_exists
    • First observedvault_list
    • First observedvault_retrieve
    • First observedvault_rotate_token
    • First observedvault_store

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Provides AI agents with 10 pay-per-call utility tools (QR generation, DNS lookup, OCR, etc.) using USDC on Base via the x402 protocol, with agent's private key never leaving the agent.
    11
    23 npm
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Pay-per-call data and tools for AI agents over x402, by UnyKorn. 360 endpoints: DeFi and market data, multi-chain wallet reads, wallet and token risk signals, SEC filings, web and domain intel, and AI text tools. Settled per call in USDC on Base ($0.001-$0.25). No API keys or subscriptions; unpaid calls return the exact quote first.
    14
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.