Skip to main content
Glama

Search castles by name

search_castles

Search the atlas’s 9,902 castles, fortresses, palaces and ruins by name (accent- and case-insensitive substring match). Optionally filter by country (name or ISO code) and category. Results come best-match-first, then by fame; each has coordinates, founding century, fame rank and links to its atlas page and Wikipedia. If nothing matches, retry with a shorter fragment of the name.

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": {
      "query": "<query>"
    },
    "name": "search_castles"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoMax results (default 10)
queryYesName or part of a name, e.g. "neuschwanstein" or "himeji"
countryNoCountry name or 2-letter ISO code (optional)
categoryNoLandmark type (optional)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does substantial work: it discloses index size (9,902), matching behavior, result ordering (best-match then fame), the fields returned per result, and a zero-result strategy. Undisclosed behavior is minor — nothing about pagination beyond limit or whether the operation is strictly read-only, though 'search' implies it.

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?

Three sentences, zero waste, and front-loaded: what is searched and how it matches comes first, then filters, then ordering and return shape, then the empty-result fallback. Every sentence contributes information an agent would otherwise have to guess.

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?

There is no output schema, so the description correctly spells out what each result contains (coordinates, founding century, fame rank, atlas and Wikipedia links). Combined with the ordering and retry guidance, this is nearly complete for a read-only search tool; only pagination behavior is left implicit.

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 a bump by adding matching semantics for query (accent- and case-insensitive substring) that the schema's example alone does not convey, and by tying country to 'name or ISO code'. The limit parameter is left entirely to the schema (default 10, max 50), which is acceptable but not additive.

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 and resource ('Search the atlas's 9,902 castles, fortresses, palaces and ruins by name') plus the match semantics (accent- and case-insensitive substring). It never names a sibling such as get_castle or castles_near, so the agent must infer routing from scope alone rather than from an explicit contrast.

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?

Gives clear context — name search with optional country and category filters — and a concrete recovery step when results are empty ('retry with a shorter fragment of the name'). It stops short of saying when to prefer this over get_castle (exact lookup) or castles_near (proximity), so it lacks explicit exclusions or alternatives.

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.