数学计算与通信代理

一个智能代理,能够执行复杂的数学运算、创建可视化演示并通过电子邮件发送结果,集成了数学计算、幻灯片生成和邮件通信功能。

  • by Shilpaj1994
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 shilpaj1994/mcp-ai-agent

使用说明

MCP AI代理

该项目展示了一个智能代理,它可以执行复杂的数学运算,创建视觉演示,并使用谷歌的服务通过电子邮件传达结果。它展示了多个MCP(模型上下文协议)服务器协同工作以解决复合任务的集成。

项目目标

主要目标是解决以下任务:

计算前五个斐波那契数的指数之和,将答案写在幻灯片中,下载为PNG文件,并通过电子邮件发送。

这涉及:

  1. 数学计算(斐波那契+指数)
  2. 视觉演示(谷歌幻灯片)
  3. 通讯(Gmail)

系统架构

该系统由三个主要的MCP服务器组成:

  1. 数学服务器 (mcp_servers/math_server.py)

    • 计算斐波那契数列
    • 执行指数运算
    • 处理数学计算
  2. 幻灯片服务器 (mcp_servers/slides_server.py)

    • 创建Google幻灯片演示文稿
    • 在幻灯片中添加文本
    • 将幻灯片下载为PNG图像
  3. Gmail服务器 (mcp_servers/gmail_server.py)

    • 发送带有附件的电子邮件
    • 管理电子邮件操作(读取、回收、标记为已读)
    • 处理Gmail API身份验证

安装说明

先决条件

  • Python 3.8+
  • Linux/Unix环境(在Linux 5.15.0-136通用版上测试)
  • X11显示服务器(用于幻灯片功能)
  • 具有Gmail和Google幻灯片访问权限的Google帐户

安装

  1. 克隆存储库
  2. 安装依赖项:
pip install -r requirements.txt

Google API设置

  1. Gmail设置:

    • 在中创建项目 谷歌云控制台
    • 启用Gmail API
    • 创建OAuth 2.0凭据
    • 将凭据另存为 mcp_servers/credentials.json
  2. 环境变量 (可选):

    • GMAIL_CREDS_FILE:credentials.json的路径
    • GMAIL_TOKEN_FILE:token.json的路径

用法

  1. 启动代理:
python agent.py
  1. 该系统将:
    • 计算斐波那契数列和指数
    • 用结果制作幻灯片
    • 将幻灯片另存为PNG格式 content/slide.png
    • 通过电子邮件发送PNG

项目结构

.
├── agent.py              # Main agent implementation
├── ai.py                 # Gemini Interactions
├── prompt.py             # Prompt used for the project
├── mcp_servers/
│   ├── slides_server.py  # Google Slides operations
│   ├── gmail_server.py   # Gmail operations
│   └── math_server.py    # Mathematical computations
├── content/              # Generated content (slides, images)
└── requirements.txt      # Project dependencies

故障排除

  • 显示问题:确保X11显示服务器正在运行
  • Gmail授权:
    • 首次运行将提示用户访问谷歌帐户
    • 如果身份验证失败,请删除 token.json 然后重试
  • 文件路径:
    • 图像保存到 content/slide.png
    • 指定文件位置时使用绝对路径

输出示例

运行代理后,您应该:

  1. 请参阅控制台中的数学计算
  2. 在内容目录中查找PNG文件
  3. 接收带有PNG附件的电子邮件

执行日志