Skip to main content
Glama

Server Details

Agent Skill ROI Registry & Benchmarking. It sells skills for log triage and repository mapping.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 22 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.7/5.0

Scored across 11 tools

Disambiguation5/5

Every tool has a sharply distinct purpose, and the descriptions carry explicit 'Use when / Not for' clauses that cross-reference the neighboring tools (e.g. evaluate_capability vs resolve_task vs compare_capabilities vs estimate_roi), so an agent can reliably pick the right one. Even the closest overlap — resolve_task vs evaluate_capability — is disambiguated by output detail (one-word decision vs full arithmetic).

Naming Consistency5/5

All names follow a clean snake_case verb_noun pattern: compare_capabilities, estimate_roi, evaluate_capability, get_benchmark, get_capability, get_provenance, get_quote, report_outcome, resolve_task, search_capabilities, unlock_capability. Verb choice is consistent (get_ for retrieval, search_/resolve_/evaluate_/compare_ for decisions, unlock_/get_quote for transactions).

Tool Count5/5

Eleven tools is well within the ideal 3-15 range and each one earns its place by covering a distinct stage of the registry workflow. No redundancy or filler.

Completeness5/5

The full lifecycle is covered end to end: discovery (search_capabilities), inspection (get_capability, get_benchmark, get_provenance), decision (resolve_task, evaluate_capability, compare_capabilities, estimate_roi), transaction (get_quote, unlock_capability) and feedback (report_outcome). No obvious dead ends for evaluating and acquiring a capability.

Available Tools

11 tools
compare_capabilitiesCompare capabilitiesA
Read-onlyIdempotent
Inspect

Assess two to five named capabilities side by side for the same inputs, with the same method and ak.offer.v1 offer shape as evaluate_capability. Use when: you already hold a shortlist of capability ids and want each one's decision, reasons and offer in one answer. Not for: finding candidates (search_capabilities) or a single capability (evaluate_capability). Input: the capability ids, plus the optional task, model, expected_runs, baseline_cost_estimate_usd, context and constraints that evaluate_capability reads. Output: ak.comparison.v1 with the results ranked by decision, lower-bound net saving, relevance and capability id, each with its reasons and an ak.offer.v1 offer.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskNoPlain description of the task you are about to do (at most 4000 characters).
modelNoThe model you run on, e.g. claude-sonnet-5. Savings are reported only for measured models.
contextNoFacts about your situation, keyed by the capability's parameter names (e.g. log_lines).
constraintsNoLimits you set for the answer; a capability outside them is reported as blocked, with the reason code.
capabilitiesYesTwo to five capabilities to compare, each as an id, ak:// URI or slug.
expected_runsNoHow many times you expect to perform this kind of task.
baseline_cost_estimate_usdNoWhat one run of this task costs you today without the capability, in USD.

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare the safety profile (readOnlyHint, idempotentHint, destructiveHint=false, openWorldHint=false). The description adds real behavior beyond that: it shares the same method and offer shape as evaluate_capability, returns a ranked result set, and surfaces blocked entries with reason codes. It does not discuss cost/latency of running the comparison, which is a minor gap.

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

Conciseness5/5

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

Front-loaded with the action, then Use when / Not for / Input / Output in a tight sequence. Every sentence carries routing, input, or return information; no filler.

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?

There is no output schema, so the description correctly supplies the return contract: ak.comparison.v1, ranked by decision, lower-bound net saving, relevance and capability id, each with reasons and an ak.offer.v1 offer. Combined with 100% schema coverage on seven parameters, an agent has everything needed to call and interpret it.

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 baseline is 3. The description exceeds it by clarifying that the optional task, model, expected_runs, baseline_cost_estimate_usd, context and constraints are exactly those evaluate_capability reads, giving the agent cross-tool semantic consistency. It adds no per-parameter syntax 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 first sentence states a precise verb (Assess), resource (capabilities), cardinality (two to five), and scope (same inputs, same method/offer shape as evaluate_capability). It explicitly distinguishes itself from search_capabilities and evaluate_capability, so an agent can route without opening any 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?

It gives an explicit 'Use when' trigger (holding a shortlist of ids and wanting decision, reasons and offer in one answer) and an explicit 'Not for' with the two named alternatives for the excluded cases. Nothing about when to select this tool is left to inference.

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

estimate_roiEstimate return on a capabilityA
Read-onlyIdempotent
Inspect

Per measured model: expected saving per run, break-even runs and net saving over expected_runs, with intervals, for one capability and no task. Use when: you know the capability and want its economics on each model the registry measured. Not for: a use-or-not answer for a task (evaluate_capability) or several candidates (compare_capabilities). Input: a capability id; add model to keep one model, and expected_runs with baseline_cost_estimate_usd for an estimate at your scale. Output: ak.roi.v1 with one economics entry per measured model; break-even runs is null when the interval does not show a saving, and your estimate is left out where success is not accepted or your baseline lies outside the measured range.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoThe model you run on, e.g. claude-sonnet-5. Savings are reported only for measured models.
capabilityYesCapability id (ak:publisher:name or ak:publisher:name:x.y.z), ak:// URI or slug.
expected_runsNoHow many times you expect to perform this kind of task.
baseline_cost_estimate_usdNoWhat one run of this task costs you today without the capability, in USD.

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so safety is covered. The description goes beyond them by disclosing output edge cases: break-even runs is null when the interval does not show a saving, and the user's estimate is omitted where success is not accepted or the baseline falls outside the measured range. It does not mention auth or rate limits, but for a read-only estimator the added result semantics are substantial.

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?

It is front-loaded with the result shape, then cleanly partitioned into 'Use when', 'Not for', 'Input' and 'Output' segments, so every sentence earns its place. The phrasing is densely packed with clauses, which costs a little readability, but there is no filler.

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

Completeness5/5

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

With no output schema, the description carries the return contract and does so well: it names the ak.roi.v1 shape, states one economics entry per measured model, and explains the null break-even and omitted-estimate cases. Combined with the input guidance, an agent has everything needed to call and interpret this tool.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3 and each parameter is already documented. The description still adds relational meaning beyond the schema by pairing expected_runs with baseline_cost_estimate_usd ('an estimate at your scale') and by clarifying that model narrows output to one model while the measured-range constraint governs whether baseline is usable.

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 clause states a precise verb and resource ('expected saving per run, break-even runs and net saving over expected_runs, with intervals') and scopes it to 'one capability and no task'. The 'Not for' clause explicitly separates it from evaluate_capability (single task decision) and compare_capabilities (multiple candidates), so an agent can distinguish it from siblings without opening schemas.

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 'Use when: you know the capability and want its economics on each model the registry measured' plus a named 'Not for' list with the two competing siblings and the condition that selects each. When-to-use, when-not, and alternatives are all present.

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

evaluate_capabilityShould I use a capability for this task?A
Read-onlyIdempotent
Inspect

Decide whether a registry capability is worth using or buying for your task, from registry-run benchmarks only. Use when: you have a task and want a recommend, do_not_recommend or undetermined answer with the arithmetic; name a capability to weigh only that one, or leave it out and the registry weighs its closest matches. Not for: one short answer without the arithmetic (resolve_task), a plain list of matches (search_capabilities), two to five named candidates side by side (compare_capabilities), or the break-even figures of one capability without a task (estimate_roi). Input: a plain task description; give model, expected_runs and baseline_cost_estimate_usd for a money estimate, and context for the conditions the capability declares. Output: ak.evaluation.v1 with decision, reasons, expected effect, price, confidence, operator_message, evaluation_id, next steps and an ak.offer.v1 offer (status, next_action, economics, the four evidence kinds listed apart). do_not_recommend is a normal answer.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYesPlain description of the task you are about to do (at most 4000 characters).
modelNoThe model you run on, e.g. claude-sonnet-5. Savings are reported only for measured models.
contextNoFacts about your situation, keyed by the capability's parameter names (e.g. log_lines).
capabilityNoCapability id (ak:publisher:name or ak:publisher:name:x.y.z), ak:// URI or slug.
constraintsNoLimits you set for the answer; a capability outside them is reported as blocked, with the reason code.
budget_policyNoYour operator's spending policy; the answer says whether a purchase fits it. Every purchase still needs human approval.
expected_runsNoHow many times you expect to perform this kind of task.
baseline_cost_estimate_usdNoWhat one run of this task costs you today without the capability, in USD.

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare a safe read-only, idempotent, closed-world operation, and the description adds material context beyond them: 'these tools never charge', 'Every purchase still needs human approval', capabilities outside constraints are 'reported as blocked, with the reason code', and 'do_not_recommend is a normal answer' (guarding against an agent retrying on a negative verdict).

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?

