项目简介
本项目 'mcp_autogen_sse_stdio' 演示了如何使用 Model Context Protocol (MCP) 将工具集成到 AutoGen 框架中,使 AI 智能体能够利用这些工具扩展其能力。
主要功能点:
- 本地工具集成 (Stdio): 展示了如何通过 Stdio 传输协议集成和使用本地工具,例如提供的 'math_server.py' 示例,它提供简单的数学计算功能。
- 远程工具集成 (SSE): 演示了如何通过 Server-Sent Events (SSE) 传输协议集成和使用远程工具,例如 Apify 的 RAG Web Browser Actor,用于网页浏览和信息检索。
- AutoGen 智能体应用: 展示了如何配置 AutoGen 智能体,使其能够同时利用本地和远程工具来完成用户提出的任务。
- MCP 协议实践: 通过实际代码示例,帮助理解 MCP 协议在 AI 智能体与工具集成中的作用和优势。
安装步骤:
- 环境准备: 确保已安装 Python 3.12 或更高版本。
- 安装 'uv' (如果未安装):
pip install uv - 克隆仓库:
git clone https://github.com/SaM-92/mcp_autogen_sse_stdio cd mcp_autogen_sse_stdio - 创建并激活虚拟环境:
uv venv --python 3.12 source .venv/bin/activate # macOS/Linux .\.venv\Scripts\activate # Windows - 安装依赖:
如果 'mcp[cli]' 安装有问题,可以尝试手动安装:uv pip install -e .uv add "mcp[cli]" - 配置环境变量:
- 在 'mcp_autogen_sse_stdio' 目录下创建 '.env' 文件。
- 填入 OpenAI API 密钥和 Apify API 密钥:
Apify API 密钥需要从 Apify MCP Server 页面 获取。OPENAI_API_KEY=your_openai_api_key_here APIFY_API_KEY=your_apify_api_key_here
服务器配置 (本地 Math Server):
要将 'math_server.py' 作为 MCP 服务器与 MCP 客户端连接,客户端需要配置以下信息:
{ "server_name": "Math", "command": "python", "args": ["mcp_autogen_sse_stdio/math_server.py"] }
配置参数说明:
- server_name: 服务器名称,这里设置为 "Math",与 'math_server.py' 中 'FastMCP("Math")' 定义的名称一致。
- command: 启动服务器的命令,这里使用 'python' 解释器。
- args: 命令参数,指定 'math_server.py' 脚本的路径,用于运行本地数学工具服务器。
基本使用方法:
- 确保已完成安装和配置步骤。
- 返回到项目根目录的上一级目录: 'cd ..'
- 运行主脚本 'main.py':
该脚本会演示以下两个任务:uv run mcp_autogen_sse_stdio/main.py- 使用 Apify 工具总结伊朗和美国谈判的最新新闻。
- 使用本地数学工具计算 '(3 + 5) x 12' 的结果。
注意: 'main.py' 脚本本身是 MCP 客户端的示例,它配置并使用了本地的 'math_server.py' (Stdio 传输) 和远程的 Apify MCP Server (SSE 传输) 这两个 MCP 服务器。
信息
分类
AI与计算