Azure AI Search MCP Server

Azure AI Search MCP Server

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

Category
访问服务器

README

Azure AI Agent Service + Azure AI Search MCP 服务器

一个模型上下文协议 (MCP) 服务器,使 Claude Desktop 能够使用 Azure AI 服务搜索您的内容。您可以选择 Azure AI Agent Service(同时具有文档搜索和 Web 搜索)或直接集成 Azure AI Search。

demo


概述

本项目提供了两种 MCP 服务器实现,用于将 Claude Desktop 与 Azure 搜索功能连接:

  1. Azure AI Agent Service 实现(推荐) - 使用强大的 Azure AI Agent Service 提供:

    • Azure AI Search 工具 - 使用 AI 增强的结果搜索您索引的文档
    • Bing Web Grounding 工具 - 搜索带有来源引用的 Web
  2. 直接 Azure AI Search 实现 - 直接连接到 Azure AI Search,提供三种方法:

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

功能

  • AI 增强搜索 - Azure AI Agent Service 通过智能处理优化搜索结果
  • 多个数据源 - 同时搜索您的私有文档和公共 Web
  • 来源引用 - Web 搜索结果包含原始来源的引用
  • 灵活的实现 - 在 Azure AI Agent Service 或直接 Azure AI Search 集成之间进行选择
  • 无缝 Claude 集成 - 所有搜索功能都可以通过 Claude Desktop 的界面访问
  • 可定制 - 易于扩展或修改搜索行为

快速链接


要求

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

Azure AI Agent Service 实现(推荐)

设置指南

  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 Search 连接:

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

    • 在您的 Azure AI 项目中,添加一个到 Bing Search 服务的连接
    • 记下连接名称
  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 Search 实现

对于那些喜欢直接 Azure AI Search 集成而无需 Agent Service 的人:

  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 Search 集成。

  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 Search 索引中搜索有关 AI 的信息"
    • "在 Web 上搜索 LLM 的最新发展"
    • "使用混合搜索查找有关神经网络的信息"

故障排除

  • 服务器未出现:

    • 检查 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 Agent Service 问题:

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

自定义您的服务器

  • 修改工具说明: 调整提供给每个代理的说明,以更改他们处理查询的方式
  • 添加新工具: 使用 @mcp.tool() 装饰器来集成其他工具
  • 自定义响应格式: 编辑响应的格式以及如何返回到 Claude Desktop
  • 调整 Web 搜索参数: 修改 Web 搜索工具以专注于特定域

许可证

本项目根据 MIT 许可证获得许可。

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选