Well front-loaded: purpose, then when, then not-for, then input, then output. It is long and dense (the output enumeration and 'the four evidence kinds listed apart' are heavy), but nearly every clause carries routing or contract information, so the size is largely earned.

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 an 8-parameter tool with nested objects and no output schema, the description supplies the missing return contract (ak.evaluation.v1 fields, ak.offer.v1, blocked statuses and reason codes) and the money-estimate input combination. An agent has everything needed to call it and interpret the 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 real meaning: model/expected_runs/baseline_cost_estimate_usd are jointly required 'for a money estimate', and omitting capability makes the registry weigh its closest matches rather than failing. That interaction logic is not visible in the schema. It does not, however, explain the context-keying or budget_policy precedence beyond the schema's own text.

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 (decide) and object (whether a registry capability is worth using or buying), and pins the scope to registry-run benchmarks only. The description explicitly differentiates itself from four named siblings, so an agent can route without opening any 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?

Contains an explicit 'Use when' clause plus a 'Not for' clause that names the alternative tool for each adjacent case: resolve_task for a bare answer, search_capabilities for a list, compare_capabilities for 2-5 candidates, estimate_roi for break-even without a task. It also clarifies the optional-capability branch (name one vs. let the registry weigh closest matches).

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

get_benchmarkGet benchmark evidenceA
Read-onlyIdempotent
Inspect

Registry-run benchmark summaries (labelled), publisher claims (labelled PUBLISHER CLAIMED) and the signed attestations of one capability. Use when: you want the measurements behind an answer (paired runs, model, fixtures, method) or want to check them yourself. Not for: an answer for your task (evaluate_capability) or artifact hashes and the log proof (get_provenance). Input: a capability id, ak:// URI or slug. Output: ak.benchmark.v1 with the evidence, the publisher claims, the attestations, the method and the limitations; publisher claims never decide anything.

ParametersJSON Schema
NameRequiredDescriptionDefault
capabilityYesCapability id (ak:publisher:name or ak:publisher:name:x.y.z), ak:// URI or slug.

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, idempotentHint=true, destructiveHint=false, openWorldHint=false), so the bar is lower. The description adds behavioral context beyond annotations: it labels publisher claims as 'PUBLISHER CLAIMED' and states 'publisher claims never decide anything', which is a decision-relevance caveat an agent would not infer from annotations. It does not describe empty-result or error behavior, but the added provenance-qualification is substantive.

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

Conciseness5/5

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

Front-loaded purpose, then Use when / Not for / Input / Output in compressed labelled segments, with no filler sentences. Each clause carries routing or format 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?

This is a read-only, openWorld=false, idempotent lookup with one required parameter and no output schema. The description supplies what is missing: the output type (ak.benchmark.v1), the elements of the evidence (paired runs, model, fixtures, method, limitations, attestations), and the publisher-claim caveat. Nothing an agent needs to call it correctly is absent.

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 baseline is 3, but the description adds accepted input formats ('a capability id, ak:// URI or slug') and, via the output line, signals the expected ak.benchmark.v1 shape. The schema already documents the id/URI/slug formats, so the incremental value over structured data is modest rather than large.

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?

Uses a specific verb+resource ('Registry-run benchmark summaries', 'publisher claims', 'signed attestations of one capability') and explicitly names the sibling tools it is not (evaluate_capability, get_provenance), so an agent can distinguish it without opening any 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?

The tool states an explicit 'Use when' condition ('you want the measurements behind an answer ... or want to check them yourself') and a 'Not for' exclusion, naming the two alternatives (evaluate_capability for task answers, get_provenance for artifact hashes and log proof). This is exactly the routing guidance an agent needs among 11 siblings.

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

get_capabilityGet a capability cardA
Read-onlyIdempotent
Inspect

