Code Expert MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| WEBHOOK_SECRET | No | Secret used to validate incoming webhook requests via HMAC-SHA256 signature. | |
| AZURE_DEVOPS_PAT | No | Azure DevOps Personal Access Token for accessing private Azure DevOps repositories. | |
| GITHUB_PERSONAL_ACCESS_TOKEN | No | GitHub personal access token for accessing private repositories and avoiding API rate limits. |
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 |
|---|---|
| get_repo_file_contentA | Retrieve file contents or directory listings from a repository. For files, returns the complete file content. For directories, returns a non-recursive listing of immediate files and subdirectories. PARAMETERS:
|
| refresh_repoA | ⚠️ MANUAL SYNC ONLY: Update a repository with latest changes. Only use when explicitly requested by the user. IMPORTANT:
WHAT IT DOES:
PARAMETER:
|
| get_repo_statusA | Check if a repository is cloned and ready for analysis without triggering any operations. USE THIS TO:
RETURNS:
|
| list_repository_branchesB | List all cached versions of a repository across different branches. Shows information about each cached branch including paths, strategies, and metadata. |
| delete_repoA | Remove a cached repository from the MCP server's cache, including all associated metadata and analysis results. ⚠️ DESTRUCTIVE OPERATION: This permanently removes cached repositories and cannot be undone. WHAT IT DOES:
IDENTIFICATION METHODS:
PARAMETER:
USE CASES:
NOTE: After deletion, the repository will need to be re-cloned via clone_repo before it can be analyzed again. |
| list_reposA | List all repositories currently in the MCP server's cache with their complete metadata including clone status, analysis status, branches, and cache sizes. |
| clone_repoA | Initialize a repository for analysis by copying it to MCP's cache. This is a prerequisite for all other analysis tools. WHEN TO USE:
RETURNS:
CACHE STRATEGIES:
|
| get_source_repo_mapA | Retrieve a semantic analysis map of the repository's source code structure, including file hierarchy, functions, classes, and their relationships. Repository must be previously cloned via clone_repo. PARAMETER:
RESPONSE CHARACTERISTICS:
NOTE: This tool supports both broad and focused analysis strategies. Response handling can be adapted based on specific use case requirements and user preferences. |
| get_repo_structureA | Retrieve directory structure and analyzable file counts for a repository to guide analysis decisions. PARAMETER:
RESPONSE CHARACTERISTICS:
NOTE: Use this tool to understand repository structure and choose which directories to analyze in detail. |
| get_repo_critical_filesA | Identify and analyze the most structurally significant files in a repository to guide code understanding efforts. PARAMETER:
RESPONSE CHARACTERISTICS:
NOTE: This tool is designed to guide initial codebase exploration by identifying structurally significant files. Results can be used to target subsequent get_source_repo_map calls for detailed analysis. |
| get_repo_documentationB | Retrieve and analyze documentation files from a repository, including README files, API docs, design documents, and other documentation. Repository must be previously cloned via clone_repo. PARAMETER:
|
| get_auto_refresh_statusA | Get the current status of the auto-refresh system. |
| start_auto_refreshA | Manually start the auto-refresh system if it's not already running. |
| stop_auto_refreshA | Manually stop the auto-refresh system. |
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 14 tools
Tools are mostly distinct, but there is some overlap between list_repos, get_repo_status, and list_repository_branches for repository status and branch information. Additionally, get_repo_file_content and get_repo_structure both provide directory listings, though they serve different purposes. Descriptions help clarify when to use each.
The majority of tools follow a verb_noun pattern (list_, get_, delete_, clone_, start_, stop_). Minor deviations include 'list_repos' using an abbreviation and 'get_source_repo_map' breaking the 'get_repo_*' pattern. Overall, naming is predictable and consistent.
14 tools is an appropriate number for a server focused on repository lifecycle management and code analysis. Each tool serves a clear purpose without unnecessary bloat, and the count fits within the well-scoped range.
The server provides complete CRUD for cached repositories (clone, refresh, delete, get status) and a comprehensive set of analysis tools (structure, critical files, source map, documentation, file content). The domain is fully covered with no obvious dead ends.