Connects agents to SonarQube Server or Cloud to retrieve code quality and security findings and analyze code snippets.
接入配置
选择客户端,复制配置,再按项目文档补齐环境变量。
claude mcp add sonarqube --env SONARQUBE_TOKEN='<SONARQUBE_TOKEN>' --env SONARQUBE_ORG='<SONARQUBE_ORG>' --env SONARQUBE_URL='<SONARQUBE_URL>' -- docker run -i --rm -e SONARQUBE_TOKEN -e SONARQUBE_ORG -e SONARQUBE_URL docker.io/sonarsource/sonarqube-mcp~/.codex/config.toml
[mcp_servers.sonarqube]
command = "docker"
args = ["run", "-i", "--rm", "-e", "SONARQUBE_TOKEN", "-e", "SONARQUBE_ORG", "-e", "SONARQUBE_URL", "docker.io/sonarsource/sonarqube-mcp"]
env = { SONARQUBE_TOKEN = "<SONARQUBE_TOKEN>", SONARQUBE_ORG = "<SONARQUBE_ORG>", SONARQUBE_URL = "<SONARQUBE_URL>" }
# codex mcp add sonarqube --env SONARQUBE_TOKEN='<SONARQUBE_TOKEN>' --env SONARQUBE_ORG='<SONARQUBE_ORG>' --env SONARQUBE_URL='<SONARQUBE_URL>' -- docker run -i --rm -e SONARQUBE_TOKEN -e SONARQUBE_ORG -e SONARQUBE_URL docker.io/sonarsource/sonarqube-mcp~/.cursor/mcp.json
{
"mcpServers": {
"sonarqube": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SONARQUBE_TOKEN",
"-e",
"SONARQUBE_ORG",
"-e",
"SONARQUBE_URL",
"docker.io/sonarsource/sonarqube-mcp"
],
"env": {
"SONARQUBE_TOKEN": "<SONARQUBE_TOKEN>",
"SONARQUBE_ORG": "<SONARQUBE_ORG>",
"SONARQUBE_URL": "<SONARQUBE_URL>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"sonarqube": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SONARQUBE_TOKEN",
"-e",
"SONARQUBE_ORG",
"-e",
"SONARQUBE_URL",
"docker.io/sonarsource/sonarqube-mcp"
],
"env": {
"SONARQUBE_TOKEN": "<SONARQUBE_TOKEN>",
"SONARQUBE_ORG": "<SONARQUBE_ORG>",
"SONARQUBE_URL": "<SONARQUBE_URL>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"sonarqube": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SONARQUBE_TOKEN",
"-e",
"SONARQUBE_ORG",
"-e",
"SONARQUBE_URL",
"docker.io/sonarsource/sonarqube-mcp"
],
"env": {
"SONARQUBE_TOKEN": "<SONARQUBE_TOKEN>",
"SONARQUBE_ORG": "<SONARQUBE_ORG>",
"SONARQUBE_URL": "<SONARQUBE_URL>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"sonarqube": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SONARQUBE_TOKEN",
"-e",
"SONARQUBE_ORG",
"-e",
"SONARQUBE_URL",
"docker.io/sonarsource/sonarqube-mcp"
],
"env": {
"SONARQUBE_TOKEN": "<SONARQUBE_TOKEN>",
"SONARQUBE_ORG": "<SONARQUBE_ORG>",
"SONARQUBE_URL": "<SONARQUBE_URL>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"sonarqube": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SONARQUBE_TOKEN",
"-e",
"SONARQUBE_ORG",
"-e",
"SONARQUBE_URL",
"docker.io/sonarsource/sonarqube-mcp"
],
"env": {
"SONARQUBE_TOKEN": "<SONARQUBE_TOKEN>",
"SONARQUBE_ORG": "<SONARQUBE_ORG>",
"SONARQUBE_URL": "<SONARQUBE_URL>"
}
}
}
}需要的环境变量
SONARQUBE_TOKENSONARQUBE_ORGSONARQUBE_URL
把占位值换成你自己的密钥;不要把密钥提交到代码仓库。