Skip to main content
Glama
chaos-xxl

Protocol Chaos reference server

by chaos-xxl

entity_search

Read-only

Find people, animals, things, or places by name, alias, or statement text before creating a new one, so duplicates are avoided. Omit query to list all entities.

Instructions

Find the people, animals, things and places the user refers to (Entities), for example before creating one, so that one does not become two. Every Entity whose name or an alias equals the query (ignoring case) comes first, then names and aliases that start with or contain it, then Entities whose Statements contain it. Omit query to list every Entity; filter by kind. Returns {entities}: cards {id, kind, name, aliases?, owner?, version, statements}, where statements counts the Statements that are not outdated.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kindNoperson, animal, thing or place (other kinds are kept as written).
limitNo
queryNoA name, alias or words to look for.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.1

TDQS

A4.6/5.0
Behavior5/5

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

With only readOnlyHint=true in annotations, the description carries the behavioral load and does: it discloses the result ranking tiers (exact name/alias match, then prefix/contains, then statement matches, case-insensitive), the no-query listing default, and the returned card contract including that 'statements' counts only non-outdated statements. That is substantial disclosure beyond the annotations.

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?

Purpose is front-loaded in the first clause, followed by ranking, default scope, and return shape in a single dense block with no filler sentences. The length is justified because there is no output schema to absorb the return contract.

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 read-only, zero-required-parameter search with no output schema, the description covers ranking, default scope, and return fields well enough to call correctly. It stops short of documenting the limit/pagination behavior, so it is not fully complete.

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 67%; kind and query are documented in-schema, and the description adds semantics the schema cannot express, namely that omitting query lists everything and that match ordering depends on the query. The limit parameter is left unexplained in both places, which keeps this from a 5.

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?

Names a specific verb and resource ('Find the people, animals, things and places ... (Entities)') and frames the resource in domain terms an agent can map to the sibling entity_create/entity_get. The dedupe rationale ('so that one does not become two') makes its role relative to entity_create unmistakable.

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 a concrete when-to-use trigger ('before creating one') and states what happens when the query is omitted versus supplied. It does not explicitly name the alternative (entity_get for direct ID lookup), so an agent must infer the boundary, but the usage context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.