CERN GitLab MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CERNGITLAB_TOKEN | No | Personal access token (optional). Create a token with `read_api` scope at https://gitlab.cern.ch/-/user_settings/personal_access_tokens for access to internal/private projects, code search, and wiki pages. | |
| CERNGITLAB_TIMEOUT | No | HTTP timeout in seconds | 30 |
| CERNGITLAB_LOG_LEVEL | No | Logging level | INFO |
| CERNGITLAB_GITLAB_URL | No | GitLab instance URL | https://gitlab.cern.ch |
| CERNGITLAB_MAX_RETRIES | No | Max retries for failed requests | 3 |
| CERNGITLAB_RATE_LIMIT_PER_MINUTE | No | API rate limit | 300 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| test_connectivityA | Test connectivity to the CERN GitLab instance. Returns the GitLab version, authentication status, and connection health. |
| search_projectsA | Search for public CERN GitLab projects (which contain repositories, issues, wikis, etc.) by keywords, topics, or programming language. Useful for discovering HEP code, analysis frameworks, and physics tools. |
| get_project_infoA | Get detailed information about a specific CERN GitLab project (metadata, statistics, description). Accepts either a numeric project ID or a full project path (e.g. 'atlas/athena'). |
| list_project_filesB | List files and directories in a CERN GitLab project's repository. Supports recursive listing and path specific lookups. |
| get_file_contentA | Retrieve the content of a specific file from a CERN GitLab repository. Returns the file content along with metadata like size, encoding, and a language hint for syntax highlighting. Binary files are detected and reported without attempting to decode them. |
| get_project_readmeA | Get the README file content for a CERN GitLab project. Automatically detects standard README filenames (README.md, README.rst, etc.). Returns the raw content — useful for understanding what a project does. |
| search_codeA | Search for code snippets across CERN GitLab repositories. Can search globally across all public projects or within a specific project. Returns matching files with line-level context. Useful for finding usage examples of specific libraries, functions, or patterns. |
| search_lhcb_stackA | Search for code snippets within a specific LHCb software stack (e.g., 'sim11'). Automatically resolves the correct Git references for projects in that stack. |
| search_issuesA | Search for issues and discussions in CERN GitLab projects. Useful for understanding how a library is used, finding solution to common errors, or checking if a feature is supported. |
| get_wiki_pagesA | Access wiki pages from a CERN GitLab repository. Can list all wiki pages or retrieve the content of a specific page. Useful for accessing project documentation that lives in the wiki. |
| inspect_projectA | Analyze a CERN GitLab repository to understand its structure, build system, and dependencies. Combines functionality of dependency analysis, build config detection, and CI/CD inspection into a single tool. Returns a comprehensive summary of the project's technical stack. |
| list_releasesA | List releases from a CERN GitLab repository. Returns release tags, dates, and descriptions. Useful for tracking software versions and finding changelogs. |
| get_releaseA | Get detailed information about a specific release from a CERN GitLab repository. Returns release notes, assets, commit info, and download links. Requires the tag name of the release. |
| list_tagsA | List tags from a CERN GitLab repository. Returns tag names with their associated commit references. Useful for finding version history and release points. |
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/MohamedElashri/cerngitlab-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server