Apidog

Plataforma de desarrollo de API colaborativa todo en uno

Diseño de API

Documentación de API

Depuración de API

Simulación de API

Prueba automatizada de

Cómo usar servidores MCP de Azure Functions (Guía para principiantes)

En este tutorial, exploraremos qué es Azure Functions MCP, cómo instalarlo, iniciar un servidor MCP y cómo usarlo con GitHub Copilot.

Daniel Costa

Daniel Costa

Updated on April 15, 2025

El Protocolo de Contexto del Modelo (MCP) es un estándar emergente que permite a las aplicaciones proporcionar contexto y capacidades a los modelos de lenguaje grandes (LLM). Una característica clave de MCP es su capacidad para definir herramientas que los agentes de IA pueden aprovechar para realizar tareas. Azure Functions MCP cierra la brecha entre la computación en la nube sin servidor y las capacidades de asistente de IA, lo que permite a los desarrolladores crear herramientas escalables a las que pueden acceder los agentes de IA.

En este tutorial, exploraremos qué es Azure Functions MCP, cómo instalarlo, cómo iniciar un servidor MCP y cómo usarlo con GitHub Copilot. Al final de esta guía, tendrá un servidor MCP funcional en ejecución al que podrán acceder los agentes de IA para realizar tareas útiles.

Consejo profesional: Mientras crea sus servidores MCP, deberá probar esos puntos finales de la API a fondo. Recomiendo encarecidamente probar Apidog: es la mejor alternativa a Postman que he encontrado para las pruebas y el desarrollo de API.

button

A diferencia de las herramientas de API tradicionales, Apidog ofrece servidores simulados integrados, pruebas automatizadas y un espacio de trabajo colaborativo que es particularmente útil cuando se trabaja con arquitecturas basadas en eventos como Azure Functions.

button

La capacidad de visualizar flujos SSE en tiempo real será invaluable a medida que depure sus implementaciones del servidor MCP. Puede obtenerlo en apidog.com para optimizar su flujo de trabajo de desarrollo.

button

¿Qué es Azure Functions MCP Server?

Azure Functions MCP Server es una función de vista previa experimental que agrega soporte para el Protocolo de Contexto del Modelo (MCP) a Azure Functions, la solución de computación sin servidor de Microsoft. Introduce desencadenadores y enlaces especializados diseñados específicamente para crear herramientas que los agentes de IA pueden usar a través de MCP.

Esta integración permite a los desarrolladores crear servidores MCP remotos a escala de nube con eventos enviados por el servidor (SSE) que pueden ser aprovechados por modelos de IA como los de GitHub Copilot. Azure Functions MCP proporciona una forma sencilla de desarrollar herramientas de asistencia de IA basadas en eventos y de escalado automático en entornos Python, Node.js (TypeScript) y .NET (C#).

El componente clave es el desencadenador de herramientas MCP, que permite que las funciones actúen como herramientas con propiedades definidas que los agentes de IA pueden descubrir e invocar según el contexto.

Cómo instalar Azure Functions MCP Server

Repasemos los pasos para instalar y configurar Azure Functions MCP:

Requisitos previos

  1. Visual Studio Code
  2. Azure Functions Core Tools
  3. .NET SDK 6.0 o posterior (para el desarrollo en C#)
  4. Node.js (para el desarrollo en TypeScript)
  5. Python 3.8 o posterior (para el desarrollo en Python)
  6. Azure CLI (para la implementación en Azure)

Pasos de instalación

Crear un proyecto de Azure Functions: Comience creando un nuevo proyecto de Azure Functions en su idioma preferido. Puede seguir la documentación de Azure Functions para Visual Studio Code para crear un proyecto.

Agregar la extensión MCP:

Para C#:

dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Mcp --version 1.0.0-preview.1

Para Python y Node.js, deberá agregar un paquete de extensión experimental a su archivo host.json:

"extensionBundle": {
  "id": "Microsoft.Azure.Functions.ExtensionBundle.Experimental",
  "version": "[4.*, 5.0.0)"
}

Instalar Azurite (para el desarrollo local): Dado que la extensión MCP usa el almacenamiento de blobs, deberá ejecutar Azurite, el emulador de Azure Storage, localmente:

Abra la paleta de comandos (Shift + Ctrl + P)

Seleccione "Azurite: Start"

Actualice su local.settings.json para usarlo:

{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "UseDevelopmentStorage=true",
    "FUNCTIONS_WORKER_RUNTIME": "dotnet-isolated"
  }
}

Cómo iniciar Azure Functions MCP Server

Ahora que ha instalado la extensión MCP, creemos y ejecutemos un servidor MCP:

Crear una herramienta MCP

Aquí hay un ejemplo de cómo crear una herramienta de utilidad de tiempo simple en C#:

using Microsoft.Azure.Functions.Worker;
using Microsoft.Azure.Functions.Worker.Extensions.Mcp;
using System.Globalization;
using System.Text.Json;

namespace AzfuncMcp;

public class TimeUtil
{
    [Function(nameof(GetCurrentTime))]
    public string GetCurrentTime(
        [McpToolTrigger("getcurrenttime", "Obtiene la hora actual. Si no se especifica ninguna zona horaria, la herramienta devolverá la hora en UTC.")] ToolInvocationContext context,
        [McpToolProperty("timezone", "string", "El nombre de la zona horaria.")] string timezone = "UTC")
    {
        try
        {
            TimeZoneInfo timeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById(timezone);
            DateTime currentTime = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, timeZoneInfo);

            var response = new {
                timezone = timeZoneInfo.StandardName,
                time = currentTime.ToString("yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture),
                displayName = timeZoneInfo.DisplayName
            };

            return JsonSerializer.Serialize(response);
        }
        catch (TimeZoneNotFoundException)
        {
            return $"No se encontró la zona horaria '{timezone}'.";
        }
        catch (InvalidTimeZoneException)
        {
            return $"La zona horaria '{timezone}' no es válida.";
        }
        catch
        {
            return "No se pudo obtener la hora actual.";
        }
    }
}

Configurar Program.cs para MCP

Actualice su archivo Program.cs para registrar la herramienta MCP:

using Microsoft.Azure.Functions.Worker.Builder;
using Microsoft.Extensions.Hosting;
using AzfuncMcp;

var builder = FunctionsApplicationBuilder.CreateBuilder(args);
builder.ConfigureFunctionsWebApplication();
builder.EnableMcpToolMetadata();
builder.ConfigureMcpTool(nameof(TimeUtil.GetCurrentTime))
    .WithProperty("timezone", "string", "La zona horaria.");

builder.Build().Run();

Iniciar el servidor

Para iniciar el servidor MCP localmente:

Asegúrese de que Azurite se esté ejecutando.

Abra una terminal en el directorio de su proyecto.

Ejecute este comando:

func start

O use las funciones de depuración de Visual Studio Code:

  • Abra la vista "Ejecutar y depurar"
  • Seleccione "Adjuntar a .NET Functions"
  • Presione F5 o haga clic en el botón de reproducción verde

Una vez iniciado, se podrá acceder a su servidor MCP en: http://localhost:7071/runtime/webhooks/mcp/sse

Cómo usar Azure Functions MCP Server con GitHub Copilot

Ahora que su servidor MCP está en funcionamiento, conectémoslo a GitHub Copilot:

Configurar GitHub Copilot para usar su servidor MCP

Agregue su servidor MCP a VS Code:

  • Abra la paleta de comandos (Shift + Ctrl + P)
  • Escriba y seleccione "MCP: Add Server"
  • Elija la opción "HTTP (server sent events)"
  • Ingrese la URL: http://localhost:7071/runtime/webhooks/mcp/sse
  • Asigne un nombre a su servidor (por ejemplo, "my-azfunc-mcp-server")

Verifique la configuración: El archivo settings.json en su espacio de trabajo de VS Code debe actualizarse con algo como:

"mcp": {
  "inputs": [],
  "servers": {
    "my-azfunc-mcp-server": {
      "type": "sse",
      "url": "<http://localhost:7071/runtime/webhooks/mcp/sse>"
    }
  }
}

Elimine los servidores de muestra si es necesario: Si hay servidores de muestra preconfigurados (como "mcp-server-time"), es posible que desee eliminarlos para evitar conflictos con su implementación.

Usar su servidor MCP con GitHub Copilot

  1. Abra el chat de GitHub Copilot:
  • Asegúrese de que el modo esté configurado en el modo "Agente" (esto es esencial para la funcionalidad MCP)
  1. Habilite su servidor MCP:
  • Haga clic en el icono de configuración de MCP (icono de llave y destornillador)
  • Asegúrese de que su servidor MCP agregado esté habilitado
  1. Interactúe con su herramienta:
  • En la ventana de chat, haga una pregunta que requiera su herramienta MCP
  • Por ejemplo, con nuestra herramienta de utilidad de tiempo, podría preguntar "¿Qué hora es ahora?" o "¿Cuál es la hora actual en Tokio?"
  • GitHub Copilot le pedirá permiso para usar la herramienta MCP externa
  • Después de hacer clic en "Continuar", Copilot invocará su herramienta MCP y mostrará los resultados
  1. Vea su función en acción: Si se está ejecutando en modo de depuración, puede establecer puntos de interrupción en su función y ver cómo se activan cuando GitHub Copilot invoca su herramienta.

Implementar en Azure

Para uso en producción, querrá implementar su servidor MCP en Azure:

Implemente su aplicación de funciones usando Azure Functions Core Tools o Azure Developer CLI:

func azure functionapp publish <your-function-app-name>

o

azd up

Configure el cliente MCP con autenticación: Al acceder a una Azure Function implementada, deberá proporcionar autenticación. Actualice su settings.json:

"mcp": {
  "inputs": [
    {
      "type": "promptString",
      "id": "functions-mcp-extension-system-key",
      "description": "Azure Functions MCP Extension System Key",
      "password": true
    }
  ],
  "servers": {
    "my-azfunc-mcp-server": {
      "type": "sse",
      "url": "<your-app-name>.azurewebsites.net/runtime/webhooks/mcp/sse",
      "headers": {
        "x-functions-key": "${input:functions-mcp-extension-system-key}"
      }
    }
  }
}

Obtenga su clave de función:

  • Navegue a su aplicación de funciones en Azure Portal
  • Vaya a Claves de aplicación
  • Copie la clave del sistema mcp_extension

Casos de uso de ejemplo

Azure Functions MCP se puede utilizar para varios escenarios:

  1. Gestión de fragmentos de código: Cree herramientas para guardar y recuperar fragmentos de código
  2. Recuperación de datos: Acceda a bases de datos o API para obtener información específica
  3. Cálculos: Realice cálculos complejos que el LLM no puede hacer fácilmente
  4. Integración de sistemas externos: Conéctese a sistemas, API o servicios empresariales

Limitaciones y consideraciones

  • Esta es una vista previa experimental temprana, así que espere cambios importantes a medida que evoluciona la función.
  • En el momento de escribir este artículo, el alojamiento de Windows Azure Functions podría tener problemas con MCP; se recomienda el alojamiento de Linux.
  • Si bien MCP actualmente admite herramientas, otras funciones como las indicaciones se agregarán con el tiempo.
  • Dado que esta es una función de vista previa, aún no califica para los planes de soporte estándar de Azure.

Conclusión

Azure Functions MCP proporciona una forma poderosa de extender los agentes de IA con herramientas personalizadas que pueden aprovechar toda la potencia del ecosistema de Azure. Siguiendo esta guía, ha aprendido cómo instalar, configurar y usar Azure Functions MCP con GitHub Copilot.

A medida que MCP se adopte más ampliamente, tener estas habilidades le permitirá crear aplicaciones cada vez más sofisticadas impulsadas por IA que combinen las capacidades de razonamiento de los modelos de lenguaje grandes con las capacidades de ejecución de su código personalizado.

Recuerde que MCP es un estándar en evolución y Azure Functions MCP está en vista previa, así que esté atento a la documentación oficial y a los foros de la comunidad para obtener actualizaciones y mejores prácticas.

Recursos

Siguiendo esta guía, ahora tiene el conocimiento para aprovechar Azure Functions MCP para crear herramientas poderosas que pueden ser utilizadas por agentes de IA a través de GitHub Copilot y otras interfaces compatibles con MCP.

Cómo usar Ollama: Guía Completa para Principiantes sobre LLMs Locales con OllamaPunto de vista

Cómo usar Ollama: Guía Completa para Principiantes sobre LLMs Locales con Ollama

El panorama de la inteligencia artificial evoluciona constantemente, y los Grandes Modelos de Lenguaje (LLM) se vuelven cada vez más potentes y accesibles. Aunque muchos interactúan con estos modelos a través de servicios basados en la nube, existe un movimiento creciente enfocado en ejecutarlos directamente en computadoras personales. Aquí es donde entra Ollama. Ollama es una herramienta potente pero fácil de usar, diseñada para simplificar drásticamente el complejo proceso de descargar, config

Mikael Svenson

April 28, 2025

¿Dónde Descargar Swagger UI en Español Gratis?Punto de vista

¿Dónde Descargar Swagger UI en Español Gratis?

¿Necesitas Swagger UI en español? Este artículo explica por qué no existe una descarga oficial gratuita y cómo habilitar la traducción. Explora las características de Swagger y por qué Apidog es la alternativa superior para diseño, pruebas y documentación API integrados.

Oliver Kingsley

April 23, 2025

¿Dónde Descargar Postman en Español Gratis?Punto de vista

¿Dónde Descargar Postman en Español Gratis?

¿Puedes descargar Postman en español gratis? Aunque Postman carece de soporte nativo en español, existen soluciones. Explóralas y descubre Apidog, una potente alternativa unificada a Postman diseñada para optimizar todo tu flujo de trabajo de API, sin importar el idioma.

Oliver Kingsley

April 22, 2025