Back to MCP directory
publicPublicdnsLocal runtime

sonarcloud-mcp

一个提供获取与拉取请求相关的SonarCloud问题的MCP服务器工具

article

README

🚀 SonarCloud MCP Server

SonarCloud MCP Server 是一个 MCP 服务器,它提供了用于获取与拉取请求(PR)相关的 SonarCloud 问题的工具。通过该工具,你可以方便地获取特定 PR 的问题信息,助力代码质量的提升。

🚀 快速开始

使用 SonarCloud MCP Server 前,你需要先了解其基本功能和使用方式。它能帮助你从 SonarCloud 中获取特定拉取请求的问题,并进行筛选和处理。

✨ 主要特性

  • 为特定的拉取请求从 SonarCloud 获取问题。
  • 可按组织、项目和 PR 编号进行筛选。
  • 支持通过 API 令牌进行身份验证。
  • 返回包含严重性、类型和位置信息的格式化问题数据。

📦 安装指南

前提条件:生成 SonarCloud API 令牌

请按照 SonarCloud 文档 中的说明生成 SonarCloud API 令牌。

选项 1:Docker(推荐)

# 构建 Docker 镜像
npm run docker:build

# 或者直接构建
docker build -t sonarcloud-mcp .

选项 2:本地安装

npm ci
npm run build

💻 使用示例

Docker 使用方法

通过 Docker 运行:

docker run -i --rm \
  -e SONARCLOUD_TOKEN=your_token_here \
  -e SONARCLOUD_ORGANISATION=your_organisation_here \
  -e SONARCLOUD_PROJECT_KEY=your_project_key_here \
  sonarcloud-mcp

本地使用方法

导出所需的环境变量并运行服务器:

export SONARCLOUD_TOKEN=your_token_here
export SONARCLOUD_ORGANISATION=your_organisation_here
export SONARCLOUD_PROJECT_KEY=your_project_key_here
npm start

环境变量说明

  • SONARCLOUD_TOKEN:你的 SonarCloud API 令牌(必需)。
  • SONARCLOUD_ORGANISATION:你的 SonarCloud 组织密钥(可选,可以作为参数传递)。
  • SONARCLOUD_PROJECT_KEY:你的 SonarCloud 项目密钥(可选,可以作为参数传递)。

📚 详细文档

Claude Desktop / Claude Code 集成

Docker 配置(推荐)

在你的 claude_desktop_config.jsonclaude.json 中添加以下内容:

{
  "mcpServers": {
    "sonarcloud": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "SONARCLOUD_TOKEN",
        "-e",
        "SONARCLOUD_ORGANISATION",
        "-e",
        "SONARCLOUD_PROJECT_KEY",
        "sonarcloud-mcp"
      ],
      "env": {
        "SONARCLOUD_TOKEN": "<your token here>",
        "SONARCLOUD_ORGANISATION": "<your organisation here>",
        "SONARCLOUD_PROJECT_KEY": "<your project key here>"
      }
    }
  }
}

本地配置

在你的 claude_desktop_config.jsonclaude.json 中添加以下内容:

{
  "mcpServers": {
    "sonarcloud-mcp": {
      "command": "node",
      "args": [
        "/path/to/sonarcloud_mcp/dist/index.js"
      ],
      "env": {
        "SONARCLOUD_TOKEN": "<your token here>",
        "SONARCLOUD_ORGANISATION": "<your organisation here>",
        "SONARCLOUD_PROJECT_KEY": "<your project key here>"
      }
    }
  }
}

可用工具

  • fetch_sonarcloud_issues:为特定的拉取请求获取 SonarCloud 问题。
help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client