Skip to main content
Glama

atlas_where

Read-onlyIdempotent

Finds the best-matching documentation section for a topic and returns a compact pointer with path and line, without loading full text. Use it to answer where a topic is documented.

Instructions

Locate the best-matching documentation section for a topic and return its pointer (~60 tokens) without full text.

Use this tool FIRST for 'where is X documented?', 'which file covers Y?', or 'which section defines Z?'.
Follow up with `atlas_read(anchor)` only if you need the section body, or fall back to `atlas_search`
if you need multiple ranked snippets across documents.

Behavior & Output:
- Read-only, deterministic BM25 lookup against the local SQLite FTS5 index (auto-refreshed before query).
- Returns a JSON string with `{found: true, anchor, heading, path, line, alternatives}` when matched,
  or `{found: false, hint}` when no section matches.

Input Schema

NameRequiredDescriptionDefault
topicYesNatural-language question or topic keywords to locate in the project documentation (e.g. 'damage model', 'Where is dialogue branching described?'). Supports English and German terms with automatic stop-word removal and umlaut folding.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.1.1
    • addedInput schema / properties / topic / description
      Added value: +"Natural-language question or topic keywords to locate in the project documentation (e.g. 'damage model', 'Where is dialogue branching described?'). Supports English and German terms with automatic stop-word removal and umlaut folding."
    • addedInput schema / properties / topic / minLength
      Added value: +1
  2. First observedv0.1.0

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds real value beyond that: deterministic BM25 ranking against a local SQLite FTS5 index that auto-refreshes before the query, which explains freshness and ranking behavior. It also restates the return payload (found/anchor/heading/path/line/alternatives, or found/hint), but an output schema already exists, so that portion is duplication rather than added disclosure.

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?

Well front-loaded: purpose in sentence one, routing in the next two, behavior in a labeled block. The 'Behavior & Output' return-shape lines partly duplicate the output schema and could be trimmed, but nothing else is wasteful.

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 single-parameter lookup tool, the definition covers purpose, selection criteria, alternatives, index/ranking behavior, freshness, and no-match handling. With an output schema present, return values need no further explanation, so there is no meaningful gap for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the single `topic` param is documented there with examples, language support, stop-word removal, and umlaut folding. The description adds nothing about the parameter beyond the schema, so the baseline 3 applies.

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?

The first sentence names a specific verb (locate) and resource (documentation section) and states the output shape and cost (~60 tokens, pointer only, no full text). It explicitly distinguishes itself from siblings atlas_read and atlas_search by role, so an agent can select it 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 routing: use FIRST for 'where is X documented?', 'which file covers Y?', 'which section defines Z?'. It then names both alternatives with the exact conditions that select them — atlas_read(anchor) for the body, atlas_search for multiple ranked snippets.

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