repo-compass
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| repo_summaryA | Overview: languages, size, packages by lines, index freshness. Start here. <= 600 tokens. |
| search_symbolsA | Find symbols by name: 'save', 'Order.add', or words ('get user' finds get_user_by_id). Returns file:line, kind, signature; no bodies. Ranked exact name, then word match; non-test first. kind: class|interface|enum|record|annotation|method|constructor|function|field. path: only in this dir, file or package ('model/', 'com.x.model'); with query '' it lists what path defines, types first. <= 1500 tokens. |
| get_symbolB | Source of one symbol: body for methods/functions, member list for types, plus doc. symbol: 'Order.add', a qualified name, or path:line. <= 2000 tokens. |
| find_referencesA | Call sites of a symbol, grouped by file, with calling symbol and source line. Tier: exact (certain from syntax), likely (type visible, receiver type unknown), possible (name only). Ranked exact>likely>possible, non-test first. <= 2000 tokens. |
| file_outlineA | Symbols a file defines, with line ranges and signatures, without reading it. Truncation keeps types, then methods, then fields. <= 1500 tokens. |
| module_dependenciesA | Import graph between packages/modules, and import cycles. No module: overview. module: a name, 'pkg.*' or a prefix: its imports, importers, external deps, cycles. Test files are left out unless include_tests. <= 1200 tokens. |
| diff_impactA | What a change touches: symbols changed between base and head (removed, signature, body, added), their callers outside the diff by tier, dangling uses of removed ones, importers. Compares the merge base, like a PR; head: a ref, default the working tree. Ranked: removed/signature changes with callers outside the diff first. <= 2000 tokens. |
| hotspotsB | Files that change often and hold much code: commits x lines inside methods, per file, renames followed. since: a ref or a date ('6 months ago'), default 1 year. Test files left out unless include_tests. <= 1200 tokens. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 8 tools
Each tool targets a distinct analysis task: repo overview, symbol search/retrieval, file outline, reference lookup, module dependencies, churn hotspots, and diff impact. The overlap between find_references and diff_impact is minimal and contextually separated by change-focused vs. general reference lookup.
Names use snake_case throughout, but they mix verb_noun (search_symbols, get_symbol, find_references) with noun_phrase (diff_impact, hotspots, repo_summary, file_outline, module_dependencies). The convention is readable but not predictable as a single pattern.
Eight tools are well-scoped for a repository analysis server, with no obvious redundancy. Each tool covers a distinct and useful analysis capability, fitting comfortably in the recommended 3-15 range.
The set covers core static analysis needs: overview, symbol search, symbol retrieval, file outline, references, dependencies, churn, and change impact. Minor gaps exist, such as direct file content reading or type hierarchy/call graph queries, but agents can often work around these using other tools.