C

Claude Desktop Azure AI 搜索服务器

@farzad528/mcp-server-azure-ai-agents
0 Stars 407 次浏览 farzad528 更新于 2026-08-23

将 Claude Desktop 与 Azure AI Search 集成,允许用户使用关键字、向量或混合搜索方法查询搜索索引。

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "azure-ai-agent": {
      "args": [
        "C:\\path\\to\\azure_ai_agent_service_server.py"
      ],
      "command": "C:\\path\\to\\.venv\\Scripts\\python.exe",
      "env": {
        "AI_SEARCH_CONNECTION_NAME": "your-search-connection-name",
        "AI_SEARCH_INDEX_NAME": "your-index-name",
        "BING_CONNECTION_NAME": "your-bing-connection-name",
        "MODEL_DEPLOYMENT_NAME": "your-model-deployment-name",
        "PROJECT_CONNECTION_STRING": "your-project-connection-string"
      }
    },
    "azure-search": {
      "args": [
        "C:\\path\\to\\azure_search_server.py"
      ],
      "command": "C:\\path\\to\\.venv\\Scripts\\python.exe",
      "env": {
        "AZURE_SEARCH_API_KEY": "your-api-key",
        "AZURE_SEARCH_INDEX_NAME": "your-index-name",
        "AZURE_SEARCH_SERVICE_ENDPOINT": "https://your-service-name.search.windows.net"
      }
    }
  }
}

该服务需要配置环境变量:AZURE_SEARCH_API_KEY、AZURE_SEARCH_INDEX_NAME、AZURE_SEARCH_SERVICE_ENDPOINT

服务介绍

Azure AI 代理服务 + Azure AI 搜索 MCP 服务器

一个模型上下文协议 (MCP) 服务器,通过 Azure AI 服务使 Claude Desktop 能够搜索您的内容。您可以选择使用 Azure AI 代理服务(同时支持文档搜索和网络搜索)或直接集成 Azure AI 搜索。

演示


概述

该项目提供了两个 MCP 服务器实现,以连接 Claude Desktop 和 Azure 搜索功能:

  1. Azure AI 代理服务实现(推荐) - 使用强大的 Azure AI 代理服务提供:

    • Azure AI 搜索工具 - 使用 AI 增强的结果搜索您已索引的文档
    • Bing 网络基础工具 - 带有来源引用的网络搜索
  2. 直接 Azure AI 搜索实现 - 直接连接到 Azure AI 搜索,包含三种方法:

    • 关键词搜索 - 精确的词汇匹配
    • 向量搜索 - 使用嵌入进行语义相似度搜索
    • 混合搜索 - 结合关键词和向量搜索

特性

  • AI 增强的搜索 - Azure AI 代理服务通过智能处理优化搜索结果
  • 多数据源 - 同时搜索您的私人文档和公共网络
  • 来源引用 - 网络搜索结果包括对原始来源的引用
  • 灵活的实现 - 可以选择 Azure AI 代理服务或直接集成 Azure AI 搜索
  • 无缝 Claude 集成 - 所有搜索功能都可以通过 Claude Desktop 的界面访问
  • 可定制 - 容易扩展或修改搜索行为

快速链接


要求

  • Python: 3.10 或更高版本
  • Claude Desktop: 最新版本
  • Azure 资源:
    • 包含矢量化文本数据索引的 Azure AI 搜索服务
    • 对于代理服务:具有 Azure AI 搜索和 Bing 连接的 Azure AI 项目
  • 操作系统: Windows 或 macOS(提供了针对 Windows 的说明,但可以适应)

Azure AI 代理服务实现(推荐)

设置指南

  1. 项目目录:

    mkdir mcp-server-azure-ai-search
    cd mcp-server-azure-ai-search
    
  2. 创建一个 .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. 设置虚拟环境:

    uv venv
    .venv\Scripts\activate
    uv pip install "mcp[cli]" azure-identity python-dotenv azure-ai-projects
    
  4. 使用 azure_ai_agent_service_server.py 脚本 与 Azure AI Agent Service 集成。

Azure AI Agent Service 设置

在使用实现之前,您需要:

  1. 创建一个 Azure AI 项目:

    • 前往 Azure 门户并创建一个新的 Azure AI 项目
    • 记录项目连接字符串和模型部署名称
  2. 创建一个 Azure AI 搜索连接:

    • 在您的 Azure AI 项目中,添加到您的 Azure AI 搜索服务的连接
    • 记录连接名称和索引名称
  3. 创建一个 Bing 网络搜索连接:

    • 在您的 Azure AI 项目中,添加到 Bing 搜索服务的连接
    • 记录连接名称
  4. 使用 Azure 进行身份验证:

    az login
    

配置 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"
      }
    }
  }
}

注意: 将路径占位符替换为您的实际项目路径。


直接 Azure AI 搜索实现

对于那些更喜欢直接集成 Azure AI 搜索而不使用代理服务的人:

  1. 创建一个不同的 .env 文件:

    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. 安装依赖项:

    uv pip install "mcp[cli]" azure-search-documents==11.5.2 azure-identity python-dotenv
    
  3. 使用 azure_search_server.py 脚本 直接与 Azure AI 搜索集成。

  4. 配置 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"
          }
        }
      }
    }
    

测试服务器

  1. 重启 Claude Desktop 以加载新配置
  2. 查看输入字段右下角的 MCP 工具图标(锤子图标)
  3. 尝试以下查询:
    • "在我的 Azure 搜索索引中搜索有关 AI 的信息"
    • "在网上搜索 LLMs 的最新发展"
    • "使用混合搜索查找有关神经网络的信息"

故障排除

  • 服务器未出现:

    • 检查 Claude Desktop 日志(在 Windows 上位于 %APPDATA%\Claude\logs\mcp*.log
    • 验证配置中的文件路径和环境变量
    • 尝试直接运行服务器:python azure_ai_agent_service_server.pyuv run python azure_ai_agent_service_server.py
  • Azure AI 代理服务问题:

    • 确保您的 Azure AI 项目已正确配置
    • 验证连接是否存在且配置正确
    • 检查您的 Azure 认证状态

自定义服务器

  • 修改工具指令: 调整提供给每个代理的指令,以改变它们处理查询的方式
  • 添加新工具: 使用 @mcp.tool() 装饰器来集成额外的工具
  • 自定义响应格式: 编辑响应的格式以及返回给 Claude Desktop 的方式
  • 调整网络搜索参数: 修改网络搜索工具,使其专注于特定领域

许可证

此项目根据 MIT 许可证发布。

相关 MCP 服务