数学邮件客户端

一个集成数学计算与Gmail功能的Python应用,使用Gemini AI处理数学查询并通过邮件发送结果。

  • by movva09
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 movva09/agent-mcp-math-email

使用说明

MCP数学Gmail客户端

数学Gmail客户端(talk2mcp_math_gmail_client.py)是一个Python应用程序,将数学计算与Gmail功能集成在一起。它使用Gemini AI模型来处理数学查询,并可以通过电子邮件发送结果。

特性

  • 与Gemini AI集成以解决数学问题
  • 用于发送数学结果的Gmail集成
  • 迭代式问题解决方法
  • 支持各种数学运算
  • 自动生成带有数学结果的电子邮件
  • 安全的Gmail身份验证
  • 多收件人支持

服务器要求

  1. MCP服务器设置:
    • Python 3.x环境
    • 已安装MCP服务器包
    • 所需的服务器依赖关系:
      • mcp 包裹

先决条件

  • Python 3.x
  • 所需的Python包:
    • python-dotenv
    • google-generativeai
    • mcp 包裹
    • google-auth
    • google-auth-oauthlib
    • google-auth-httplib2
    • google-api-python-client

环境设置

  1. 创建一个 .env 项目根目录中的文件
  2. 添加API密钥:
    GEMINI_API_KEY=your_api_key_here
    GMAIL_CLIENT_ID=your_client_id_here
    GMAIL_CLIENT_SECRET=your_client_secret_here
    

服务器安装程序

  1. 安装服务器依赖项:

    pip install mcp numpy pandas matplotlib
    
  2. 启动MCP服务器:

    python example2-3_gmail_server_2.py
    

可用工具

当前实施的工具

  1. 数学运算:

    • 基本算术运算(加、减、乘、除)
    • 高级数学函数(指数、对数)
    • ASCII值计算
    • 字符串操作和转换
    • 阵列操作
    • 素数计算
    • 因式计算
    • 斐波那契数列生成
  2. 电子邮件工具:

    • 单收件人电子邮件发送
    • 基本电子邮件格式
    • 简单的附件处理
    • 基本错误处理
    • Gmail身份验证
    • 电子邮件队列管理
    • 基本交货状态跟踪

安装

  1. 克隆存储库
  2. 安装所需的软件包:
    pip install python-dotenv google-generativeai mcp google-auth google-auth-oauthlib google-auth-httplib2 google-api-python-client
    
  3. 如上所述设置环境变量
  4. 设置Gmail API凭据:
    • 转到谷歌云控制台
    • 创建新项目
    • 启用Gmail API
    • 创建OAuth 2.0凭据
    • 下载凭据文件

用法

  1. 启动MCP服务器(请参阅服务器设置部分)
  2. 确保服务器正在运行且可访问
  3. 运行客户端:
    python talk2mcp_math_gmail_client.py
    

服务器客户端通信

  1. 连接协议:

    • 客户端与服务器建立连接
    • 身份验证握手
    • 工具列表同步
    • 会话初始化
    • 电子邮件服务验证
  2. 数据流:

    • 客户端发送数学查询
    • 服务器处理请求
    • 结果已格式化为电子邮件格式
    • 电子邮件队列已管理
    • 跟踪交付状态
    • 通知已发送
  3. 错误处理:

    • 连接重试机制
    • 会话恢复
    • 电子邮件队列恢复
    • 费率限制处理
    • 资源清理

查询示例

  1. 基础数学电子邮件:
Calculate the factorial of 10 and send the result to user@example.com with the subject "Factorial Calculation Result".
  1. 复杂数学分析:
Find the first 50 Fibonacci numbers, calculate their sum, and send the detailed analysis to team@example.com with a graph attachment.
  1. 格式化的多个操作:
Calculate the roots of the quadratic equation x² + 5x + 6 = 0, format the solution in LaTeX, and send it to professor@example.com with proper mathematical notation.
  1. 计划数学报告:
Generate a report of prime numbers between 1 and 1000, create a histogram of their distribution, and schedule it to be sent to research@example.com tomorrow at 9:00 AM.

运作原理

  1. 客户端连接到MCP服务器
  2. 它使用Gemini AI模型处理数学查询
  3. 结果已格式化为电子邮件格式
  4. 该系统使用迭代方法来解决复杂问题
  5. 结果通过Gmail发送给指定的收件人

错误处理

客户端包括强大的错误处理功能,用于:

  • API超时
  • 无效输入
  • 连接问题
  • 工具执行错误
  • Gmail身份验证和发送错误

安全

  • 使用OAuth 2.0进行Gmail身份验证
  • API密钥和凭据的安全存储
  • 通过Gmail API加密通信

贡献

请随时提交问题和增强请求。

许可证

根据Apache许可证2.0版(“许可证”)许可; 除非遵守许可证,否则您不得使用此文件。 您可以在以下网址获得许可证副本

http://www.apache.org/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则软件 根据许可证分发的内容按“原样”分发, 无任何明示或暗示的保证或条件。 请参阅许可证,了解管理权限和 许可证下的限制。

故障排除

  1. 常见问题:

    • 电子邮件传递失败
    • 附件大小限制
    • 身份验证问题
    • 利率限制问题
    • 连接超时
  2. 解决:

    • 检查电子邮件服务器状态
    • 验证API配额
    • 查看错误日志
    • 检查网络连接
    • 验证凭据

性能提示

  1. 优化:

    • 批量处理大型电子邮件
    • 附件压缩
    • 连接池
    • 缓存管理
    • 资源监控
  2. 最佳实践:

    • 定期备份电子邮件模板
    • 监控API使用情况
    • 实施重试机制
    • 使用高效的数据结构
    • 定期系统维护