Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SEMANTIC_CODE_MCP_DEBUG | No | Enable debug logging | false |
| SEMANTIC_CODE_MCP_PROFILE | No | Enable pyinstrument profiling | false |
| SEMANTIC_CODE_MCP_CACHE_DIR | No | Where indexes are stored | ~/.cache/semantic-code-mcp |
| SEMANTIC_CODE_MCP_LOCAL_INDEX | No | Store index in .semantic-code/ within each project | false |
| SEMANTIC_CODE_MCP_EMBEDDING_MODEL | No | Sentence-transformers model | all-MiniLM-L6-v2 |
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 |
|---|---|
| search_code | Search for code semantically similar to the query. Finds code by meaning, not just text matching. Use this when you want to find code related to a concept without knowing exact variable/function names. Examples:
Automatically indexes the project if not already indexed, and re-indexes any files that have changed since the last search. Args: query: Natural language description of what you're looking for. project_path: Absolute path to the project root directory. limit: Maximum number of results to return (default 10). Returns: List of matching code chunks with file path, line numbers, content, and score. |
| index_codebase | Index a codebase for semantic search. Scans Python files, extracts functions/classes/methods, generates embeddings, and stores them for fast semantic search. Use force=True to re-index everything even if files haven't changed. Otherwise, only new and modified files are indexed (incremental). Args: project_path: Absolute path to the project root directory. force: If True, re-index all files regardless of changes. Returns: Statistics about the indexing operation. |
| index_status | Get the index status for a project. Returns information about whether the project is indexed, when it was last updated, and how many files and chunks are indexed. Note: search_code automatically re-indexes stale files before searching, so there is no need to check or act on staleness manually. Args: project_path: Absolute path to the project root directory. Returns: Index status including files count and chunks count. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |