返回 MCP 目录
public公开dns本地运行

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

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端