Skip to content

dozzman/sonarcloud-mcp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SonarCloud MCP Server

An MCP server that provides tools for fetching SonarCloud issues related to pull requests.

Example prompt:

Fetch the list of OPEN or ACCEPTED issues from sonarcloud for this PR, which are assigned to __me__, fix them and push the changes to this PR.

Emphasis on the __me__ part, which is a special value in the sonarcloud API to reference the current user (token owner). You can stick this in your .claude/tools folder as sonarcloud-issues.md to have a shortcut which requests claude code to fetch and fix issues from SonarCloud.

Features

  • Fetch issues from SonarCloud for specific pull requests
  • Filter by organization, project, and PR number
  • Supports authentication via API token
  • Returns formatted issue data with severity, type, and location information

Installation

Prerequisite: Generate a SonarCloud API token

Follow the instructions in the SonarCloud documentation to generate a SonarCloud API token.

Option 1: Docker (Recommended)

# Build the Docker image npm run docker:build # Or build directly docker build -t sonarcloud-mcp .

Option 2: Local Installation

npm ci npm run build

Usage

Docker Usage

Run via 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

Local Usage

Export the required environment variables and run the server:

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

Environment Variables

  • SONARCLOUD_TOKEN: Your SonarCloud API token (required)j
  • SONARCLOUD_ORGANISATION: Your SonarCloud organization key (optional, can be passed as a parameter)
  • SONARCLOUD_PROJECT_KEY: Your SonarCloud project key (optional, can be passed as a parameter)

Claude Desktop / Claude Code Integration

Docker Configuration (Recommended)

Add to your claude_desktop_config.json or claude.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>" } } } }

Local Configuration

Add to your claude_desktop_config.json or claude.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>" } } } }

Available Tools

  • fetch_sonarcloud_issues: Fetches SonarCloud issues for a specific pull request.

About

sonarcloud/sonarqube cloud MCP server for fetching issues

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors