Yapi

Un servidor MCP para la plataforma de gestión de API Yapi.

Documentación

Servidor MCP de Yapi

Recomendado: Si solo necesitas buscar interfaces de Yapi u obtener detalles de interfaces, usa primero la ligera Yapi Skill. Llama a Yapi mediante scripts locales de Python y no requiere iniciar el servidor MCP de Java/Docker. Usa este proyecto cuando necesites una integración completa con el servidor MCP.

Un servidor de Protocolo de Contexto de Modelo (MCP) para la plataforma de gestión de API Yapi. Este proyecto proporciona una integración perfecta entre asistentes de IA y Yapi, permitiéndote consultar documentación de API, buscar interfaces y gestionar información de API mediante lenguaje natural.

Para la versión en chino de este documento, consulta README_zh.md.

Características

Este servidor MCP proporciona las siguientes herramientas para interactuar con Yapi:

HerramientaDescripción
listProjectsLista todos los proyectos Yapi configurados con sus IDs y nombres
listCategoriesObtiene las categorías de interfaz de un proyecto Yapi específico
listCatInterfacesLista las interfaces dentro de una categoría específica
searchInterfacesBusca interfaces de API por nombre de proyecto, palabra clave o ruta
getInterfaceDetailObtiene información detallada sobre una interfaz de API específica
refreshCacheActualiza manualmente la caché de Yapi
clearProjectCacheLimpia la caché de un proyecto específico
getCacheStatsObtiene información de estadísticas de caché

Requisitos previos

Elige uno de los siguientes entornos:

  • Entorno Java: JDK 21+ y Maven 3.6+
  • Entorno Docker: Docker y Docker Compose

Inicio rápido

Método 1: Ejecutar con Java

# Clone the repository
git clone https://github.com/yyykf/yapi-mcp-server.git
cd yapi-mcp-server

# Configure Yapi URL and project tokens
vim src/main/resources/application-mcp.yml

# Build the project
mvn clean package

# Run the application
java -jar target/yapi-mcp-server-0.0.1-SNAPSHOT.jar

Método 2: Ejecutar con Docker

# Clone the repository
git clone https://github.com/yyykf/yapi-mcp-server.git
cd yapi-mcp-server

# Configure Yapi URL and project tokens
vim src/main/resources/application-mcp.yml

# Run with Docker Compose
docker-compose up -d

Configuración

Antes de ejecutar la aplicación, debes configurar los ajustes de conexión a Yapi en src/main/resources/application-mcp.yml:

spring:
  cloud:
    openfeign:
      client:
        config:
          yapiClient:
            url: http://yapi.com # Replace with your Yapi URL
yapi:
  project-tokens:
    123456: "your-project-token-1"  # Project ID: Token
    789012: "your-project-token-2"  # Add more projects as needed

Construcción de imágenes Docker multiarquitectura

Si necesitas construir y publicar imágenes Docker multiarquitectura manualmente, usa el script proporcionado:

./build-and-push.sh <version> <docker-username> <docker-password>

Ejemplo:

./build-and-push.sh 1.0.0 myusername mypassword

Este script construirá imágenes para las arquitecturas amd64 y arm64 y creará un manifiesto multiarquitectura.

Documentación

Para documentación del proyecto más detallada e información, puedes explorar el proyecto usando DeepWiki:

Ask DeepWiki

Integración con Cursor

Método 1: Instalación con un clic

Haz clic en el botón de abajo para instalar automáticamente el servidor MCP en Cursor:

Install MCP Server

Método 2: Configuración manual

Agrega la siguiente configuración a tu archivo de ajustes MCP de Cursor (mcp.json):

{
  "mcpServers": {
    "yapi": {
      "url": "http://127.0.0.1:8888/sse"
    }
  }
}

Verificación de salud

Una vez que la aplicación esté en ejecución, puedes verificar su estado de salud:

curl http://localhost:8888/actuator/health

O visita http://localhost:8888/actuator/health en tu navegador.

Ejemplos de uso

Después de configurar el servidor MCP en Cursor, puedes usar lenguaje natural para interactuar con tu instancia de Yapi:

  • "Muéstrame todos los proyectos disponibles"
  • "Lista todas las categorías de API en el proyecto 123456"
  • "Busca APIs de inicio de sesión"
  • "Obtén detalles de la interfaz ID 789"
  • "¿Cuál es el estado de la caché?"

Licencia

Este proyecto está licenciado bajo la Licencia MIT: consulta el archivo LICENSE para más detalles.