The capability's card: purpose, use-when and do-not-use-when conditions, permissions, price, evidence summary, trust checks, links and a task-independent ak.offer.v1 offer. Use when: you can name a capability and want its facts, or want to check the conditions an evaluation asked about. Not for: an answer for your task (evaluate_capability) or the full benchmark records (get_benchmark). Input: a capability id, ak:// URI or slug, from a search, an evaluation or a page. Output: ak.capability.v1 with the card fields, parameters, versions, terms, evidence, trust and links.

ParametersJSON Schema
NameRequiredDescriptionDefault
capabilityYesCapability id (ak:publisher:name or ak:publisher:name:x.y.z), ak:// URI or slug.

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the bar is lower. The description adds useful content-level context by specifying the output resource type (ak.capability.v1) and the concrete fields returned, including the task-independent ak.offer.v1 offer. It stops short of noting pagination, caching or rate behavior, so it is good but not exhaustive.

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?

Front-loads what the card is, then usage, then exclusions, then input, then output — a logical order with no filler. It is dense to the point of being a run-on paragraph, but every clause carries information an agent needs.

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?

Although there is no output schema, the description compensates by naming the returned contract (ak.capability.v1) and its major field groups. Combined with fully covered input schema and rich annotations, an agent has everything needed to select and 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?

Schema coverage is 100%, so the accepted id/URI/slug formats are already documented, establishing a baseline of 3. The description goes beyond the schema by telling the agent where to source the value (from a search, an evaluation or a page), which is genuinely useful routing information not present in the structured field.

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?

Names a specific verb+resource (get a capability card) and enumerates exactly what the card contains: purpose, conditions, permissions, price, evidence, trust checks, links and an offer. It explicitly distinguishes itself from siblings by naming evaluate_capability and get_benchmark as the wrong choices.

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?

Provides explicit 'Use when' conditions (you can name a capability and want its facts, or want to check conditions an evaluation asked about) and 'Not for' exclusions that route to the correct alternatives (evaluate_capability for a task answer, get_benchmark for full records). No inference is required.

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

get_provenanceGet provenanceA
Read-onlyIdempotent
Inspect

Artifact hash, manifest hash, signed publisher and registry attestations and a transparency-log inclusion proof for one capability. Use when: you want to check that a package is the one the registry published and signed. Not for: benchmark results (get_benchmark) or the card (get_capability). Input: a capability id, ak:// URI or slug. Output: ak.provenance.v1 with the hashes, the attestations, an RFC 9162 inclusion proof against the signed tree head, the trust checks and the keys URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
capabilityYesCapability id (ak:publisher:name or ak:publisher:name:x.y.z), ak:// URI or slug.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world. The description goes beyond that by specifying the output shape (ak.provenance.v1, RFC 9162 inclusion proof against the signed tree head, trust checks, keys URL), which is valuable context not in the annotations. However, since there's no output schema, this relies on prose to convey return structure, which it does adequately.

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

Conciseness5/5

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

Front-loaded with the output first, then usage, then exclusions, then input/output. Every clause earns its place; no redundancy.

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?

Since there's no output schema, the description helpfully names the return format and key fields. Covers input formats and behavioral expectations. Minor gap: doesn't state what happens if the proof fails or if the capability is unknown, but overall complete for a read-only retrieval tool.

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

Parameters3/5

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

Schema coverage is 100%, so the schema already fully documents the single 'capability' parameter including accepted formats. The description repeats this ('a capability id, ak:// URI or slug') without adding syntax or validation details beyond the schema. Baseline 3 is correct.

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+resource (retrieves provenance for one capability) and enumerates what it returns: artifact hash, manifest hash, signed publisher and registry attestations, and a transparency-log inclusion proof. Distinguishes itself from siblings by explicitly ruling out get_benchmark and get_capability.

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?

Has explicit 'Use when' (verifying a package matches what the registry published and signed) and 'Not for' clauses naming the alternative tools get_benchmark and get_capability. Nothing is left to inference.

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

get_quoteGet a price quoteA
Read-only
Inspect

A signed 15-minute price quote with the hosted checkout link. It charges nothing; a purchase requires operator approval in the hosted checkout. Use when: your operator wants the price and the checkout link of a capability that is for sale, for example after an evaluation answered recommend. Not for: deciding whether a capability is worth it (evaluate_capability); a free capability needs no quote. Input: the capability id and, if you evaluated first, the evaluation_id, which links the quote to that evaluation. Output: a quote_id and signed claims bound to the capability version, price, currency, terms and expiry, the checkout link and the unlock request; the price comes from the registry record only.

ParametersJSON Schema
NameRequiredDescriptionDefault
capabilityYesCapability id (ak:publisher:name or ak:publisher:name:x.y.z), ak:// URI or slug.
evaluation_idNoThe evaluation_id from evaluate_capability, if you evaluated first.

TDQS

A4.7/5.0
Behavior5/5

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

Annotations declare readOnlyHint=true and destructiveHint=false, so safety is already covered. The description adds rich context beyond annotations: 'It charges nothing; a purchase requires operator approval in the hosted checkout', the 15-minute expiry, signed claims bound to capability version, and that the price comes from the registry only. 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?

Front-loaded with the core purpose, then Use when / Not for / Input / Output in a compact structure with zero waste.

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 no output schema, the description covers the return values (quote_id, signed claims, checkout link, unlock request). Combined with the behavioral and usage context, an agent has everything needed to call this 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 coverage is 100%, so the schema already documents both parameters including patterns. The description adds the semantic link (evaluation_id links quote to evaluation) but nothing about syntax or format beyond the schema. Baseline 3 is appropriate.

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

Purpose5/5

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

States a specific verb+resource with scope: 'signed 15-minute price quote with the hosted checkout link'. It names both the input and output artifacts, and distinguishes itself from siblings like evaluate_capability.

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?

Explicit 'Use when' and 'Not for' clauses name alternatives (evaluate_capability) and the condition that selects them, including the free-capability case. This is the rare definition that fully routes the agent.

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

report_outcomeReport an outcomeAInspect

Report how a capability worked for you. Stored as AGENT REPORTED; it never changes evidence labels, trust or ranking. Only the listed fields are accepted; no task text is kept. Use when: you ran a capability, or decided not to, and can say whether the task succeeded. Not for: questions about a capability (get_capability, get_benchmark). Input: the capability id and success; add evaluation_id or purchase_ref to link the report, the optional token, tool-call, latency and cost counts, and failure_reason only with success false. Output: whether the report was stored, its label and, for a failed paid capability, the remedy policy.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoThe model you run on, e.g. claude-sonnet-5. Savings are reported only for measured models.
successYesWhether the task reached its goal.
cost_usdNoWhat the run cost you in USD.
tokens_inNoInput tokens the run used.
capabilityYesCapability id (ak:publisher:name or ak:publisher:name:x.y.z), ak:// URI or slug.
latency_msNoWall-clock time of the run in milliseconds.
tokens_outNoOutput tokens the run used.
tool_callsNoTool calls the run made.
purchase_refNoThe purchase_ref from unlock_capability, if you bought the capability.
evaluation_idNoThe evaluation_id from evaluate_capability, if you evaluated first.
failure_reasonNoOnly with success false.
used_capabilityNoWhether the capability was used in this run; false reports a run done without it.
baseline_cost_estimate_usdNoWhat one run of this task costs you without the capability, in USD.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, so mutation and safety are largely covered; the description goes further by disclosing the storage label (AGENT REPORTED), that the report cannot alter trust/ranking, and that no task text is retained. It does not address the non-idempotent behavior (duplicate submissions) or any auth requirements, which is the remaining gap.

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

Conciseness5/5

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

Front-loads the core semantics, then uses labeled 'Use when / Not for / Input / Output' segments. Every sentence carries information; there is no filler or repetition of the name.

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 no output schema, the description compensates by describing the return (stored status, label, remedy policy for a failed paid capability), and the write semantics plus data-retention policy are stated. Minor gaps remain around idempotency/duplicate reports, but nothing blocks a correct call.

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% for 13 parameters, so the schema already documents every field. The description only groups them (required id/success; optional evaluation_id/purchase_ref links, token/tool-call/latency/cost counts, failure_reason with success false) without adding syntax, formats, or units 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?

States a specific verb and resource (report an outcome for a capability) and immediately scopes it: 'Stored as AGENT REPORTED; it never changes evidence labels, trust or ranking.' The 'Not for' clause names the sibling tools that cover capability questions, so an agent can distinguish this from get_capability/get_benchmark.

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?

Explicit 'Use when: you ran a capability, or decided not to, and can say whether the task succeeded' plus 'Not for: questions about a capability (get_capability, get_benchmark)'. Both the positive trigger and the exclusion with named alternatives are given, leaving nothing to inference.

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

resolve_taskIs there a capability worth using for this task?A
Read-onlyIdempotent
Inspect

Describe a task in plain words and get one compact answer: whether a registry capability is worth using for it, from registry-run benchmarks only, and the next step. Use when: you have a task and no capability name, and want one decision word (use, do_not_use, use_free_alternative, insufficient_evidence, blocked_by_constraints or no_match) with its reason codes. Not for: the full arithmetic, the offer and the operator message (evaluate_capability with the same inputs), a plain list of matches (search_capabilities) or a capability you can already name (get_capability). Input: task, plus optional model, expected_runs, baseline_cost_estimate_usd, context and constraints; any other field is refused with the allowed list. Output: ak.resolve.v1 with decision, capability id, reason codes, the measured saving per run with its interval or null, the estimate at your own baseline with its break-even runs or null, confidence, evidence label, price, free alternatives, next action, evaluation_id and the tool that gives the detail. do_not_use and no_match are normal answers.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYesPlain description of the task you are about to do (at most 4000 characters).
modelNoThe model you run on, e.g. claude-sonnet-5. Savings are reported only for measured models.
contextNoFacts about your situation, keyed by the capability's parameter names (e.g. log_lines).
constraintsNoLimits you set for the answer; a capability outside them is reported as blocked, with the reason code.
expected_runsNoHow many times you expect to perform this kind of task.
baseline_cost_estimate_usdNoWhat one run of this task costs you today without the capability, in USD.

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/closed-world, so the safety profile is covered. The description adds real behavioral context beyond them: evidence is 'from registry-run benchmarks only', savings exist only for measured models, unknown fields are refused with the allowed list, and do_not_use/no_match are normal answers rather than errors. It stops short of stating latency, rate limits, or caching, but for a read-only resolver that is minor.

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?

Front-loaded with purpose and decision vocabulary, then when-to-use, exclusions, input and output in a fixed order; every clause carries information. It is dense and long for one paragraph, but little of it is waste.

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?

No output schema exists, yet the description enumerates the ak.resolve.v1 payload (decision, capability id, reason codes, measured saving with interval, baseline estimate with break-even, confidence, evidence label, price, free alternatives, next action, evaluation_id, detail tool). Combined with the named inputs and constraint semantics, an agent has everything needed to call and interpret it.

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 the enforcement behavior that the schema only implies ('any other field is refused with the allowed list') and groups the inputs as task + optional model/expected_runs/baseline_cost_estimate_usd/context/constraints. It doesn't add syntax beyond the schema, so it is a modest step above baseline.

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+resource: turn a plain-language task into a single decision word about whether a registry capability is worth using. It names the exact answer vocabulary (use, do_not_use, use_free_alternative, insufficient_evidence, blocked_by_constraints, no_match), so an agent can tell it apart from search_capabilities or evaluate_capability without opening a 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?

Explicit 'Use when' clause (you have a task and no capability name, and want one decision word) plus an explicit 'Not for' clause naming three alternatives and the condition that selects each: evaluate_capability for the full arithmetic, search_capabilities for a plain list, get_capability when the capability is already named.

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

search_capabilitiesSearch capabilitiesA
Read-onlyIdempotent
Inspect

Search capability names, summaries, tasks and use-when conditions by keywords, ranked by lexical relevance only, never by payment. Use when: you want to see which capabilities exist for a topic, or you know part of a name. Not for: deciding whether one fits your task (resolve_task, or evaluate_capability for the full arithmetic) or reading a capability you can already name (get_capability). Input: search words, at most 500 characters; no earlier call is needed. Output: ak.search.v1 with id, name, summary, relevance, state, price and the strongest evidence label of each result, and no decision.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoHow many results to return, from 1 to 50 (default 10).
queryYesSearch words (at most 500 characters).

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so the bar is lower; the description still adds real value by disclosing that results are ranked by lexical relevance only, never by payment, and that an earlier call is not required. It also pre-empts a likely misreading by stating the output is 'no decision'. It does not discuss pagination or result-set limits beyond the schema.

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?

