Kong Konnect MCP Server

Interactúa con las APIs de Kong Konnect para consultar y analizar configuraciones, tráfico y análisis de Kong Gateway.

Documentación

[!WARNING]

⚠️ Este Repositorio está Obsoleto

Este proyecto ya no se mantiene activamente y será archivado como solo lectura.

No se realizarán más actualizaciones, correcciones de errores ni nuevas funciones. Los problemas y solicitudes de extracción ya no se supervisan.

Si buscas soporte para Kong Konnect MCP, consulta el servidor MCP remoto de Konnect.


Kong Konnect MCP Server

Static Badge Static Badge

Nota: Este repositorio está obsoleto y pronto será archivado como solo lectura. Consulta el aviso anterior para más detalles.

Un servidor de Protocolo de Contexto de Modelo (MCP) para interactuar con las APIs de Kong Konnect, que permite a los asistentes de IA consultar y analizar configuraciones, tráfico y análisis de Kong Gateway.

Tabla de Contenidos

Descripción General

⚠️ Obsoleto: Este proyecto ya no se mantiene. La información a continuación se conserva solo como referencia.

Este proyecto proporciona un servidor de Protocolo de Contexto de Modelo (MCP) que permite a asistentes de IA como Claude interactuar con la puerta de enlace de API de Kong Konnect. Ofrece un conjunto de herramientas para consultar datos de análisis, inspeccionar detalles de configuración y gestionar planos de control mediante conversación en lenguaje natural.

Características principales:

  • Consultar análisis de solicitudes de API con filtros personalizables
  • Listar e inspeccionar servicios, rutas, consumidores y plugins de la puerta de enlace
  • Gestionar planos de control y grupos de planos de control
  • Integración con Claude y otros asistentes de IA compatibles con MCP

Estructura del Proyecto

build/                    # Committed compiled JavaScript output used by the release/distribution flow
src/
├── index.ts              # Main entry point
├── api.ts                # Kong API client
├── tools.ts              # Tool definitions
├── parameters.ts         # Zod schemas for tool parameters
├── prompts.ts            # Detailed tool documentation
├── operations/
│   ├── analytics.ts      # API request analytics operations
│   ├── configuration.ts  # Services, routes, consumers, plugins
│   └── controlPlanes.ts  # Control plane management
└── types.ts              # Common type definitions

Instalación

Nota: Dado que este proyecto está obsoleto, no se proporciona soporte para problemas de instalación.

Requisitos Previos

  • Node.js 20 o superior
  • Una cuenta de Kong Konnect con acceso a la API
  • Un cliente con capacidades MCP (por ejemplo, Claude Desktop, Cursor, etc.)

Configuración

# Clone the repository
git clone https://github.com/Kong/mcp-konnect.git
cd mcp-konnect

# Install dependencies
npm install

# Run the test suite (also rebuilds compiled output)
npm test

# Rebuild the committed build artifacts after changing src/
npm run build

El repositorio incluye archivos confirmados bajo build/ como parte de su modelo de distribución. Si modificas archivos en src/, regenera build/ antes de confirmar o publicar cambios.

Configuración

Establece las siguientes variables de entorno para configurar el servidor MCP:

# Required: Your Kong Konnect API key
export KONNECT_ACCESS_TOKEN=kpat_api_key_here

# Optional: The API region to use (defaults to US)
# Possible values: US, EU, AU, ME, IN
export KONNECT_REGION=us

Herramientas Disponibles

El servidor proporciona herramientas organizadas en tres categorías:

Herramientas de Análisis

Consultar Solicitudes de API

Consulta y analiza solicitudes de la puerta de enlace de API de Kong con filtros personalizables.

Inputs:
- timeRange: Time range for data retrieval (15M, 1H, 6H, 12H, 24H, 7D)
- statusCodes: Filter by specific HTTP status codes
- excludeStatusCodes: Exclude specific HTTP status codes
- httpMethods: Filter by HTTP methods
- consumerIds: Filter by consumer IDs
- serviceIds: Filter by service IDs
- routeIds: Filter by route IDs
- maxResults: Maximum number of results to return

Obtener Solicitudes de Consumidor

Analiza las solicitudes de API realizadas por un consumidor específico.

Inputs:
- consumerId: ID of the consumer to analyze
- timeRange: Time range for data retrieval
- successOnly: Show only successful (2xx) requests
- failureOnly: Show only failed (non-2xx) requests
- maxResults: Maximum number of results to return

Herramientas de Configuración

Listar Servicios

Lista todos los servicios asociados con un plano de control.

Inputs:
- controlPlaneId: Control plane ID
- size: Number of services to return
- offset: Pagination offset token

Listar Rutas

Lista todas las rutas asociadas con un plano de control.

Inputs:
- controlPlaneId: Control plane ID
- size: Number of routes to return
- offset: Pagination offset token

Listar Consumidores

Lista todos los consumidores asociados con un plano de control.

Inputs:
- controlPlaneId: Control plane ID
- size: Number of consumers to return
- offset: Pagination offset token

Listar Plugins

Lista todos los plugins asociados con un plano de control.

Inputs:
- controlPlaneId: Control plane ID
- size: Number of plugins to return
- offset: Pagination offset token
- includeRawConfig: Set to true to include raw plugin configuration values (defaults to false)

Herramientas de Planos de Control

Listar Planos de Control

Lista todos los planos de control en tu organización.

Inputs:
- pageSize: Number of control planes per page
- pageNumber: Page number to retrieve
- filterName: Filter control planes by name
- filterClusterType: Filter by cluster type
- filterCloudGateway: Filter by cloud gateway capability
- labels: Filter by labels
- sort: Sort field and direction

Obtener Plano de Control

Obtén información detallada sobre un plano de control específico.

Inputs:
- controlPlaneId: Control plane ID to retrieve

Listar Membresías de Grupos de Planos de Control

Lista todos los planos de control que son miembros de un grupo específico.

Inputs:
- groupId: Control plane group ID
- pageSize: Number of members to return per page
- pageAfter: Cursor for pagination

Verificar Membresía de Grupo de Plano de Control

Verifica si un plano de control es miembro de algún grupo.

Inputs:
- controlPlaneId: Control plane ID to check

Uso con Claude

Nota: Esta configuración se proporciona como referencia histórica. No hay soporte disponible para problemas de configuración.

Para usar este servidor MCP con Claude para Desktop:

  1. Instala Claude para Desktop

  2. Crea o edita el archivo de configuración de Claude Desktop:

    • MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  3. Agrega la siguiente configuración:

{
  "mcpServers": {
    "kong-konnect": {
      "command": "node",
      "args": [
        "/absolute/path/to/mcp-konnect/build/index.js"
      ],
      "env": {
        "KONNECT_ACCESS_TOKEN": "kpat_api_key_here",
        "KONNECT_REGION": "us"
      }
    }
  }
}
  1. Reinicia Claude para Desktop
  2. Las herramientas de Kong Konnect ahora estarán disponibles para que Claude las use

Ejemplos de Flujos de Trabajo

Análisis de Tráfico de API

  1. Primero, lista todos los planos de control:

    Please list all control planes in my Kong Konnect organization.
    
  2. Luego, lista los servicios para un plano de control específico:

    List all services for control plane [CONTROL_PLANE_ID].
    
  3. Consulta las solicitudes de API para un servicio específico:

    Show me all API requests for service [SERVICE_NAME/ID] in the last hour that had 5xx status codes.
    

Solución de Problemas de Consumidores

  1. Lista los consumidores para un plano de control:

    List all consumers for control plane [CONTROL_PLANE_ID].
    
  2. Analiza las solicitudes para un consumidor específico:

    Show me all requests made by consumer [CONSUMER_NAME/ID] in the last 24 hours.
    
  3. Verifica errores o patrones comunes:

    What are the most common errors experienced by this consumer?
    

Desarrollo

⚠️ Este proyecto ya no acepta contribuciones. El repositorio será archivado como solo lectura. Las solicitudes de extracción y los problemas no serán revisados ni fusionados.

Notas históricas de desarrollo:

  • npm test ejecuta la compilación de TypeScript y la suite de pruebas del repositorio.
  • build/ es un artefacto generado confirmado en este repositorio y debe regenerarse con npm run build después de cambios en src/.

Solución de Problemas

Nota: No se proporciona soporte para este proyecto obsoleto. La información a continuación se conserva solo como referencia.

Problemas Comunes

Errores de Conexión

  • Verifica que tu clave de API sea válida y tenga los permisos necesarios
  • Comprueba que la región de la API esté especificada correctamente
  • Asegúrate de que tu red pueda conectarse a la API de Kong Konnect

Errores de Autenticación

  • Regenera tu clave de API en el portal de Kong Konnect
  • Comprueba que las variables de entorno estén configuradas correctamente

Datos No Encontrados

  • Verifica que los IDs utilizados en las solicitudes sean correctos
  • Comprueba que los recursos existan en el plano de control especificado
  • Asegúrate de que los rangos de tiempo sean válidos para las consultas de análisis

Créditos

Creado por Kong. Inspirado originalmente en el Agent Toolkit de Stripe.