Skip to main content
Glama

Compare APIs in a category

compare_category
Read-only

Call this to weigh the options in one area instead of taking find_best's single recommendation, or when the user asks "which is the cheapest / most reliable X API?". Returns every tracked API in the category ranked by score, with price per call, reliability, usage and any warnings. Category ids: web-search, web-extraction, llm-inference, crypto-prices, onchain-data, enrichment, weather, news, social-media, jobs, ecommerce, maps-places, translation, messaging, travel, stocks, pdf-generation, captcha-solving, sports-data. Narrow by platform or task ids from list_categories. Free, read-only and quick: it never calls or pays the APIs it describes.

Input Schema

NameRequiredDescriptionDefault
railNoPaid rails to include, e.g. ["x402"] for pay-per-call only (default both)
taskNoSub-category task ids, any of, e.g. ["comments"]. See list_categories
limitNo
recentNotrue = only endpoints checked in the last 7 days
categoryYesCategory id, e.g. 'web-search'
platformNoSub-category platform ids, any of, e.g. ["instagram","tiktok"]. See list_categories
hide_flagsNoWarnings to leave out, e.g. ["wallet-mismatch", "few-repeat-buyers"]
max_price_usdNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / platform
      Added value: +{
      +  "description": "Sub-category platform ids, any of, e.g. [\"instagram\",\"tiktok\"]. See list_categories",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / rail
      Added value: +{
      +  "description": "Paid rails to include, e.g. [\"x402\"] for pay-per-call only (default both)",
      +  "items": {
      +    "enum": [
      +      "x402",
      +      "apify"
      +    ],
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / task
      Added value: +{
      +  "description": "Sub-category task ids, any of, e.g. [\"comments\"]. See list_categories",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
  2. First observed

TDQS

A4.6/5.0
Behavior4/5

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

The description adds useful behavior beyond the readOnlyHint/openWorldHint annotations: it is free, read-only, quick, and never calls or pays the APIs it describes. It also summarizes the return contents, though it does not describe pagination or how limit interacts with the claim of returning every tracked API.

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 front-loaded with the primary use case and alternative tool, then moves to return values, valid categories, narrowing guidance and cost/safety behavior. The long category list is practical because category is required and the schema does not enumerate valid values.

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 no output schema and only basic annotations, the description does a good job explaining what is returned and why to call it. It is not fully complete because it omits several optional filters and their effects, but that gap is partly mitigated by the schema descriptions.

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 75%, so the schema already documents several filters. The description adds meaningful semantics by enumerating valid category ids and explaining that platform/task ids should come from list_categories, though it does not cover limit, max_price_usd, recent, rail or hide_flags.

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: compare APIs in a category and return every tracked API ranked by score with price, reliability, usage and warnings. It also explicitly distinguishes this from find_best's single recommendation, so an agent can identify the tool's role without opening the 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 clear usage contexts: weigh options in one area instead of taking find_best's single recommendation, or when the user asks which API is cheapest or most reliable. It names the alternative tool and points to list_categories for platform/task ids, leaving little inference needed.

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