Skip to main content
Glama

Search Apis

search_apis
Read-onlyIdempotent

Search the APIs.guru directory of 2,500+ public APIs by free-text query. Matches against the API's name/key, its title, description, and categories. Returns a list of matching APIs each with name (the directory key, e.g. "stripe.com" or "googleapis.com:calendar"), title, truncated description, provider, categories, preferred version, last-updated date, docs link, and OpenAPI/Swagger spec URL. Use this to discover which public APIs exist for a given domain (payments, weather, maps, etc.) and to get the exact name to pass to get_api.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMax results to return (default 20).
queryYesFree-text search, e.g. "payments", "google calendar", "weather forecast". Multi-word queries are matched word by word in any order, not as an exact phrase; results are ranked by how many of your words matched and where (a match on the API's name outranks one in its description). Fewer, more distinctive words rank better.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / query / description
      Previous value: -"Free-text search term, e.g. \"payments\", \"calendar\", \"weather\"."New value: +"Free-text search, e.g. \"payments\", \"google calendar\", \"weather forecast\". Multi-word queries are matched word by word in any order, not as an exact phrase; results are ranked by how many of your words matched and where (a match on the API's name outranks one in its description). Fewer, more distinctive words rank better."
  2. Changed1 schema field changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "query": "payments"
      +  },
      +  {
      +    "limit": 10,
      +    "query": "weather forecast"
      +  }
      +]
  3. First observed

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, openWorldHint=true, so the safety profile is well covered. The description adds useful behavioral detail beyond annotations: multi-word queries are matched word-by-word not as exact phrases, ranking prioritizes name matches over description matches. It also reveals the truncated-description and last-updated-date return behavior.

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?

Compact, front-loaded description. First sentence states purpose immediately. Second sentence lists return fields efficiently. Third sentence gives usage directive. All sentences earn their place; no fluff. Slightly longer than strictly necessary due to detailed return-field list, but each item is informative.

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 search/discovery tool, the description is complete: covers what it searches, matching behavior, return fields, and how it connects to get_api. No output schema exists but the description enumerates all returned fields explicitly. The matching/ranking algorithm disclosure compensates well for lack of output schema details.

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 both parameters are documented in the schema. The description adds meaningful value beyond the schema: it explains the query matching algorithm in detail (word-by-word matching, ranking by word count and match location) and provides concrete examples. The limit parameter defaults to 20, which is stated in schema; the description reinforces search semantics.

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?

Very specific verb+resource: "Search the APIs.guru directory of 2,500+ public APIs by free-text query." Clearly states what it searches, what it matches against (name/key, title, description, categories), and what it returns. Clearly distinguishes from siblings like get_api (which retrieves a specific API) by noting it outputs the exact name to pass to get_api.

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?

Description explicitly states when to use: "Use this to discover which public APIs exist for a given domain... and to get the exact name to pass to get_api." While it doesn't explicitly name alternatives or say when NOT to use it, it clearly demarcates this tool's role relative to get_api, giving strong usage context.

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.