A Rust implementation of a Model Context Protocol (MCP) server that integrates with SonarQube to provide AI assistants with access to code quality metrics, issues, and quality gate statuses.
The SonarQube MCP Server enables AI assistants to interact with SonarQube's code quality analysis capabilities through the Model Context Protocol. This integration allows AI assistants to:
shell
git clone https://github.com/sapientpants/sonarqube-mcp-server.git
cd sonarqube-mcp-server
shell
cargo build --release
target/release/sonarqube-mcp-server
Download the pre-built binary for your platform from the Releases page.
claude_desktop_config.json
: Claude Desktop -> Settings
-> Developer
-> Edit Config
mcpServers
section:json
{
"mcpServers": {
"sonarqube": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SONARQUBE_URL",
"-e",
"SONARQUBE_TOKEN",
"-e",
"SONARQUBE_ORGANIZATION",
"sapientpants/sonarqube-mcp-server"
],
"env": {
"SONARQUBE_URL": "https://sonarqube.example.com",
"SONARQUBE_TOKEN": "your-sonarqube-token",
"SONARQUBE_ORGANIZATION": "your-organization-key"
}
}
}
}
To check MCP logs, use: tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
The SonarQube MCP Server provides the following tools:
sonarqube_get_metrics
: Retrieve code metrics for a projectproject_key
(required)metrics
(optional array of metric keys)sonarqube_get_issues
: Retrieve issues for a projectproject_key
(required)severities
(optional array)types
(optional array)statuses
(optional array)impact_severities
(optional array)impact_software_qualities
(optional array)assigned_to_me
(optional boolean)assignees
(optional array)authors
(optional array)code_variants
(optional array)created_after
(optional string, format: YYYY-MM-DD)created_before
(optional string, format: YYYY-MM-DD)created_in_last
(optional string, e.g., '1m' for 1 month)cwe
(optional array of CWE identifiers)directories
(optional array)facets
(optional array)files
(optional array)issue_statuses
(optional array)languages
(optional array)owasp_top10
(optional array)owasp_top10_2021
(optional array)resolutions
(optional array)resolved
(optional boolean)rules
(optional array)sans_top25
(optional array)sonarsource_security
(optional array)tags
(optional array)sort_field
(optional string)asc
(optional boolean)page
(optional)page_size
(optional)sonarqube_get_quality_gate
: Retrieve quality gate status for a projectproject_key
(required)sonarqube_list_projects
: List all SonarQube projectspage
(optional)page_size
(optional)Model Context Protocol (MCP) server for SonarQube
rust
mcp
sonarqube
model-context-protocol
No packages published