Skip to main content
Glama

critique-mcp

CI

Un servidor MCP que le da a un agente las herramientas para revisar de verdad un pull request: no solo resumir el diff, sino desglosarlo, ejecutar el linter sobre el código modificado, avisar cuando las pruebas no se han actualizado y publicar una revisión real de vuelta en GitHub.

Python · Model Context Protocol · GitHub REST API


Herramientas

Herramienta

Qué hace

list_changed_files

Archivos modificados en un PR, con estadísticas del diff y texto del parche

check_test_coverage

Marca PRs que cambian archivos de código fuente sin tocar ningún archivo de pruebas

run_linter

Ejecuta ruff sobre todos los archivos Python modificados en el commit HEAD del PR

post_review

Envía una revisión real (comentario / aprobar / solicitar cambios) en el PR

Cada herramienta es una función ligera e independientemente comprobable: run_linter no sabe cómo funciona check_test_coverage, y ninguna de las dos habla con GitHub salvo a través de GitHubClient. El agente decide cómo combinarlas; este servidor solo le da las manos.

check_test_coverage es una heurística a nivel de PR, no una instrumentación de cobertura por archivo: marca "archivos fuente modificados, cero archivos de prueba tocados en todo este PR", igual que la señal aproximada que usan herramientas como Danger.js. Un PR que modifica cinco archivos de código y toca una prueba no relacionada no se marcará: una versión precisa necesitaría datos de cobertura reales, no nombres de archivo.

Related MCP server: github-pr-review-mcp

Por qué existe

He encontrado y corregido a mano, en PRs de otros, exactamamente el tipo de errores que capturan estas herramientas: una aserción de prueba que pasaba compressamente vacía en [chroma-core/chroma](una aserción de prueba que se supone), un validador que solo comprobaba un elemento de una lista en [weaviate-python-client](un validador), y un fallo de precisión de baremos fijos en [qdrant-client](un fallo). Esto convierte ese proceso de revisión en herramientas que un agente puede invocar directamente, en lugar de que un humano haga las mismas comprobraciones a mano cada vez.

Configuración

Requiere Python 3.11+, el linter ruff en el PATH y un token de acceso personal de GitHub con el permiso repo (u título de solo lectura es suficiente a menos que quieras que funcione ) post_review.

cp .env.example .env      # then add your token to .env
python -m venv .venv && source .venv/bin/activate   # Windows: .venv\Scripts\activate
pip install -r requirements.txt

Uso

Agregua a Claude Desktop / Claude Code de la configuración de MCP:

{
  "mcpServers": {
    "critique": {
      "command": "python",
      "args": ["-m", "critique_mcp.server"],
      "env": { "GITHUB_TOKEN": "ghp_..." }
    }
  }
}

Después, pídele al agente que lo use: «Usa critique para revisar el PR #42 en owner/repo — revisa los problemas de lint y las pruebas que faltan, y luego publicar una revisión resumida».

Pruebas

pytest

Todas las llamadas a la API de GitHub están simuladas en las pruebas: aquí no se produce ninguna llamada de red real salvo que ejecutes el propio serviservidor.

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Screens public GitHub repos and PRs to generate risk maps, findings, and merge-readiness signals.

  • Pull change requests from your Amendor board into your coding agent to build and open PRs.

  • Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Nimra3261/critique-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server