多MCP AI代理系统

一个利用多个MCP服务器提供从基础数学运算到高级外部服务集成的AI代理系统,包括Google Workspace集成、网页抓取和实时通信功能。

  • by aviban15
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 aviban15/multi-mcp-agent

使用说明

多MCP AI代理

一个agent AI代理系统,利用多个MCP(模型控制协议)服务器提供广泛的功能,从基本的数学运算到高级的外部服务集成,如谷歌工作区和网络抓取。该代理包括一个Telegram机器人界面和用于实时通信的服务器发送事件(SSE)。

🌟 特性

  • 多MCP架构:利用多个MCP服务器进行分布式处理和各种功能
  • 认知模块:实现感知、决策、记忆和行动模块
  • 外部服务集成:
    • 谷歌工作区(Gmail、谷歌云端硬盘、谷歌表格)
    • 网络抓取和内容提取
    • DuckDuckGo搜索集成
  • 实时通信:
    • Telegram Bot界面
    • 实时更新的服务器发送事件(SSE)
  • 核心组件:
    • 代理循环管理
    • 会话处理
    • 上下文管理
    • 战略决策

🏗️ 项目结构

├── agent.py              # Main agent entry point
├── core/                 # Core agent components
│   ├── context.py        # Context management
│   ├── loop.py           # Main agent loop
│   ├── session.py        # Session handling
│   └── strategy.py       # Strategic decision making
├── modules/              # Cognitive modules
│   ├── action.py         # Action execution
│   ├── decision.py       # Decision making
│   ├── memory.py         # Memory management
│   ├── model_manager.py  # Model management
│   ├── perception.py     # Input processing
│   └── tools.py          # Tool definitions
├── config/               # Configuration files
│   ├── models.json       # Model configurations
│   └── profiles.yaml     # MCP server profiles
└── mcp_server_*.py       # MCP server implementations

🚀 入门指南

先决条件

  • Python 3.11+
  • UV包管理器
  • Telegram机器人令牌(用于机器人功能)
  • Google Cloud凭据(用于Google Workspace集成)

安装

  1. 克隆存储库:
git clone <repository-url>
cd <repository-name>
  1. 创建并激活虚拟环境:
uv venv
venv\Scripts\activate  # On Mac: source venv/bin/activate
  1. 使用UV安装依赖项:
uv sync
  1. 设置环境变量:
    • 创建 .env 使用Gemini API密钥和Telegram Bot令牌。
    • 生成 credentials.json 使用Google OAuth客户端。

配置

  1. 在中配置MCP服务器 config/profiles.yaml
  2. 在中设置模型配置 config/models.json
  3. 配置Google Cloud凭据:
    • 地方 credentials.json 在根目录中
    • 运行应用程序一次以生成 token.json

🎮 用法

启动代理

uv run agent.py

启动Telegram Bot服务器

uv run telegram_sse_server.py

🛠️ MCP服务器

MCP服务器1:基本操作

  • 数学运算
  • 图像处理
  • 文件 操作

MCP服务器2:文档处理

  • 文献索引
  • 语义搜索
  • 内容提取
  • 图像字幕

MCP服务器3:Web集成

  • DuckDuckGo搜索
  • Web内容获取
  • 速率限制请求

MCP服务器4:Google工作区

  • Gmail集成
  • Google表格操作
  • Google云端硬盘管理
  • F1积分榜抓取器(URL抓取器)

📡 沟通

电报机器人

  • 指挥处理
  • 消息处理
  • 实时响应

SSE服务器

  • 实时事件流
  • 客户端连接管理
  • 事件广播

🧠 认知架构

代理通过以下模块实现认知架构:

  • 感知:处理输入并提取相关信息
  • 记忆:管理状态和历史数据
  • 决定:根据投入和背景做出战略决策
  • 行动:通过适当的工具执行决定的行动

📝 许可证

MIT许可证