Azure AI代理服务+Azure AI搜索MCP服务器
模型上下文协议(MCP)服务器,使Claude Desktop能够使用Azure AI服务搜索您的内容。在Azure AI代理服务(同时提供文档搜索和web搜索)或直接集成Azure AI搜索之间进行选择。
demo ico svg webp.webp jpeg jpg png
______________________________________________________________________
视频 您的浏览器不支持 video 标签。
概述
此项目提供了两个MCP服务器实现,用于将Claude Desktop与Azure搜索功能连接起来:
- Azure AI代理服务实施(推荐) -使用强大的Azure AI代理服务提供:
- Azure人工智能搜索工具 -使用AI增强的结果搜索您的索引文档 - Bing Web接地工具 -在网络上搜索源引用
- 直接Azure AI搜索实施 -通过三种方法直接连接到Azure AI搜索:
- 关键字搜索 -精确的词汇匹配 - 矢量搜索 -基于嵌入的语义相似度 - 混合搜索 -关键字和矢量搜索的组合
______________________________________________________________________
特性
- AI增强搜索 -Azure AI代理服务通过智能处理优化搜索结果
- 多个数据源 -搜索您的私人文档和公共网络
- 来源引用 -网络搜索结果包括对原始来源的引用
- 灵活实施 -在Azure AI代理服务或直接Azure AI搜索集成之间进行选择
- 无缝集成Claude -所有搜索功能均可通过Claude Desktop的界面访问
- 可定制的 -易于扩展或修改搜索行为
______________________________________________________________________
快速链接
______________________________________________________________________
需求
- python 3.10或更高版本
- 克劳德桌面: 最新版本
- 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代理服务集成。
Azure AI代理服务设置
在使用该实现之前,您需要:
- 创建Azure AI项目:
- 转到Azure门户并创建新的Azure AI项目 - 注意项目连接字符串和模型部署名称
- 创建Azure AI搜索连接:
- 在Azure AI项目中,添加到Azure AI搜索服务的连接 - 记下连接名称和索引名称
- 创建Bing Web搜索连接:
- 在Azure AI项目中,添加到Bing搜索服务的连接 - 记下连接名称
- 使用Azure进行身份验证:
az login配置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搜索的人:
- 创建一个不同的
.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搜索直接集成。
- 配置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"
}
}
}
}______________________________________________________________________
测试服务器
- 重新启动克劳德桌面 加载新配置
- 在输入字段的右下角查找MCP工具图标(锤子图标)
- 尝试以下查询:
- “在我的Azure搜索索引中搜索有关AI的信息” - “在网上搜索LLM的最新发展” - “使用混合搜索查找有关神经网络的信息”
______________________________________________________________________
故障排除
- 服务器未出现:
- 检查克劳德桌面日志(位于 %APPDATA%\Claude\logs\mcp*.log 在Windows上) - 验证配置中的文件路径和环境变量 - 直接测试运行服务器: 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
- 调整Web搜索参数: 修改web搜索工具以专注于特定域
______________________________________________________________________
许可证
该项目根据MIT许可证获得许可。
