Token导航 LogoToken导航TokenDH.com
azure openai research MCP server logo
搜索检索stdio官方级别未说明来源级核验

azure openai research MCP server

MCP Server

基于Azure OpenAI的向量搜索服务器,提供语义搜索和文档检索功能,适用于企业级知识管理和AI增强搜索场景。

工具数

2

提示词数

0

GitHub Stars

0

资源数

0
搜索Python文档检索知识管理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Ibraheem762

提供方

Ibraheem762

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install fastmcp uvicorn openai

详细介绍

用于矢量搜索的Azure OpenAI MCP服务器

这是一个模型上下文协议(MCP)服务器,旨在使用Azure OpenAI与Deep Research合作。它通过Azure OpenAI的Vector Store API和文档检索功能提供语义搜索,演示如何使用Azure的企业级人工智能服务构建自定义MCP服务器,该服务器可以使用特定于公司的知识和工具扩展ChatGPT。

特性

  • 增强搜索工具:使用带有file_search工具的Azure OpenAI助手API进行语义搜索
  • 智能提取工具:使用Azure OpenAI助手API完成文档内容提取
  • SSE 运输:服务器发送事件传输,用于与ChatGPT进行实时通信
  • Azure集成:Azure OpenAI与企业安全和合规性的完全集成
  • 混合搜索:Azure通过矢量相似性和关键字匹配增强搜索
  • 自动引用:内置引用支持和源文件引用
  • MCP合规性:遵循OpenAI的MCP规范,用于深度研究集成

需求

  • Python 3.8+
  • fastmcp(>=2.9.0)
  • 玉米(>=0.34.3)
  • openai(Python SDK-与Azure openai兼容)
  • pydantic(fastmcp的依赖性)
  • 具有矢量存储功能的Azure OpenAI服务

安装

1.安装依赖项

pip install fastmcp uvicorn openai

2.Azure OpenAI设置

设置Azure OpenAI环境变量:

export AZURE_OPENAI_API_KEY="your-azure-openai-api-key"
export AZURE_OPENAI_ENDPOINT="https://your-resource-name.openai.azure.com"
export AZURE_OPENAI_DEPLOYMENT_NAME="your-deployment-name"
export VECTOR_STORE_ID="vs_your_vector_store_id"
export AZURE_OPENAI_API_VERSION="2024-05-01-preview"  # Optional, defaults to this

3.获取Azure配置

API密钥:在Azure门户中找到→ 您的OpenAI资源→ 密钥和端点

端点:在Azure门户中找到→ 您的OpenAI资源→ 密钥和端点(格式: https://your-resource.openai.azure.com)

部署名称:您在Azure OpenAI Studio中为GPT-4部署命名的名称

矢量存储ID:在Azure OpenAI Playground中创建一个向量存储,并记下ID(格式: vs_xxxxxxxxx)

4.运行服务器

python main.py

服务器将于启动 http://0.0.0.0:8000 启用SSE传输。

5.验证设置

运行验证脚本以测试您的配置:

python validate.py  # or whatever you named the validation file

用法

连接到ChatGPT深度研究

  1. 访问ChatGPT设置:转到ChatGPT设置
  2. 导航到连接器:点击“连接器”选项卡
  3. 添加MCP服务器:添加您的服务器URL: http://your-domain:8000/sse/
  4. 测试连接:服务器应显示为可用于深入研究

服务器端点

  • SSE 终端: http://0.0.0.0:8000/sse/ -主MCP通信端点
  • 健康检查:服务器日志将显示成功启动和工具注册

可用工具

搜索工具

  • 目的:使用带有增强的file_search的Azure OpenAI助手API查找相关文档
  • 输入:搜索查询字符串(自然语言效果最佳)
  • 输出:包含引用、文件ID、标题和文本片段的匹配文档列表
  • 特性:

- 结合向量相似度和关键字匹配的混合搜索 - 自动查询优化和结果重新排序 - 内置引文支持和源文件引用 - 上下文感知搜索,最多包含20个相关块

提取工具

  • 目的:使用Azure OpenAI助手API提取完整的文档内容
  • 输入:矢量存储搜索结果中的文件ID(文件xxx格式)
  • 输出:通过AI驱动的内容提取提取完整文档内容
  • 特性:

- 绕过Azure OpenAI文件下载限制 - 基于AI的完整文档文本内容提取 - 自动清理临时助理和线程 - 带标题、节和格式的结构化内容提取

矢量存储集成

该服务器与您的Azure OpenAI矢量存储集成,其中包含您上传的文档。Azure OpenAI提供了比标准OpenAI更强的功能:

  • 增强分块:每个区块800个令牌,400个令牌重叠
  • 混合搜索:将语义相似性与关键字匹配相结合
  • 查询优化:自动重写查询以获得更好的结果
  • 结果重新排名:智能选择最相关的内容
  • 企业安全:Azure的企业级安全性和合规性

支持的文件类型

Azure OpenAI矢量存储支持:

  • PDF文档
  • 文本文件
  • Word文档(.docx)
  • Markdown文件
  • 以及其他基于文本的格式

定制

使用自己的矢量存储

  1. 创建矢量存储:在Azure OpenAI Playground中,创建一个新的矢量存储
  2. 上传文档:通过操场将文档添加到矢量存储中
  3. 更新配置:设置 VECTOR_STORE_ID 到您的新矢量存储ID
  4. 重新启动服务器:服务器在启动时加载配置

修改搜索行为

中的搜索功能 main.py 可以针对以下内容进行定制:

  • 针对特定搜索行为的不同辅助指令
  • 自定义结果处理和格式化
  • 从搜索结果中提取其他元数据
  • 自定义内容片段长度和格式
  • 多矢量存储支持

环境配置

创建一个 .env 文件以便于配置管理:

# .env file
AZURE_OPENAI_API_KEY=your_api_key_here
AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com
AZURE_OPENAI_DEPLOYMENT_NAME=your_deployment_name
VECTOR_STORE_ID=vs_your_vector_store_id
AZURE_OPENAI_API_VERSION=2024-05-01-preview

部署

地方发展

服务器在端口8000上本地运行,可以使用ChatGPT进行测试。

生产部署

用于生产用途:

  • 使用HTTPS:确保您的服务器具有SSL/TLS证书
  • 认证:请考虑添加OAuth或API密钥身份验证
  • 速率限制:实现Azure OpenAI API调用的速率限制
  • 监控:添加服务器运行状况的日志记录和监控
  • 扩展:考虑高流量场景的负载平衡
  • Azure集成:使用Azure应用服务或容器实例进行托管

隧道局部测试

如果在本地运行并且需要外部访问:

# Using ngrok
ngrok http 8000

# Using cloudflare tunnel  
cloudflared tunnel --url http://localhost:8000

建筑

此Azure OpenAI MCP服务器使用:

  • FastMCP:简化MCP协议实施
  • 乌维科恩:用于HTTP/SSE传输的ASGI服务器
  • Azure OpenAI:具有增强功能的企业级人工智能服务
  • 助理API:Azure OpenAI用于搜索和内容提取的高级助手框架
  • 矢量存储API:Azure具有混合功能的语义搜索

与标准OpenAI的主要区别

  • 认证:使用Azure API密钥和基于终结点的身份验证
  • 增强型搜索:结合矢量和关键字匹配的混合搜索
  • 内容提取:人工智能驱动的内容提取,而不是直接下载文件
  • 企业功能:内置合规、安全和监控功能

故障排除

常见问题

  • 服务器无法启动:检查端口8000是否已在使用中
  • ChatGPT无法连接:确保服务器URL正确且可访问
  • 没有搜索结果:验证Azure OpenAI配置和向量存储ID
  • 身份验证错误:检查API密钥和终结点配置
  • 矢量存储错误:验证矢量存储是否存在并包含文档
  • 未找到部署:确保您的部署名称正确并已部署

调试步骤

  1. 运行验证:使用验证脚本检查配置
  2. 检查日志:服务器日志显示详细的错误消息
  3. 测试SSE端点: curl http://localhost:8000/sse/
  4. 验证Azure连接:
   from openai import AzureOpenAI
   client = AzureOpenAI(api_key="...", azure_endpoint="...", api_version="...")
   print(client.models.list())
  1. 检查矢量存储:在Azure OpenAI Playground中验证您的矢量存储是否包含文件

Azure特定问题

  • API版本错误:确保您正在使用 2024-05-01-preview 或以后
  • 部署错误:验证您的部署名称是否与Azure OpenAI Studio中的名称完全匹配
  • 矢量存储访问:确保您的API密钥可以访问向量存储
  • 文件上传问题:使用Azure OpenAI Playground上传和验证文件

性能注意事项

  • 搜索延迟:Azure OpenAI助手API调用所用时间长于直接向量搜索
  • 速率限制:请注意您的部署的Azure OpenAI速率限制
  • 成本优化:监控令牌使用情况,特别是对于大型文档提取
  • 缓存:考虑对频繁访问的文档实施响应缓存

安全最佳实践

  • API密钥管理:安全存储API密钥,在生产中使用Azure密钥保管库
  • 网络安全:使用HTTPS并考虑VPN或专用端点
  • 访问控制:为您的MCP服务器实施身份验证
  • 审计日志:启用Azure OpenAI日志记录以实现合规性和监控
  • 数据隐私:确保上传的文档符合您的数据治理政策

贡献

这是一个生产就绪的实现,可以通过以下方式进行扩展:

  • 支持不同文档类别的多向量存储
  • 高级搜索过滤和分面搜索
  • 与Azure Active Directory集成以进行身份验证
  • 使用Azure Application Insights进行监控和警报
  • 使用Azure容器应用程序或AKS进行横向扩展

许可证

此实现用于教育和商业用途。确保符合Azure OpenAI服务条款和组织的数据策略。

目录标签

目录标签

搜索Python文档检索知识管理语义搜索本地部署企业AIAzure集成

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

oauth

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiooauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP