Anunciando la Vista Previa del Servidor NuGet MCP

Anunciando la Vista Previa del Servidor NuGet MCP

El mes pasado, anunciamos el soporte para construir servidores MCP personalizados con .NET y publicarlos en NuGet. Basándonos en esa sólida base, hoy nos complace anunciar el Servidor NuGet MCP oficial, una innovación que le permite integrar información de paquetes NuGet en tiempo real y herramientas de gestión directamente en su flujo de trabajo de desarrollo potenciado por IA.

¿Qué es un Servidor MCP?

El Model Context Protocol (MCP) es un estándar abierto diseñado para permitir que los asistentes de IA se conecten de forma segura a fuentes de datos y herramientas externas. Los servidores MCP actúan como puentes esenciales entre estos asistentes de IA y diversos servicios, facilitando una integración fluida y potenciando sus funcionalidades.

Dado que el ecosistema de paquetes NuGet está en constante evolución, los Grandes Modelos de Lenguaje (LLMs) inevitablemente se desactualizan con el tiempo. Surge así la necesidad crítica de una solución que les proporcione información en tiempo real. El Servidor NuGet MCP aborda precisamente esta necesidad, ofreciendo a los LLMs datos actualizados sobre paquetes nuevos y modificados que han sido publicados después de la fecha de corte de su entrenamiento. Además de la información, proporciona herramientas robustas para completar tareas de gestión de paquetes.

Una característica destacada es su capacidad para conectarse a sus fuentes de paquetes configuradas, incluyendo feeds privados, lo que proporciona una visión más completa y precisa de sus dependencias. El Servidor NuGet MCP integra un algoritmo avanzado llamado NuGetSolver, desarrollado en colaboración con Microsoft Research. Esta tecnología simplifica drásticamente el proceso de resolución de conflictos de dependencias de NuGet en sus proyectos, automatizando lo que tradicionalmente ha sido una tarea compleja y propensa a errores.

Primeros Pasos con el Servidor NuGet MCP

El Servidor NuGet MCP está disponible como un paquete NuGet, aprovechando la nueva funcionalidad del ecosistema .NET para implementar y liberar servidores MCP.

Requisitos Previos

Para comenzar a utilizar el Servidor NuGet MCP, es indispensable tener instalado .NET 10 Preview 6 o una versión posterior en su sistema. Puede descargarlo desde la página oficial de descargas de .NET.

Configuración

Para configurar el Servidor NuGet MCP, añada la siguiente configuración a su cliente MCP:

{
  "servers": {
    "nuget": {
      "type": "stdio",
      "command": "dnx",
      "args": [
        "NuGet.Mcp.Server",
        "--prerelease",
        "--yes"
      ]
    }
  }
}

Nota importante: El servidor MCP en NuGet.org se encuentra actualmente en fase de vista previa (preview). Por ello, es necesario utilizar el flag --prerelease al instalarlo. Esto garantiza que reciba automáticamente las últimas versiones previas a medida que se lanzan, permitiéndole estar al día con las funcionalidades más recientes.

Uso de una Versión Específica

Si prefiere la estabilidad de una versión particular del Servidor MCP en lugar de las actualizaciones automáticas a la última vista previa, puede especificar la versión exacta directamente en la configuración:

{
  "servers": {
    "nuget": {
      "type": "stdio",
      "command": "dnx",
      "args": [
        "NuGet.Mcp.Server@0.2.0-preview",
        "--yes"
      ]
    }
  }
}

Capacidades Actuales del Servidor NuGet MCP

El Servidor NuGet MCP, en su estado actual de vista previa, ofrece las siguientes funcionalidades clave para optimizar la gestión de sus paquetes:

  • Descubrimiento de Versiones de Paquetes: Permite identificar rápidamente la última versión disponible de cualquier paquete en sus fuentes de NuGet configuradas, incluyendo feeds privados. Esto asegura que siempre esté al tanto de las versiones más recientes.
  • Actualizaciones de Seguridad: Facilita la actualización de paquetes para resolver vulnerabilidades de seguridad. Esta funcionalidad está diseñada para actualizar a la versión más baja compatible que solucione los problemas de seguridad detectados, minimizando así la probabilidad de que la actualización introduzca cambios disruptivos en su proyecto. Se prioriza la estabilidad sin comprometer la seguridad.
  • Actualizaciones de Versión: Permite actualizar las versiones de los paquetes a la versión más alta compatible con el framework de destino de su proyecto. A diferencia de muchas herramientas actuales que no consideran el framework de destino, lo que a menudo causa fallos en las actualizaciones, el Servidor NuGet MCP tiene en cuenta esta compatibilidad crucial, garantizando actualizaciones exitosas y una mayor estabilidad.

Integración con Herramientas de Desarrollo

Visual Studio

Para integrar el Servidor NuGet MCP en Visual Studio, simplemente añada la siguiente configuración a su archivo .mcp.json, ya sea junto a su archivo de solución o en la ubicación global %UserProfile%\.mcp.json:

{
  "servers": {
    "nuget": {
      "type": "stdio",
      "command": "dnx",
      "args": [
        "NuGet.Mcp.Server",
        "--prerelease",
        "--yes"
      ]
    }
  }
}

Visual Studio busca configuraciones de servidores MCP en varias ubicaciones. Para obtener información detallada sobre estos puntos de detección automática, consulte la documentación oficial en Ubicaciones de archivos para el descubrimiento automático de la configuración MCP.

Una vez configurado correctamente, el Servidor NuGet MCP se iniciará automáticamente, y su estado debería reflejarse de manera similar a la siguiente imagen en Visual Studio:

Configuración del servidor MCP en Visual Studio

VS Code

La forma más sencilla de añadir servidores MCP a VS Code es utilizando los enlaces directos de instalación proporcionados para su versión específica:

Instalar en VS Code Instalar en VS Code Insiders

Alternativamente, puede añadir el Servidor NuGet MCP manualmente a su configuración de VS Code. Para ello, inserte el siguiente fragmento en su archivo .vscode/mcp.json dentro de su proyecto:

{
  "servers": {
    "nuget": {
      "type": "stdio",
      "command": "dnx",
      "args": [
        "NuGet.Mcp.Server",
        "--prerelease",
        "--yes"
      ]
    }
  }
}

Una vez configurado y en funcionamiento, el Servidor NuGet MCP debería iniciarse automáticamente y mostrar un aspecto similar al de la siguiente captura de pantalla en VS Code:

Configuración del servidor MCP en VS Code

Agente de Codificación de GitHub Copilot

El Agente de Codificación de GitHub Copilot puede aprovechar el Servidor NuGet MCP para proporcionar asistencia avanzada en la gestión de dependencias dentro de sus repositorios. Esto simplifica significativamente el mantenimiento y la actualización de las referencias a paquetes de sus proyectos, optimizando el ciclo de desarrollo. Dado que el Servidor NuGet MCP requiere el SDK de .NET 10 Preview 6 o superior para su funcionamiento, deberá añadir el siguiente archivo de flujo de trabajo a su repositorio:

.github/workflows/copilot-setup-steps.yml

name: "Copilot Setup Steps"

on:
  workflow_dispatch:
  push:
    paths:
      - .github/workflows/copilot-setup-steps.yml
  pull_request:
    paths:
      - .github/workflows/copilot-setup-steps.yml

jobs:
  # El job DEBE llamarse `copilot-setup-steps` para que Copilot lo detecte.
  copilot-setup-steps:
    runs-on: ubuntu-latest

    permissions:
      contents: read

    steps:
      - name: Instalar .NET 10.x
        uses: actions/setup-dotnet@v4
        with:
          dotnet-version: |
            10.x
          dotnet-quality: preview

Para más información sobre la personalización del entorno de desarrollo para el agente de codificación de Copilot, consulte Personalizar el entorno de desarrollo para el agente de codificación de Copilot.

Para configurar el Servidor NuGet MCP, acceda a Settings -> Copilot -> Coding agent en su repositorio de GitHub y añada la siguiente configuración en la sección «MCP Configuration»:

{
  "mcpServers": {
    "nuget": {
      "command": "dnx",
      "args": [
        "NuGet.Mcp.Server",
        "--prerelease",
        "--yes"
      ],
      "tools": ["*"],
      "type": "local"
    }
  }
}

La página de configuración en GitHub debería verse de la siguiente manera, indicando que el servidor MCP está correctamente reconocido y listo para ser utilizado por Copilot:

Configuración del agente de codificación de GitHub Copilot

Estado de la Vista Previa y Comentarios

Es importante destacar que esta es una versión de vista previa del Servidor NuGet MCP. Estamos desarrollando activamente nuevas características y mejoras, y su opinión es fundamental para hacer que esta herramienta sea aún más valiosa para usted. Su aportación garantizará que la herramienta evolucione para satisfacer mejor las necesidades de la comunidad de desarrollo .NET.

Por favor, envíe cualquier comentario, sugerencia o problema que encuentre abriendo un issue en NuGet/Home. Su colaboración es muy apreciada y nos ayudará a moldear el futuro de esta herramienta.

Author: Enagora

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *