NEI MCP Server

Un servidor para interactuar con la plataforma NEI para consultar recursos de proyectos.

Documentación

nei-mcp-server

Un servidor de herramientas basado en fastmcp para interactuar con la plataforma NEI, que proporciona capacidades para consultar recursos de proyectos NEI.

Funciones principales

Este proyecto encapsula las funciones comunes de la plataforma NEI como una serie de herramientas MCP, lo que facilita la consulta e integración rápida. Las herramientas compatibles son las siguientes:

  • sync_nei_project: Fuerza la sincronización de los datos más recientes del proyecto desde la plataforma remota NEI y actualiza la caché local. Cuando sospeches que los datos locales no están actualizados, o necesites obtener información sobre interfaces backend o modelos de datos que acaban de cambiar, debes llamar a esta herramienta primero.
  • search_interfaces_by_uri: Busca de forma difusa recursos de interfaz en proyectos NEI según el URI (ruta de interfaz) definido en la interfaz.
  • search_interfaces_by_url: Busca recursos de interfaz con precisión según el pid y el id del enlace de detalles de la interfaz NEI, por ejemplo, http://nei.example.com/interface/detail/?pid=10135&id=13015.
  • search_interfaces_by_name: Busca de forma difusa recursos de interfaz en proyectos NEI según el nombre de la interfaz.
  • search_groups_by_name: Busca grupos de negocio en proyectos NEI según el nombre del grupo.

Preparación del entorno

  • Node.js (se recomienda v20 o superior)
  • pnpm (opcional, recomendado)

Instalación y configuración

  1. Clonar el proyecto

    git clone https://github.com/leila-huang/nei-mcp-server.git
    cd nei-mcp-server
    
  2. Instalar dependencias Usando npm:

    npm install
    

    O con pnpm:

    pnpm install
    

Herramientas de depuración

  1. Depuración con inspect Usando el comando inspect de fastmcp puedes probar interactivamente todas las herramientas localmente. Debes configurar SERVER_URL y PROJECT_ID en la página web.

    npm run inspect
    

    Este comando proporciona una interfaz interactiva donde puedes seleccionar la herramienta a ejecutar e ingresar parámetros, ideal para depuración y exploración.

  2. Depuración con cliente mcp

        {
          "mcpServers": {
              "nei-mcp-server": {
                  "command": "npx",
                  "args": ["tsx", "/PATH/TO/YOUR_PROJECT/src/index.ts"],
                  "env": {
                      "SERVER_URL": "xxx",
                      "PROJECT_ID": "xxx"
                  }
              }
          }
        }
    

Guía de uso de mcp

```bash
{
    "mcpServers": {
        "nei-mcp-server": {
            "command": "npx",
            "args": [
                "-y",
                "@leila329/nei-mcp-server"
            ],
            "env": {
                "SERVER_URL": "xxx",
                "PROJECT_ID": "xxx"
            }
        }
    }
}
```

Mecanismo de caché

Para mejorar el rendimiento y reducir la presión de solicitudes al servidor NEI, este proyecto implementa una estrategia de caché simple:

  1. Caché en memoria: Los datos se almacenan en memoria después de la primera carga. Durante una única ejecución del servicio, las solicitudes posteriores idénticas se devolverán directamente desde la memoria, evitando solicitudes de red repetidas. Después de reiniciar el servicio, la caché en memoria se vacía.
  2. Sincronización de red: Al iniciar el servicio, o al llamar manualmente a la herramienta sync_nei_project, se obtienen los datos más recientes del proyecto desde el servidor remoto NEI y se actualiza la caché en memoria.

Puedes llamar a la herramienta sync_nei_project para forzar manualmente la sincronización de red y asegurarte de que los datos estén en la versión más reciente.