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

概述
该项目提供了两种 MCP 服务器实现,以将 Claude Desktop 与 Azure 搜索功能连接起来:
- Azure AI 代理服务实施(推荐) - 使用强大的 Azure AI 代理服务提供:
- Azure AI 搜索工具- 使用 AI 增强结果搜索索引文档
- Bing Web Grounding Tool - 使用来源引文搜索网络
- 直接 Azure AI 搜索实现- 使用三种方法直接连接到 Azure AI 搜索:
- 关键词搜索- 精确词汇匹配
- 向量搜索——使用嵌入的语义相似性
- 混合搜索——关键字和向量搜索的组合
特征
- AI 增强搜索- Azure AI 代理服务通过智能处理优化搜索结果
- 多种数据源- 搜索您的私人文档和公共网络
- 来源引用- 网络搜索结果包括对原始来源的引用
- 灵活实施- 在 Azure AI 代理服务或直接 Azure AI 搜索集成之间进行选择
- 无缝 Claude 集成- 所有搜索功能均可通过 Claude Desktop 界面访问
- 可定制——易于扩展或修改搜索行为
快速链接
要求
- Python: 3.10 或更高版本
- **Claude 桌面:**最新版本
- Azure 资源:
- 具有包含矢量化文本数据的索引的 Azure AI 搜索服务
- 对于代理服务:具有 Azure AI 搜索和 Bing 连接的 Azure AI 项目
- 操作系统: Windows 或 macOS(提供 Windows 的说明,但可调整)
Azure AI 代理服务实现(推荐)
设置指南
- 项目目录:
mkdir mcp-server-azure-ai-search
cd mcp-server-azure-ai-search
- 创建
.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
- 设置虚拟环境:
uv venv
.venv\Scripts\activate
uv pip install "mcp[cli]" azure-identity python-dotenv azure-ai-projects
- 使用
azure_ai_agent_service_server.py
脚本与 Azure AI Agent Service 集成。
Azure AI 代理服务设置
在使用该实现之前,您需要:
- 创建 Azure AI 项目:
- 转到 Azure 门户并创建一个新的 Azure AI 项目
- 记下项目连接字符串和模型部署名称
- 创建 Azure AI 搜索连接:
- 在 Azure AI 项目中,添加与 Azure AI 搜索服务的连接
- 注意连接名称和索引名称
- 创建 Bing Web 搜索连接:
- 在您的 Azure AI 项目中,添加与 Bing 搜索服务的连接
- 记下连接名称
- 使用 Azure 进行身份验证:
配置 Claude 桌面
{
"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 Search 而不使用代理服务的用户:
- 创建不同的
.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
- 安装依赖项:
uv pip install "mcp[cli]" azure-search-documents==11.5.2 azure-identity python-dotenv
- 使用
azure_search_server.py
脚本与 Azure AI Search 直接集成。 - 配置Claude桌面:
{
"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"
}
}
}
}
测试服务器
- 重新启动 Claude Desktop以加载新配置
- 在输入字段的右下角查找 MCP 工具图标(锤子图标)
- 尝试如下查询:
- “在我的 Azure 搜索索引中搜索有关 AI 的信息”
- “在网上搜索法学硕士的最新动态”
- “使用混合搜索查找有关神经网络的信息”
故障排除
- 服务器未出现:
- 检查 Claude Desktop 日志(位于 Windows 上的
%APPDATA%\Claude\logs\mcp*.log
) - 验证配置中的文件路径和环境变量
- 直接测试运行服务器:
python azure_ai_agent_service_server.py
或uv run python azure_ai_agent_service_server.py
- Azure AI 代理服务问题:
- 确保 Azure AI 项目已正确配置
- 验证连接存在且配置正确
- 检查 Azure 身份验证状态
自定义您的服务器
- **修改工具说明:**调整提供给每个代理的说明,以更改他们处理查询的方式
- **添加新工具:**使用
@mcp.tool()
装饰器来集成其他工具 - **自定义响应格式:**编辑响应的格式并返回到 Claude Desktop
- **调整网络搜索参数:**修改网络搜索工具以关注特定域
执照
该项目已获得 MIT 许可。