Skip to main content
Glama

Find Pokémon

pokeapi_find_pokemon
Read-onlyIdempotent

Filter Pokémon by generation, type, regional pokédex, or egg group. Returns names and Pokédex numbers suitable for follow-up pokeapi_get_pokemon calls. All filters are optional and combined with AND logic; query adds strict token matching on name. When no category filter is provided alongside query, returns an empty result — at least one categorical filter is required.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeNoType name (e.g. "fire", "psychic"). Filters to Pokémon of this type.
limitNoMaximum results to return. Positive integer; defaults to 50.
queryNoStrict token match on name. "chu" matches "pikachu" and "raichu". Case-insensitive.
offsetNoOffset into the filtered result set for pagination. Non-negative integer; defaults to 0.
pokedexNoRegional pokédex name (e.g. "kanto", "hoenn", "galar"). Filters to entries in that dex.
egg_groupNoEgg group name (e.g. "monster", "fairy", "dragon"). Filters to Pokémon in this egg group.
generationNoGeneration name (e.g. "generation-i", "generation-iii"). Filters to Pokémon introduced in this generation.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNoPresent when the call failed. Absent on success.
shownNoNumber of results in this response.
noticeNoGuidance when no Pokémon matched the filters.
pokemonNoMatching Pokémon entries.
totalCountNoTotal matching Pokémon before limit/offset.

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already carry readOnlyHint=true and idempotentHint=true, so the safe-read nature is established. The description adds substantial behavior beyond that: AND-combination of filters, strict token matching semantics for query, and the crucial edge case that a query without any categorical filter returns an empty result. These are exactly the non-obvious behaviors an agent must know to call the tool correctly.

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?

Four sentences with no filler; the core purpose is front-loaded and the critical behavioral details (AND logic, empty-result edge case) follow in order of importance. Every sentence carries information that isn't in the schema. Slightly denser than strictly necessary, but nothing is wasted.

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?

For a multi-filter search tool with an output schema present, the description is near-complete: it covers the filter surface, output contents, query semantics, and the required-filter edge case. Pagination is already documented in the schema via offset/limit descriptions, so nothing critical is missing. Only minor explicit alternative-routing guidance would push it to a 5.

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 adds value above the schema by explaining that filters combine with AND logic and that at least one categorical filter is required when using query — semantic constraints the schema's per-property descriptions do not convey. It also groups the filter parameters into named categories, aiding comprehension.

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 (filter) + resource (Pokémon) and enumerates the exact filter dimensions (generation, type, regional pokédex, egg group). Explicitly distinguishes itself from the sibling get_* tools by noting it returns names and Pokédex numbers for follow-up pokeapi_get_pokemon calls — an agent can tell this is the search tool versus the ID-retrieval tools without inspecting schemas.

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?

Provides clear context for when to use: 'Returns names and Pokédex numbers suitable for follow-up pokeapi_get_pokemon calls' signals a search-then-fetch workflow and implicitly contrasts with the sibling get_tools. It does not explicitly state the exclusion condition (e.g., 'use pokeapi_get_pokemon when you already know the name/ID'), so the routing guidance is good but not fully explicit.

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.

TDQS

A4.4/5.0
Disambiguation5/5

Each tool maps to a distinct entity—Pokémon, ability, item, move, nature, or type matchup—with no overlap. pokeapi_find_pokemon serves as a discovery filter, while pokeapi_get_pokemon retrieves full details, making their roles unambiguous.

Naming Consistency5/5

All tools share the consistent pokeapi_ prefix and follow a clear verb-noun pattern: get_<resource> for retrieval and find_pokemon for search. The convention is uniform and predictable across the entire set.

Tool Count5/5

With 7 tools, the server is well-scoped for a Pokémon data API. Each tool covers a core data type without redundancy, and the count is neither too sparse nor overwhelming for agents to navigate.

Completeness4/5

The set covers the primary Pokémon domain—individual Pokémon, abilities, items, moves, natures, and type matchups—plus discovery via filters. Minor gaps exist (e.g., no dedicated berry or encounter tools), but core workflows like team-building and battle analysis are fully supported.