Skip to main content

Python MCP server for SonarQube — query projects, issues, quality gates, coverage, and hotspots

Project description

sonarqube-mcp-py

A Python MCP server for SonarQube — query projects, issues, quality gates, coverage, and security hotspots directly from any MCP-compatible AI agent.

Inspired by the official SonarQube MCP Server (Java/Kotlin), reimplemented in Python for lightweight deployment without JVM dependency.

Install

uvx sonarqube-mcp-py
# or
pip install sonarqube-mcp-py

Configuration

Set environment variables:

export SONARQUBE_URL=https://your-sonarqube-instance
export SONARQUBE_TOKEN=squ_your_token_here
export SONARQUBE_VERIFY_SSL=false  # optional, for self-signed certs

Transport

  • stdio (default): for mcp.json integration with Claude Desktop, Cursor, Kiro CLI, etc.
  • HTTP: set MCP_TRANSPORT=streamable-http and optionally MCP_PORT=8959

Available Tools

Tool Description
search_sonarqube_projects Search for projects
get_project_quality_gate_status Get quality gate status (OK/ERROR)
get_component_measures Get metrics (bugs, coverage, code smells, etc.)
list_quality_gates List all quality gate definitions
search_sonar_issues Search issues by severity and status
search_security_hotspots Find security hotspots to review
show_security_hotspot Get hotspot details
show_rule Get rule description and examples
search_metrics List all available metrics
list_pull_requests List analyzed pull requests
get_file_coverage_details Get per-file coverage data
search_files_by_coverage Find files with lowest coverage
get_duplications Get code duplication details

MCP Client Configuration

stdio (mcp.json)

{
  "sonarqube": {
    "command": "sonarqube-mcp-py",
    "env": {
      "SONARQUBE_URL": "https://your-instance",
      "SONARQUBE_TOKEN": "squ_xxx"
    }
  }
}

HTTP (standalone service)

{
  "sonarqube": {
    "url": "http://localhost:8959/mcp"
  }
}

Start in HTTP mode:

MCP_TRANSPORT=streamable-http MCP_PORT=8959 sonarqube-mcp-py

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sonarqube_mcp_py-0.2.0.tar.gz (101.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sonarqube_mcp_py-0.2.0-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file sonarqube_mcp_py-0.2.0.tar.gz.

File metadata

  • Download URL: sonarqube_mcp_py-0.2.0.tar.gz
  • Upload date:
  • Size: 101.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for sonarqube_mcp_py-0.2.0.tar.gz
Algorithm Hash digest
SHA256 758e77e640d5164f57a9dcaaa0004eb1342ba82c2b7e29533ce98fa2dc28b702
MD5 222cc3f07f42ff8c1d38c4262f224cac
BLAKE2b-256 f3854067ae5d7f6c8ef1f55b4c077ea9ac73a72426bbd37c87a42435aa9b2371

See more details on using hashes here.

Provenance

The following attestation bundles were made for sonarqube_mcp_py-0.2.0.tar.gz:

Publisher: ci.yml on filhocf/sonarqube-mcp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sonarqube_mcp_py-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for sonarqube_mcp_py-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4659a711a866223b4195011f8e04f3c042aff0ae7fee66ef2a23628443505d0b
MD5 480980dfc0657cc0a1c7ccde8b58abe1
BLAKE2b-256 b31196108451365538f9d034c3fde2091d85fdaa28c0cda12799485e9efd8b64

See more details on using hashes here.

Provenance

The following attestation bundles were made for sonarqube_mcp_py-0.2.0-py3-none-any.whl:

Publisher: ci.yml on filhocf/sonarqube-mcp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page