使用说明
项目简介
本项目是 Azure AI Agent Service 的 MCP 服务器实现,旨在将 Azure AI Foundry 中创建的智能代理无缝集成到任何兼容 MCP 协议的 LLM 客户端中。通过此服务器,您可以利用 Azure AI Foundry 强大的模型和知识工具(如 Azure AI Search 和 Bing Web Grounding),为您的 LLM 应用提供丰富的上下文和功能支持。
主要功能点
- Azure AI Agent 集成: 连接并使用您在 Azure AI Foundry 中创建的现有 AI 代理。
- 无缝工作流: 在任何 MCP 客户端中直接调用和使用 Azure AI 代理的功能。
- 安全连接: 所有连接均使用 Azure 凭据进行身份验证,保障安全。
- 会话记忆: 每个客户端会话维护独立的对话历史记录。
- 工具: 提供 'connect_agent'、'query_default_agent' 和 'list_agents' 等工具,方便客户端与 Azure AI Agent 交互。
- 'connect_agent': 连接到指定的 Azure AI Agent 并发送查询。
- 'query_default_agent': 向默认配置的 Azure AI Agent 发送查询。
- 'list_agents': 列出 Azure AI 项目中可用的所有 AI Agent。
安装步骤
- 环境准备:
- 确保已安装 Python 3.10+。
- 安装并配置 Azure CLI ('az')。
- 在 Azure AI Foundry 中创建所需的 Azure AI Agents。
- 设置 Azure:
- 获取 Azure AI 项目连接字符串 (Project Connection String)。
- 记录需要连接的 Azure AI Agent 的 ID。
- 使用 Azure CLI 登录 ('az login') 进行身份验证。
- 安装:
- 克隆或下载此仓库的代码。
- 进入项目根目录。
- 创建并激活 Python 虚拟环境:
python -m venv .venv source .venv/bin/activate # macOS/Linux .venv\Scripts\activate # Windows - 安装依赖:
pip install mcp[cli] azure-identity python-dotenv azure-ai-projects aiohttp
- 配置环境变量:
- 创建 '.env' 文件或设置系统环境变量。
- 配置以下环境变量:
PROJECT_CONNECTION_STRING=your-project-connection-string # 必须:替换为你的 Azure AI 项目连接字符串 DEFAULT_AGENT_ID=your-default-agent-id # 可选:默认代理 ID,如果需要使用 query_default_agent 工具则配置
服务器配置
要将此 MCP 服务器与 MCP 客户端(例如 Claude Desktop)连接,您需要在客户端的 MCP 服务器配置中添加以下 JSON 配置信息。请根据您的实际情况修改配置中的路径和环境变量。
使用 'uv' 启动 (推荐):
{ "mcpServers": { "azure-agent": { // 服务器名称,客户端中引用此名称 "command": "uv", // 启动命令,这里使用 uv (如果使用 pip 安装,可以替换为 python) "args": [ // 启动参数 "--directory", "/ABSOLUTE/PATH/TO/PARENT/FOLDER", // 替换为项目父文件夹的绝对路径 "run", "-m", "azure_agent_mcp_server" // 运行 azure_agent_mcp_server 模块 ], "env": { // 环境变量 "PROJECT_CONNECTION_STRING": "your-project-connection-string", // 替换为你的 Azure AI 项目连接字符串 "DEFAULT_AGENT_ID": "your-default-agent-id" // 可选:替换为你的默认代理 ID } } } }
使用 'python' 启动:
{ "mcpServers": { "azure-agent": { // 服务器名称 "command": "python", // 启动命令 "args": [ // 启动参数 "-m", "azure_agent_mcp_server" // 运行 azure_agent_mcp_server 模块 ], "cwd": "/ABSOLUTE/PATH/TO/PARENT/FOLDER", // 替换为项目父文件夹的绝对路径 "env": { // 环境变量 "PYTHONPATH": "/ABSOLUTE/PATH/TO/PARENT/FOLDER", // 替换为项目父文件夹的绝对路径,确保 Python 可以找到模块 "PROJECT_CONNECTION_STRING": "your-project-connection-string", // 替换为你的 Azure AI 项目连接字符串 "DEFAULT_AGENT_ID": "your-default-agent-id" // 可选:替换为你的默认代理 ID } } } }
请注意:
- 将 '/ABSOLUTE/PATH/TO/PARENT/FOLDER' 替换为 'mcp-foundry' 仓库所在父文件夹的绝对路径。
- 将 'your-project-connection-string' 和 'your-default-agent-id' 替换为您的实际 Azure AI 项目连接字符串和默认代理 ID。
- 'server name' (例如 "azure-agent") 可以自定义,在 MCP 客户端中通过此名称引用该服务器。
基本使用方法
- 启动 MCP 服务器:在项目根目录的 'src/python' 目录下,运行命令 'python -m azure_agent_mcp_server' (或使用 'uv run -m azure_agent_mcp_server') 启动服务器。
- 在 MCP 客户端中配置并连接到 'azure-agent' 服务器。
- 使用客户端提供的界面或命令,通过以下工具与 Azure AI Agent 交互:
- 调用 'connect_agent' 工具,并传入 'agent_id' 和 'query' 参数,连接到指定的 Azure AI Agent 并发送查询。
- 调用 'query_default_agent' 工具,并传入 'query' 参数,向默认配置的 Azure AI Agent 发送查询。
- 调用 'list_agents' 工具,获取可用的 Azure AI Agent 列表。
具体工具调用方式和参数传递请参考 MCP 客户端的文档。
信息
分类
AI与计算