Files
gitea-mcp-adapter/README.md
T

2.6 KiB

Gitea MCP Adapter 🦊🔌

Un proxy ligero que envuelve la API REST de Gitea como un servidor de Model Context Protocol (MCP) compatible con la especificación Agent-to-Agent (A2A) de Capataz.

Permite que cualquier agente de IA o cliente compatible con MCP interactúe directamente con tu instancia de Gitea (listar issues, commits, estados de CI/CD, crear comentarios, PRs, etc.) usando lenguaje natural.


🚀 Características

  • Tarjeta de Agente (A2A Manifest): Expuesta en /.well-known/agent.json con URLs dinámicas basadas en la petición.
  • Servidor MCP nativo: Soporta el transporte estándar de SSE (Server-Sent Events) sobre HTTP.
  • Herramientas (Tools) incluidas:
    • issues_abiertos: Listar issues abiertos con filtros opcionales de etiquetas.
    • commits_recientes: Listar los últimos commits de cualquier rama.
    • estado_actions: Consultar el estado de las ejecuciones de Gitea Actions (CI/CD).
    • crear_issue: Crear un issue con etiquetas.
    • comentar_issue: Añadir comentarios a issues existentes.
    • crear_pull_request: Crear un nuevo PR entre ramas.
  • Autenticación flexible: Soporta configuración global mediante variable de entorno o paso de token dinámico mediante cabecera Authorization: Bearer <token_de_gitea>.

🛠️ Configuración y Variables de Entorno

Crea un archivo .env basado en .env.example:

# URL de tu instancia de Gitea
GITEA_URL=https://git.carmona.digital

# Token de acceso personal de Gitea (opcional si usas cabeceras dinámicas)
GITEA_TOKEN=tu_token_de_gitea

# Configuración del servidor
PORT=8000
HOST=0.0.0.0

📦 Ejecución Local

Con Python

  1. Instala las dependencias:

    pip install -r requirements.txt
    
  2. Inicia el servidor:

    python main.py
    

El adaptador estará disponible en http://localhost:8000.

Con Docker

  1. Construye la imagen:

    docker build -t gitea-mcp-adapter .
    
  2. Ejecuta el contenedor:

    docker run -d -p 8000:8000 --env-file .env gitea-mcp-adapter
    

🔌 Integración con Capataz (A2A)

Para registrar este adaptador en Capataz, simplemente añade la URL de despliegue en la interfaz de Capataz (ej. https://gitea-mcp-adapter.estamos.com.ar).

Capataz leerá automáticamente:

  1. /.well-known/agent.json para descubrir las capacidades y skills del adaptador.
  2. Se conectará al endpoint MCP en /mcp/sse para interactuar con las herramientas.

📝 Licencia

MIT - Libre para usar en cualquier instalación de Gitea y ecosistemas agénticos.