reference-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| REFERENCE_MCP_REPO | No | Absolute path to the codebase to analyze. Defaults to current working directory. | |
| REFERENCE_MCP_CACHE_DIR | No | Where the SQLite index is stored (never inside your repo). | ~/.cache/reference-mcp |
| REFERENCE_MCP_EMBED_MODEL | No | Override the embedding model for semantic search (default: BAAI/bge-small-en-v1.5). | BAAI/bge-small-en-v1.5 |
| REFERENCE_MCP_TOKEN_BUDGET | No | Soft per-response token cap. | 25000 |
Capabilities
Features and capabilities supported by this server
| 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_overviewA | Summarize the entire repository in one call — run this FIRST on an unfamiliar codebase. |
| get_file_outlineA | List the symbol skeleton of a file or directory WITHOUT reading bodies — the cheapest way to understand what a file contains. Returns a nested outline (classes, methods, functions, module vars) with line numbers. Prefer this over reading a whole file when you only need its shape. |
| find_symbolA | Locate where a function/class/method/variable is DEFINED. |
| find_referencesA | Find every USE-SITE of a symbol (calls, attribute access, imports) across the repo, each with file:line and the source line. |
| trace_call_graphA | Trace the call graph from a function — callers or callees — to N levels, in one call (instead of chaining find_references by hand). |
| get_type_hierarchyA | Show a class's type hierarchy: superclasses upward and subclasses / Protocol-ABC implementations downward. |
| search_codeA | Search the repo, filtered and paginated. mode='lexical' does exact/regex text matching; mode='semantic' ranks symbols by natural-language meaning ("where is auth handled?"). |
| get_dependenciesA | Show what a file imports (internal vs external) and which files import IT (reverse dependencies / blast radius). Use to gauge the impact of changing a module. Returns import edges with line numbers and the list of dependent files. |
| code_historyA | Explain WHY code looks the way it does using git: recent commits touching a file, churn stats (commit count, authors, age), and optional line-range blame. |
| find_testsA | Map a symbol to the tests that exercise it — or a test file to the symbols it exercises. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mark-burg/reference-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server