Skip to main content
Glama

Symvanta

locate

Read-onlyIdempotent

Search/lookup. Pick a mode, or omit with a bare query to AUTO-ROUTE (text, then semantic on empty; response carries answered_by). Modes:

  • text (replaces grep): literal identifier/string, one row/occurrence. queries:[...] (<=10 terms) searches several in one call (and implies this mode when mode is omitted). pathsOnly:true = "filePath:lineNumber" only (~5x cheaper). maxPerFile caps rows/file (default 5). Empty carries did_you_mean; do NOT retry reworded, use semantic.

  • symbol: symbols by name/symbolPath in one repo. kind filters node kind, layer one layer. Tests last unless includeTests:true.

  • semantic: vector search for symbols similar to a natural-language query (names unknown).

  • file: fuzzy filename search (basename); filenames only.

  • config (replaces grep for env/config keys): key/env-var usages with nearest-symbol context; queries:[...] batches several keys.

  • codebase: cross-repo candidate scan; narrow with repositoryIds.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kindNomode:symbol. Filter by node kind.
modeNoForce a mode. Omit + bare query = AUTO-ROUTE (text, then semantic on empty). queries without a mode implies text.
nameNomode:file. Filename fragment; defaults to query.
layerNomode:symbol. Scope to one layer (e.g. browser, node, common, test).
limitNoMax results. Per-mode caps apply (text 200/20, symbol 20, semantic 5, file 10, config 20/20, codebase 20/10).
queryNoSearch term or NL query. Required for symbol/semantic/codebase; text/config: query or queries; file: query or name.
queriesNotext/config. Up to 10 terms; interleaved, deduped, each tagged matchedQuery. Without an explicit mode, implies mode:text. Accepts a JSON-array string.
feedbackNoOptional: report how a previous answer worked out; piggybacks on any call.
commitShaNoPin an indexed revision (text/symbol/semantic/config; ignored by file/codebase).
pathsOnlyNomode:text. "filePath:lineNumber" only, no snippets (~5x fewer tokens).
projectIdNoProject id from init/list_projects. Omit for the active project.
maxPerFileNomode:text. Cap occurrences/file (default 5; capped file carries moreInFileTruncated). 0 = uncapped.
pathPrefixNotext/symbol/config. Restrict to paths under this prefix.
repositoryNoSingle-repo scope (not codebase; that is project-wide, use repositoryIds).
includeTestsNotext/symbol/semantic. Include test files. Default false ranks them last; auto-on for test queries.
repositoryIdsNomode:codebase. Narrow to these repository ids; omit to scan all.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the readOnly/idempotent annotations, the description discloses substantial behavior: AUTO-ROUTE fallback logic, per-mode result caps, pathsOnly token savings, did_you_mean on empty results, tests-last behavior, moreInFileTruncated, and answered_by in responses. This gives an agent a realistic model of side effects and edge cases without contradicting 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?

The description is long but tightly organized by mode, with each line earning its place and critical routing rules front-loaded in the opening sentence. Despite covering six modes and many parameters, it avoids repetition and is scannable.

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 tool with 16 parameters, no required fields, no output schema, and six modes, the description covers invocation behavior, defaults, constraints, and important response markers. It still leaves some return-structure details unspecified, but the annotation safety profile and exhaustive parameter guidance make the tool safely callable.

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

Parameters5/5

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

Schema coverage is 100%, so the schema already documents every parameter, but the description adds high-value semantics: queries implies text mode, pathsOnly is ~5x cheaper, maxPerFile=0 means uncapped, limit has per-mode caps, and repositoryIds applies only to codebase mode. This meaningfully improves parameter understanding beyond the raw schema.

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?

The description clearly identifies a multi-mode search/lookup tool and specifies each mode (text, symbol, semantic, file, config, codebase), which is far more specific than the name alone. However, it never explicitly distinguishes locate from sibling tools like quick_lookup or find_node, so an agent must infer overlap from the mode descriptions.

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?

The description gives strong mode-selection guidance: use semantic when names are unknown, text for literal identifiers, file for fuzzy filenames, and config for env/config keys. It also warns not to retry reworded empty text queries and to switch to semantic instead. It does not explicitly compare locate with sibling tools, so cross-tool routing is left implicit.

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/5.0
Disambiguation4/5

Tools generally target distinct operations—repository attachment, symbol resolution, graph traversal, source access, indexing health—and the detailed routing notes reduce ambiguity. A few pairs still overlap in intent (quick_lookup vs locate symbol, context vs ask_codebase), so it is not perfectly unambiguous.

Naming Consistency3/5

All names are lowercase snake_case and readable, but the set mixes verb_noun patterns like add_repository and list_projects with single-word nouns/verbs like context, history, map, relate, and source, plus one acronym (adr). There is no predictable convention across the full surface, though individual names are clear.

Tool Count3/5

25 tools is at the high end for a single MCP server and falls in the 'feels heavy' range. The breadth is justified by the code-intelligence/query domain, but the selection surface is large for an agent to navigate efficiently.

Completeness4/5

The code indexing, search, graph query, source access, history, ADR, test lookup, and scope estimation needs are well covered. Minor gaps remain—no detach/remove repository, no ADR content editing, and source access is gated by an add-on—but these are workable.