Token导航 LogoToken导航TokenDH.com
MCP Sonarqube Manager logo
开发工具stdio官方级别未说明来源级核验

MCP Sonarqube Manager

MCP Server

MCP SonarQube Manager是一个通过Model Context Protocol(MCP)集成SonarQube的服务器,为AI助手提供实时代码质量分析、漏洞管理和问题解决功能。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
代码分析开发工具PythonClaude漏洞检测Claude DesktopClaudeVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

AlexAlonsoMontero

提供方

AlexAlonsoMontero

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv venv

详细介绍

🎉 MCP SonarQube Manager

✅ Versión estable: Integración completa con SonarQube mediante Model Context Protocol. 31 herramientas: Análisis de código, gestión de issues, métricas de calidad y seguridad. Listo para producción: Completamente probado y funcional.

📋 Descripción

MCP SonarQube Manager es un servidor que implementa el Model Context Protocol (MCP) para integrar SonarQube con asistentes de IA como GitHub Copilot o Claude Desktop.

Permite a tu asistente de IA acceder, analizar y gestionar la calidad de tu código en tiempo real: consultar métricas, revisar vulnerabilidades, gestionar issues de seguridad y entender por qué se violan las reglas de codificación, todo sin salir de tu editor.

✨ Características Principales

  • 📊 Análisis Completo: Métricas de calidad, cobertura, bugs, vulnerabilidades y deuda técnica.
  • 🛡️ Seguridad: Gestión de Security Hotspots y vulnerabilidades confirmadas.
  • 🐛 Gestión de Issues: Listar, filtrar, asignar y resolver incidencias.
  • 📏 Reglas Inteligentes: Explicaciones detalladas de qué es un problema y cómo solucionarlo.
  • 🌿 Multi-rama: Análisis y comparación entre diferentes ramas del proyecto.

🛠️ 31 Herramientas Disponibles

📊 Proyectos (11 herramientas)

HerramientaDescripción
list_sonarqube_projectsLista todos los proyectos disponibles.
update_projects_cacheFuerza actualización del caché local de proyectos.
search_projects_by_nameBusca proyectos por nombre parcial.
get_project_quality_metricsMétricas clave: bugs, coverage, code smells, deuda técnica.
get_project_quality_gate_statusVerifica si el proyecto pasa los criterios de calidad (Quality Gate).
get_project_detailsInformación detallada del proyecto e histórico de análisis.
get_project_analysis_historyHistorial de análisis previos y eventos asociados.
get_project_duplication_metricsAnaliza código duplicado: % densidad, líneas y bloques.
get_project_complexity_metricsComplejidad ciclomática y cognitiva.
get_project_summary_reportReporte ejecutivo completo del estado del proyecto.
compare_project_metrics_with_previousCompara métricas actuales con análisis anterior (tendencias).

🛡️ Seguridad (2 herramientas)

HerramientaDescripción
get_project_security_hotspotsPuntos críticos de seguridad que requieren revisión manual.
get_project_security_issuesVulnerabilidades confirmadas que requieren acción inmediata.

🐛 Issues (9 herramientas)

HerramientaDescripción
list_sonarqube_issues_by_severityFiltra por severidad (BLOCKER, CRITICAL, MAJOR, MINOR, INFO).
list_sonarqube_issues_by_typeFiltra por tipo (BUG, VULNERABILITY, CODE_SMELL).
search_issues_by_fileEncuentra issues en un archivo específico.
get_sonarqube_issue_detailsDetalles completos de una incidencia específica.
get_sonarqube_issues_statisticsResumen estadístico de issues por tipo y severidad.
add_comment_to_issueAñade un comentario a una incidencia.
assign_issue_to_userAsigna una incidencia a un usuario de SonarQube.
change_sonarqube_issue_statusCambia el estado (OPEN → RESOLVED, FALSE POSITIVE, etc.).
bulk_resolve_issuesResuelve múltiples incidencias simultáneamente.

🌿 Ramas (3 herramientas)

HerramientaDescripción
list_project_branchesLista todas las ramas analizadas de un proyecto.
get_branch_metricsObtiene métricas específicas de una rama.
compare_branchesCompara métricas entre dos ramas (ej. feature vs main).

📏 Reglas y Sistema (6 herramientas)

HerramientaDescripción
get_rule_detailsExplicación detallada de una regla, con ejemplos correcto/incorrecto.
list_active_rulesLista reglas activas en el perfil de calidad.
search_rules_by_languageBusca reglas por lenguaje (Python, TypeScript, Java, etc.).
list_sonarqube_pluginsLista plugins instalados en el servidor.
get_sonarqube_health_statusVerifica el estado de salud del servidor SonarQube.
get_sonarqube_versionObtiene la versión del servidor.

📦 Instalación

Requisitos

  • Python 3.10+
  • Acceso a servidor SonarQube con token de autenticación

1. Clonar el repositorio

git clone 
cd mcp-py-sonarqube

2. Crear entorno virtual

python -m venv venv
source venv/bin/activate       # Linux/Mac
# venv\Scripts\activate         # Windows

3. Instalar dependencias

pip install -r requirements.txt

⚙️ Configuración

Variables de Entorno

El servidor leerá automáticamente las variables desde un archivo .env en la raíz del proyecto. Esto facilita la configuración sin exponer credenciales en archivos JSON.

Crea .env basándote en .env.example:

cp .env.example .env

Edita .env con tus datos:

# URL del servidor SonarQube
SONARQUBE_SERVER_URL=http://localhost:9000

# Token de autenticación
# Genéralo en: SonarQube > My Account > Security > Tokens
SONARQUBE_TOKEN=squ_tu_token_aqui_xxx
Nota: Las variables del .env se cargan automáticamente. No es necesario exponerlas en la configuración del cliente MCP.

🔌 Integración con Clientes MCP

Una vez configurado el .env, la configuración del cliente es muy simple: solo necesita apuntar al ejecutable de Python y al script main.py.

VS Code (GitHub Copilot)

Edita el archivo de configuración de MCP:

  • Linux/Mac: ~/.config/Code/User/globalStorage/github.copilot-chat/config/mcp.json
  • Windows: %APPDATA%\Code\User\globalStorage\github.copilot-chat\config\mcp.json
{
  "mcpServers": {
    "sonarqube": {
      "command": "/ruta/absoluta/a/mcp-py-sonarqube/venv/bin/python",
      "args": ["/ruta/absoluta/a/mcp-py-sonarqube/src/main.py"]
    }
  }
}

Ejemplo en Linux:

{
  "mcpServers": {
    "sonarqube": {
      "command": "/home/usuario/proyectos/mcp-py-sonarqube/venv/bin/python",
      "args": ["/home/usuario/proyectos/mcp-py-sonarqube/src/main.py"]
    }
  }
}

Ejemplo en Windows:

{
  "mcpServers": {
    "sonarqube": {
      "command": "C:/Users/usuario/proyectos/mcp-py-sonarqube/venv/Scripts/python.exe",
      "args": ["C:/Users/usuario/proyectos/mcp-py-sonarqube/src/main.py"]
    }
  }
}
Importante: Usa siempre rutas absolutas. El ejecutable de Python debe estar dentro del venv para que cargue correctamente el .env.

Claude Desktop

Edita: ~/Library/Application Support/Claude/claude_desktop_config.json (Mac) o %APPDATA%\Claude\claude_desktop_config.json (Windows)

{
  "mcpServers": {
    "sonarqube": {
      "command": "/ruta/absoluta/a/mcp-py-sonarqube/venv/bin/python",
      "args": ["/ruta/absoluta/a/mcp-py-sonarqube/src/main.py"]
    }
  }
}

🚀 Ejemplos de Uso

Una vez configurado, pregunta a tu asistente:

  • *"¿Cuál es el estado de calidad del proyecto 'backend-api'?"*
  • *"Lista los security hotspots del proyecto 'frontend' que necesitan revisión."*
  • *"¿Hay alguna vulnerabilidad crítica en el archivo auth.service.ts?"*
  • *"Explícame por qué falla la regla 'python:S1192' y dame un ejemplo de cómo corregirla."*
  • *"Asigna el issue #ABC123 al usuario 'dev_senior'."*
  • *"Compara la cobertura de la rama 'feature/login' con 'main'."*
  • *"Genera un reporte completo de la calidad del proyecto 'core-api'."*

🏗️ Estructura del Proyecto

mcp-py-sonarqube/
├── src/
│   ├── main.py              # Punto de entrada del servidor MCP
│   ├── config.py            # Cliente SonarQube extendido (APIs personalizadas)
│   ├── cache.py             # Gestión de caché de proyectos
│   └── tools/               # Módulos de herramientas MCP
│       ├── projects.py      # 11 herramientas para análisis de proyectos
│       ├── issues.py        # 9 herramientas para gestión de issues
│       ├── branches.py      # 3 herramientas para análisis de ramas
│       ├── rules.py         # Herramientas para reglas de calidad
│       └── system.py        # Herramientas del sistema
├── .env                     # Variables de entorno (no commitear)
├── .env.example             # Plantilla de configuración
├── requirements.txt         # Dependencias Python
└── README.md                # Esta documentación

🔒 Seguridad

  • Nunca compartas tu .env: Contiene credenciales sensibles.
  • El .env está en .gitignore para prevenir commits accidentales.
  • Usa tokens con permisos mínimos necesarios.
  • Rota los tokens periódicamente.

🧪 Testing

Para verificar que todo funciona correctamente:

source venv/bin/activate
python3 << 'EOF'
import sys
sys.path.insert(0, 'src')
from main import mcp
print("✅ MCP Server initialized successfully")
EOF

📚 Documentación Completa

Consulta nuestras guías completas para sacar el máximo provecho del MCP SonarQube Manager:

Guías Principales

DocumentoContenido
API ReferenceDocumentación completa de los 31 tools con parámetros, ejemplos y valores de retorno
Workflows12+ flujos de trabajo comunes: monitoreo, mejora de calidad, gestión de issues, seguridad
Testing GuideCómo ejecutar y escribir tests, estrategias de testing, cobertura de código
TroubleshootingSoluciones a problemas comunes: conexión, autenticación, proyectos, integración

Casos de Uso

Primeros Pasos

  1. Instalación: Sigue los pasos de Instalación arriba
  2. Primer análisis: Consulta Workflows: Daily Summary
  3. Duda sobre un tool: Busca en API Reference
  4. Problema: Mira Troubleshooting

🤝 Contribución

Las contribuciones son bienvenidas. Por favor:

  1. Abre un issue primero para discutir cambios importantes.
  2. Mantén la estructura y convenciones de código existentes.
  3. Incluye pruebas para nuevas funcionalidades.

📝 Licencia

Licencia No Comercial: Este proyecto está disponible para uso personal y educativo.

  • Permitido: Uso personal, educativo, investigación, proyectos open-source sin fines de lucro.
  • Prohibido: Uso comercial, redistribución con fines de lucro, incorporación en productos comerciales.

Para uso comercial, contacta con el autor.


Desarrollado con ❤️ usando FastMCP y Python SonarQube API

目录标签

目录标签

代码分析开发工具PythonClaude漏洞检测本地部署质量管理AI集成

支持客户端

Claude DesktopClaudeVS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP