Azure AI Agent & Search

Busca contenido usando Azure AI Agent Service y Azure AI Search.

Documentación

Servidor MCP de Azure AI Agent Service + Azure AI Search

Un servidor de Model Context Protocol (MCP) que permite a Claude Desktop buscar en tu contenido usando servicios de Azure AI. Elige entre Azure AI Agent Service (con búsqueda de documentos y búsqueda web) o integración directa con Azure AI Search.

demo


Descripción general

Este proyecto proporciona dos implementaciones de servidor MCP para conectar Claude Desktop con las capacidades de búsqueda de Azure:

  1. Implementación de Azure AI Agent Service (Recomendada) - Utiliza el potente Azure AI Agent Service para proporcionar:

    • Herramienta de Azure AI Search - Busca en tus documentos indexados con resultados mejorados por IA
    • Herramienta de Bing Web Grounding - Busca en la web con citas de fuentes
  2. Implementación directa de Azure AI Search - Se conecta directamente a Azure AI Search con tres métodos:

    • Búsqueda por palabras clave - Coincidencias léxicas exactas
    • Búsqueda vectorial - Similitud semántica mediante embeddings
    • Búsqueda híbrida - Combinación de búsquedas por palabras clave y vectoriales

Características

  • Búsqueda mejorada por IA - Azure AI Agent Service optimiza los resultados de búsqueda con procesamiento inteligente
  • Múltiples fuentes de datos - Busca tanto en tus documentos privados como en la web pública
  • Citas de fuentes - Los resultados de búsqueda web incluyen citas a las fuentes originales
  • Implementación flexible - Elige entre Azure AI Agent Service o integración directa con Azure AI Search
  • Integración perfecta con Claude - Todas las capacidades de búsqueda accesibles a través de la interfaz de Claude Desktop
  • Personalizable - Fácil de extender o modificar el comportamiento de búsqueda

Enlaces rápidos


Requisitos

  • Python: Versión 3.10 o superior
  • Claude Desktop: Última versión
  • Recursos de Azure:
    • Servicio de Azure AI Search con un índice que contenga datos de texto vectorizados
    • Para Agent Service: Proyecto de Azure AI con conexiones de Azure AI Search y Bing
  • Sistema operativo: Windows o macOS (instrucciones proporcionadas para Windows, pero adaptables)

Implementación de Azure AI Agent Service (Recomendada)

Guía de configuración

  1. Directorio del proyecto:

    mkdir mcp-server-azure-ai-search
    cd mcp-server-azure-ai-search
    
  2. Crea un archivo .env:

    echo "PROJECT_CONNECTION_STRING=your-project-connection-string" > .env
    echo "MODEL_DEPLOYMENT_NAME=your-model-deployment-name" >> .env
    echo "AI_SEARCH_CONNECTION_NAME=your-search-connection-name" >> .env
    echo "BING_CONNECTION_NAME=your-bing-connection-name" >> .env
    echo "AI_SEARCH_INDEX_NAME=your-index-name" >> .env
    
  3. Configura el entorno virtual:

    uv venv
    .venv\Scripts\activate
    uv pip install "mcp[cli]" azure-identity python-dotenv azure-ai-projects
    
  4. Usa el script azure_ai_agent_service_server.py para la integración con Azure AI Agent Service.

Configuración de Azure AI Agent Service

Antes de usar la implementación, necesitas:

  1. Crear un proyecto de Azure AI:

    • Ve al Portal de Azure y crea un nuevo proyecto de Azure AI
    • Anota la cadena de conexión del proyecto y el nombre de la implementación del modelo
  2. Crear una conexión de Azure AI Search:

    • En tu proyecto de Azure AI, agrega una conexión a tu servicio de Azure AI Search
    • Anota el nombre de la conexión y el nombre del índice
  3. Crear una conexión de Búsqueda web de Bing:

    • En tu proyecto de Azure AI, agrega una conexión al servicio de Búsqueda de Bing
    • Anota el nombre de la conexión
  4. Autentícate con Azure:

    az login
    

Configuración de Claude Desktop

{
  "mcpServers": {
    "azure-ai-agent": {
      "command": "C:\\path\\to\\.venv\\Scripts\\python.exe",
      "args": ["C:\\path\\to\\azure_ai_agent_service_server.py"],
      "env": {
        "PROJECT_CONNECTION_STRING": "your-project-connection-string",
        "MODEL_DEPLOYMENT_NAME": "your-model-deployment-name",
        "AI_SEARCH_CONNECTION_NAME": "your-search-connection-name",
        "BING_CONNECTION_NAME": "your-bing-connection-name",
        "AI_SEARCH_INDEX_NAME": "your-index-name"
      }
    }
  }
}

Nota: Reemplaza los marcadores de posición de rutas con las rutas reales de tu proyecto.


Implementación directa de Azure AI Search

Para quienes prefieren la integración directa con Azure AI Search sin el Agent Service:

  1. Crea un archivo .env diferente:

    echo "AZURE_SEARCH_SERVICE_ENDPOINT=https://your-service-name.search.windows.net" > .env
    echo "AZURE_SEARCH_INDEX_NAME=your-index-name" >> .env
    echo "AZURE_SEARCH_API_KEY=your-api-key" >> .env
    
  2. Instala las dependencias:

    uv pip install "mcp[cli]" azure-search-documents==11.5.2 azure-identity python-dotenv
    
  3. Usa el script azure_search_server.py para la integración directa con Azure AI Search.

  4. Configura Claude Desktop:

    {
      "mcpServers": {
        "azure-search": {
          "command": "C:\\path\\to\\.venv\\Scripts\\python.exe",
          "args": ["C:\\path\\to\\azure_search_server.py"],
          "env": {
            "AZURE_SEARCH_SERVICE_ENDPOINT": "https://your-service-name.search.windows.net",
            "AZURE_SEARCH_INDEX_NAME": "your-index-name",
            "AZURE_SEARCH_API_KEY": "your-api-key"
          }
        }
      }
    }
    

Prueba del servidor

  1. Reinicia Claude Desktop para cargar la nueva configuración
  2. Busca el ícono de herramientas MCP (ícono de martillo) en la parte inferior derecha del campo de entrada
  3. Prueba consultas como:
    • "Busca información sobre IA en mi índice de Azure Search"
    • "Busca en la web los últimos avances en LLMs"
    • "Encuentra información sobre redes neuronales usando búsqueda híbrida"

Solución de problemas

  • El servidor no aparece:

    • Revisa los registros de Claude Desktop (ubicados en %APPDATA%\Claude\logs\mcp*.log en Windows)
    • Verifica las rutas de archivos y las variables de entorno en la configuración
    • Prueba ejecutar el servidor directamente: python azure_ai_agent_service_server.py o uv run python azure_ai_agent_service_server.py
  • Problemas con Azure AI Agent Service:

    • Asegúrate de que tu proyecto de Azure AI esté configurado correctamente
    • Verifica que las conexiones existan y estén configuradas adecuadamente
    • Comprueba tu estado de autenticación de Azure

Personalización de tu servidor

  • Modificar instrucciones de herramientas: Ajusta las instrucciones proporcionadas a cada agente para cambiar cómo procesan las consultas
  • Agregar nuevas herramientas: Usa el decorador @mcp.tool() para integrar herramientas adicionales
  • Personalizar el formato de respuestas: Edita cómo se formatean y devuelven las respuestas a Claude Desktop
  • Ajustar parámetros de búsqueda web: Modifica la herramienta de búsqueda web para enfocarse en dominios específicos

Licencia

Este proyecto está licenciado bajo la Licencia MIT.