Dense but tightly organized into purpose, Use when, Not for, Input, and Output blocks, with the core action front-loaded. A few phrases are redundant with the schema (the 500-character restatement), but nothing is truly wasted.

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

Completeness5/5

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

With no output schema present, the description compensates by naming the return type (ak.search.v1) and its fields, and it closes the loop by stating no decision is produced. Combined with the explicit routing guidance, an agent has everything needed to select and invoke this 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 query and limit are already documented in structured form; the description largely restates the 500-character query constraint and adds only the useful note that no prior call is needed. The limit parameter is not mentioned in the description at all. Baseline 3 is appropriate when the schema carries the parameter burden.

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 (Search) and resource (capability names, summaries, tasks, use-when conditions) with a stated ranking rule. It explicitly distinguishes itself from named siblings get_capability, resolve_task, and evaluate_capability, so an agent can route without opening any 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?

Contains explicit 'Use when:' and 'Not for:' clauses, each with the alternative tool to call instead (resolve_task, evaluate_capability, get_capability). The condition that selects this tool versus its siblings is fully spelled out.

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

unlock_capabilityUnlock a purchased capabilityA
Idempotent
Inspect

Exchange the license key from the checkout (a purchase requires operator approval) for a signed entitlement and a download link that lasts at most 15 minutes. How the key is handled: the privacy page at /legal/privacy/. Repeating it with the same key is safe and never charges. Use when: your operator completed the hosted checkout and gave you the license key. Not for: a price or a checkout link (get_quote); a free capability downloads from its page. Input: the capability id and the license key, plus quote_id and evaluation_id when you have them. Output: a signed entitlement, a purchase_ref for report_outcome and the download link.

ParametersJSON Schema
NameRequiredDescriptionDefault
quote_idNoThe quote_id of the quote the purchase followed, if any (links the records; never changes the price).
capabilityYesCapability id (ak:publisher:name or ak:publisher:name:x.y.z), ak:// URI or slug.
license_keyYesLicense key from the checkout.
evaluation_idNoThe evaluation_id from evaluate_capability, if you evaluated first.

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond the annotations: states the purchase requires operator approval, that the download link expires in at most 15 minutes, and that repeating with the same key is safe and never charges (a richer, more actionable statement of idempotency than idempotentHint alone). It also explains key handling via the privacy page and that purchase_ref feeds report_outcome.

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?

Front-loads the core exchange action, then scopes usage and I/O in clearly separated clauses. Slightly dense, with one awkward fragment ('How the key is handled: the privacy page at /legal/privacy/.') and a redundant restatement of input already in the schema, but overall 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 no output schema, the description names the return payload (signed entitlement, purchase_ref, download link) and its expiry, plus the approval prerequisite and idempotency behavior. An agent has everything needed to call it correctly in sequence.

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 usage guidance beyond the schema by clarifying that quote_id and evaluation_id are supplied 'when you have them' and linking them to prior steps (quote, evaluation). This adds conditional/relational meaning the flat schema does not.

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 precise verb+resource: exchanging a checkout license key for a signed entitlement and a time-limited download link. It also explicitly contrasts itself with get_quote and free capability downloads, so an agent can distinguish it from siblings.

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?

Contains explicit 'Use when:' (operator completed hosted checkout and gave the license key) and 'Not for:' clauses naming the alternative tool (get_quote) and the free-download path. Nothing about when to invoke is left to inference.

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. 5 tool updates
    • Changedcompare_capabilities4 fields changed
      • addedInput schema / properties / capabilities / description
        Added value: +"Two to five capabilities to compare, each as an id, ak:// URI or slug."
      • addedInput schema / properties / constraints / description
        Added value: +"Limits you set for the answer; a capability outside them is reported as blocked, with the reason code."
      • addedInput schema / properties / constraints / properties / max_cost_usd / description
        Added value: +"The highest price in USD you accept; a capability priced above it is blocked (over_max_cost)."
      • addedInput schema / properties / constraints / properties / minimum_confidence / description
        Added value: +"The lowest confidence in the measured saving you accept, from 0.5 to 0.999 (default 0.9); below it the answer is blocked (below_minimum_confidence)."
    • Changedevaluate_capability8 fields changed
      • addedInput schema / properties / budget_policy / properties / absolute_purchase_limit_usd / description
        Added value: +"The highest price in USD for one purchase; a price above it is outside the policy."
      • addedInput schema / properties / budget_policy / properties / auto_purchase / description
        Added value: +"When your operator allows a purchase without asking first: enabled (true or false), max_price_usd, and minimum_expected_roi (expected net saving divided by the price). The answer says whether the policy would allow it; these tools never charge."
      • addedInput schema / properties / budget_policy / properties / human_approval_required / description
        Added value: +"above_usd: a price above this amount in USD needs your operator's approval even where auto_purchase is enabled."
      • addedInput schema / properties / budget_policy / properties / monthly_budget_usd / description
        Added value: +"Your operator's budget for this month in USD."
      • addedInput schema / properties / budget_policy / properties / spent_this_month_usd / description
        Added value: +"What is already spent of that budget this month in USD (0 when left out)."
      • addedInput schema / properties / constraints / description
        Added value: +"Limits you set for the answer; a capability outside them is reported as blocked, with the reason code."
      • addedInput schema / properties / constraints / properties / max_cost_usd / description
        Added value: +"The highest price in USD you accept; a capability priced above it is blocked (over_max_cost)."
      • addedInput schema / properties / constraints / properties / minimum_confidence / description
        Added value: +"The lowest confidence in the measured saving you accept, from 0.5 to 0.999 (default 0.9); below it the answer is blocked (below_minimum_confidence)."
    • Changedreport_outcome8 fields changed
      • addedInput schema / properties / baseline_cost_estimate_usd / description
        Added value: +"What one run of this task costs you without the capability, in USD."
      • addedInput schema / properties / cost_usd / description
        Added value: +"What the run cost you in USD."
      • addedInput schema / properties / latency_ms / description
        Added value: +"Wall-clock time of the run in milliseconds."
      • addedInput schema / properties / success / description
        Added value: +"Whether the task reached its goal."
      • addedInput schema / properties / tokens_in / description
        Added value: +"Input tokens the run used."
      • addedInput schema / properties / tokens_out / description
        Added value: +"Output tokens the run used."
      • addedInput schema / properties / tool_calls / description
        Added value: +"Tool calls the run made."
      • addedInput schema / properties / used_capability / description
        Added value: +"Whether the capability was used in this run; false reports a run done without it."
    • Changedresolve_task3 fields changed
      • addedInput schema / properties / constraints / description
        Added value: +"Limits you set for the answer; a capability outside them is reported as blocked, with the reason code."
      • addedInput schema / properties / constraints / properties / max_cost_usd / description
        Added value: +"The highest price in USD you accept; a capability priced above it is blocked (over_max_cost)."
      • addedInput schema / properties / constraints / properties / minimum_confidence / description
        Added value: +"The lowest confidence in the measured saving you accept, from 0.5 to 0.999 (default 0.9); below it the answer is blocked (below_minimum_confidence)."
    • Changedsearch_capabilities1 field changed
      • addedInput schema / properties / limit / description
        Added value: +"How many results to return, from 1 to 50 (default 10)."
  2. 1 tool update
    • Addedresolve_task
  3. 10 tool updates
    • First observedcompare_capabilities
    • First observedestimate_roi
    • First observedevaluate_capability
    • First observedget_benchmark
    • First observedget_capability
    • First observedget_provenance
    • First observedget_quote
    • First observedreport_outcome
    • First observedsearch_capabilities
    • First observedunlock_capability

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to intelligently match tasks to skills through semantic embeddings, track skill effectiveness, detect skill gaps, and discover new skills from external sources.
    Apache 2.0
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI agents to manage, search, plan, and execute reusable skills while automatically enforcing always-on coding and reasoning guidelines. It provides workflow orchestration, permission-controlled execution, dynamic skill registration, and feedback-based ranking.
    9
    8 npm
    1
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources