Skip to main content
Glama

Cito API

search_entities

Read-only

Browse/search teams, players, tournaments, events, fighters with type filter and pagination.

When to use:

  • Typeahead / pickers

  • "List teams matching…"

  • Exploring entities without committing to one ID

  • UFC fighter lookup by name/nickname (uses /ufc/search + client re-rank)

Prefer over resolve_entity when the user wants a list. Prefer resolve_entity when chaining one name into a profile tool.

Do not use when: fetching a known entity profile — use team_profile or player_profile.

UFC: with q set, results are ranked (exact name > multi-token match > nickname). "Jon Jones" should return jon-jones first — never the generic P4P list.

Parallel-safe: yes. Upstream cost: 1–3. Example: { "game": "ufc", "q": "Jon Jones", "type": "fighter", "limit": 10 }

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "game": "<game>"
    },
    "name": "search_entities"
  }
}

Input Schema

NameRequiredDescriptionDefault
qNoOptional search text.
gameYesGame title: lol | cs2 | dota2 | cod | ufc | tennis | valorant. Example: "cs2".
typeNoEntity type filter. Example: "team".any
limitNoMax items to return (default 20, max 50). Example: 20.
cursorNoOpaque cursor from pagination.nextCursor only.
activeOnlyNoPrefer active entities when the API supports it.

Output Schema

NameRequiredDescriptionDefault
okYestrue if the tool succeeded
dataNoResult payload when ok is true; null on error
metaYes
errorNo
partialNo
paginationNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / game / description
      Previous value: -"Game title: lol | cs2 | dota2 | cod | ufc | tennis. Example: \"cs2\"."New value: +"Game title: lol | cs2 | dota2 | cod | ufc | tennis | valorant. Example: \"cs2\"."
    • changedInput schema / properties / game / enum
      Previous value: -[
      -  "lol",
      -  "cs2",
      -  "dota2",
      -  "cod",
      -  "ufc",
      -  "tennis"
      -]New value: +[
      +  "lol",
      +  "cs2",
      +  "dota2",
      +  "cod",
      +  "ufc",
      +  "tennis",
      +  "valorant"
      +]
  2. First observed

TDQS

A4.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, destructiveHint=false, so the safety profile is covered; the description adds genuinely new behavior: parallel-safety, an upstream cost of 1-3 calls, and the UFC-specific client re-rank ordering (exact name > multi-token > nickname). It does not cover rate limits or error/degradation behavior, so it is good but not exhaustive beyond the annotated baseline.

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?

Sectioned with headers, front-loaded with purpose before rules, and every block (when-to-use, prefer/avoid, UFC ranking note, example) carries distinct information. Slightly verbose in places — the UFC ranking rule is restated across the 'when to use' bullet and the standalone block — which keeps it from a 5.

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 6 parameters, a required game, 100% schema coverage, and an output schema present, the description supplies exactly the missing pieces: selection guidance, alternatives, ranking semantics, parallel safety, and cost. Return-value documentation is correctly delegated to the output schema.

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 earns above baseline by explaining that 'q' triggers ranked UFC results and that 'Jon Jones' should return jon-jones first rather than a generic P4P list, and by showing a concrete combined-parameter example. It does not add meaning for cursor or activeOnly 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?

States a specific verb and resource set ('Browse/search teams, players, tournaments, events, fighters') plus a scope qualifier ('with type filter and pagination'). It explicitly distinguishes itself from resolve_entity, team_profile, and player_profile, 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?

Provides explicit when-to-use bullets (typeahead, list queries, exploring without committing to an ID), explicit when-not ('fetching a known entity profile'), and names the two alternatives with the exact condition that selects each ('user wants a list' vs 'chaining one name into a profile tool').

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