Skip to main content
Glama

SqueezeOS — Institutional AI Market Intelligence

Discover Capabilities

discover_capabilities
Read-onlyIdempotent

Search the live SqueezeOS capability inventory by keyword. Use this when an agent needs to find which SML APIs exist for a task before calling anything. Returns a ranked list of matching capabilities with endpoint and payment metadata; lexical mode is always available and unified mode may add evidence-backed semantic context without fabricating scores. Read-only and idempotent; no side effects. On error, returns a structured error instead of results. For example, query 'stock quotes' to discover the quote endpoints and their x402 prices.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeNo'lexical' for keyword search (always available) or 'unified' to add evidence-backed semantic context. Default 'lexical'.lexical
limitNoMax results to return, 1-50. Default 10.
queryYesNatural-language search text, 1-500 characters.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
okNoWhether the upstream HTTP status is 2xx; not settlement proof.
bodyNoUnmodified upstream JSON, or bounded response text. Consult that capability's live schema.
errorNo
chargedNoPresent on local/transport failures; these do not establish an upstream charge.
messageNo
auto_spentNo
status_codeNoObserved upstream HTTP status, or null when no response was obtained.
substitutedNo
content_typeNo
payment_requiredNoObserved PAYMENT-REQUIRED header; a challenge does not prove payment.
payment_responseNoObserved PAYMENT-RESPONSE header. Assess it together with accepted delivery.
caller_supplied_authorizationNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "anyOf": [
      +    {
      +      "required": [
      +        "ok",
      +        "status_code"
      +      ]
      +    },
      +    {
      +      "required": [
      +        "error"
      +      ]
      +    }
      +  ],
      +  "description": "Canonical REST response envelope, or a local/transport rejection. Upstream data remains in body and is defined by the live capability schema.",
      +  "properties": {
      +    "auto_spent": {
      +      "const": false
      +    },
      +    "body": {
      +      "description": "Unmodified upstream JSON, or bounded response text. Consult that capability's live schema."
      +    },
      +    "caller_supplied_authorization": {
      +      "type": "boolean"
      +    },
      +    "charged": {
      +      "const": false,
      +      "description": "Present on local/transport failures; these do not establish an upstream charge."
      +    },
      +    "content_type": {
      +      "type": "string"
      +    },
      +    "error": {
      +      "type": "string"
      +    },
      +    "message": {
      +      "type": "string"
      +    },
      +    "ok": {
      +      "description": "Whether the upstream HTTP status is 2xx; not settlement proof.",
      +      "type": "boolean"
      +    },
      +    "payment_required": {
      +      "description": "Observed PAYMENT-REQUIRED header; a challenge does not prove payment.",
      +      "type": "string"
      +    },
      +    "payment_response": {
      +      "description": "Observed PAYMENT-RESPONSE header. Assess it together with accepted delivery.",
      +      "type": "string"
      +    },
      +    "status_code": {
      +      "description": "Observed upstream HTTP status, or null when no response was obtained.",
      +      "maximum": 599,
      +      "minimum": 100,
      +      "type": [
      +        "integer",
      +        "null"
      +      ]
      +    },
      +    "substituted": {
      +      "const": false
      +    }
      +  },
      +  "type": "object"
      +}
  2. Changed3 schema fields changed
    • addedInput schema / properties / limit / description
      Added value: +"Max results to return, 1-50. Default 10."
    • addedInput schema / properties / mode / description
      Added value: +"'lexical' for keyword search (always available) or 'unified' to add evidence-backed semantic context. Default 'lexical'."
    • addedInput schema / properties / query / description
      Added value: +"Natural-language search text, 1-500 characters."
  3. Added

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint, so the safety profile is covered; the description usefully adds mode behavior ('lexical mode is always available and unified mode may add evidence-backed semantic context without fabricating scores') and error semantics ('returns a structured error instead of results'). The clause 'Read-only and idempotent; no side effects' merely restates annotations, earning no extra credit, but the mode and error disclosure is genuine added value.

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?

Purpose is front-loaded in the first sentence, followed by usage, return shape, safety, error behavior and a worked example in a compact block. Nothing is off-topic, though the safety sentence duplicates annotation content and could be trimmed.

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, the description need not detail return structure, and it correctly focuses on routing (when to use), mode selection and failure behavior. The only gap is that the closest sibling discovery tools are never mentioned, leaving the agent to infer the boundary from the name alone.

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 nevertheless earns a bump by explaining the practical difference between the two mode values ('lexical' always available vs 'unified' adding evidence-backed semantic context without fabricating scores) and by giving a concrete query example with its x402 pricing angle. It adds meaning beyond the raw enum/default text.

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?

States a specific verb+resource: 'Search the live SqueezeOS capability inventory by keyword', plus the downstream intent ('find which SML APIs exist for a task'). It is clearly distinguishable from siblings like execute_capability or inspect_capability, but it never names the closest discovery alternatives (capability_manifest, recommend_capability), so the 5-level sibling differentiation bar is not met.

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?

'Use this when an agent needs to find which SML APIs exist for a task before calling anything' gives an explicit trigger condition. It does not state when NOT to use it or name recommend_capability/capability_manifest as alternatives, so it stops short of the 5-level when/when-not/alternative triad.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources