Google Cloud Logging

Un servidor MCP para acceder a datos y servicios de Google Cloud Logging.

Documentación

Servidor MCP de Google Cloud Logging

Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona acceso a Google Cloud Logging. Este servidor permite a los asistentes de IA consultar, buscar y analizar registros de proyectos de la plataforma Google Cloud.

Características

  • Consultar registros: Buscar y filtrar registros en proyectos de GCP
  • Obtener detalles de registros: Recuperar información detallada sobre entradas de registro específicas
  • Listar proyectos: Listar proyectos de GCP disponibles

Primeros pasos

Requisitos previos

  • Entorno de ejecución Bun
  • Credenciales de Google Cloud configuradas
  • Acceso a la API de Google Cloud Logging

Inicio rápido

  1. Instalar dependencias:

    bun install
    
  2. Configurar credenciales de Google Cloud:

    # Option 1: Use gcloud CLI
    gcloud auth application-default login
    
    # Option 2: Use service account
    export GOOGLE_APPLICATION_CREDENTIALS="/path/to/service-account.json"
    
  3. Establecer tu ID de proyecto:

    export GOOGLE_CLOUD_PROJECT="your-project-id"
    
  4. Ejecutar el servidor:

    bun run start
    

Uso con Claude Desktop

Agrega lo siguiente a tu archivo de configuración de Claude Desktop:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "cloud-logging": {
      "command": "bun",
      "args": ["run", "/path/to/cloud-logging-mcp/src/main.ts"],
      "env": {
        "GOOGLE_CLOUD_PROJECT": "your-project-id"
      }
    }
  }
}

Ejemplo de uso de herramientas

Consultar registros

Buscar y filtrar registros de Google Cloud Logging.

{
  "tool": "queryLogs",
  "input": {
    "projectId": "my-project",
    "filter": "resource.type=\"cloud_run_revision\" AND severity>=ERROR",
    "orderBy": {
      "timestamp": "desc"
    },
    "pageSize": 50
  }
}

Parámetros:

  • projectId: ID del proyecto GCP
  • filter: Consulta de filtro de registros (sigue la sintaxis de consulta de GCP logging)
  • orderBy: Orden de clasificación para los resultados
  • pageSize: Número de resultados por página
  • pageToken: Token para paginación
  • resourceNames: Recursos de registro específicos a consultar
  • summaryFields: Campos a incluir en el resumen

Obtener detalle de registro

Recuperar detalles completos de una entrada de registro específica.

{
  "tool": "getLogDetail",
  "input": {
    "projectId": "my-project",
    "logId": "65f5a7b60000000001234567"
  }
}

Parámetros:

  • projectId: ID del proyecto GCP
  • logId: El identificador único de la entrada de registro

Listar proyectos

Listar todos los proyectos de Google Cloud accesibles.

{
  "tool": "listProjects",
  "input": {}
}

Parámetros: Ninguno

Ejemplos comunes de filtros

  • Por severidad: severity>=ERROR
  • Por rango de tiempo: timestamp>="2024-01-01T00:00:00Z"
  • Por recurso: resource.type="cloud_run_revision"
  • Por búsqueda de texto: textPayload:"connection timeout"
  • Combinado: resource.type="k8s_container" AND severity=ERROR AND timestamp>="2024-01-01T00:00:00Z"

Solución de problemas

  1. Errores de autenticación: Asegúrate de que tus credenciales de Google Cloud estén configuradas correctamente
  2. Errores de permisos: Verifica que tu cuenta tenga el permiso logging.logEntries.list
  3. Sin resultados: Verifica tu sintaxis de filtro y que existan registros para tu consulta

Desarrollo

# Run tests
bun test

# Type checking
bun run typecheck

# Linting
bun run lint

# Format code
bun run format

Arquitectura

El servidor sigue un patrón de arquitectura limpia:

  • /adapter: Integraciones de servicios externos (APIs de Google Cloud)
  • /domain: Lógica de negocio principal y modelos de datos
  • /port: Definiciones de interfaces y manejadores de herramientas MCP
  • /util: Funciones de utilidad y ayudantes

Licencia

MIT