Gmail和Google日历集成服务

该服务提供Gmail和Google日历的集成功能,支持邮件管理和日历操作,适用于需要自动化邮件和日程管理的场景。

  • by Aayushchaudry
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 aayushchaudry/mcp_gmail

使用说明

MCP集成服务器

此存储库包含MCP(模型控制协议)服务器,用于将各种服务与Claude Desktop集成。

Gmail和谷歌日历MCP服务器

Gmail和谷歌日历的集成允许克劳德与您的Gmail帐户和谷歌日历进行交互,从而实现电子邮件管理和日历操作。

特性

  • Gmail操作:

    • 从收件箱获取最新电子邮件
    • 使用Gmail查询语法搜索电子邮件
    • 阅读电子邮件内容
    • 发送支持CC和BCC的电子邮件
  • 日历操作:

    • 搜索日历事件
    • 创建新的日历事件
    • 查看即将举行的活动

安装说明

  1. 先决条件:

    • Python 3.x
    • 已安装MCP包
    • 启用Gmail和日历API的谷歌云控制台项目
  2. OAuth凭据:

    • 转到谷歌云控制台
    • 创建新项目或选择现有项目
    • 启用Gmail API和Google日历API
    • 创建OAuth 2.0凭据
    • 下载凭据并另存为 credentials.json 在项目目录中
  3. 安装:

    # Install required packages
    pip install google-auth-oauthlib google-auth-httplib2 google-api-python-client
    
    # Install the server in Claude Desktop
    mcp install server.py
    
  4. 首次运行:

    • 运行服务器: mcp run server.py
    • 首次运行将提示进行OAuth身份验证
    • 按照浏览器链接授权应用程序
    • 令牌将被保存以备将来使用

可用工具

Gmail工具

  • get_latest_emails(max_results: int = 10):从收件箱获取最新电子邮件
  • search_emails(query: str, max_results: int = 10):使用Gmail查询搜索电子邮件
  • get_email_content(email_id: str):获取特定电子邮件的内容
  • send_email(to: str, subject: str, body: str, cc: Optional[str], bcc: Optional[str]):发送电子邮件

日历工具

  • search_events(query: str, max_results: int = 10, time_min: Optional[str]):搜索日历事件
  • create_calendar_event(summary: str, start_time: str, end_time: str, description: Optional[str], location: Optional[str]):创建新事件

后端API MCP服务器

后端API MCP服务器提供了一个模板,用于将您的自定义后端API与Claude Desktop集成。

特性

  • 用户管理操作
  • API标准化响应
  • 错误处理和日志
  • 用于数据验证的Pydantic模型

安装说明

  1. 先决条件:

    • Python 3.x
    • 已安装MCP包
  2. 安装:

    # Install required packages
    pip install pydantic
    
    # Install the server in Claude Desktop
    mcp install backend_server.py
    
  3. 配置:

    • 更新API端点配置
    • 在工具函数中实现实际的API调用
    • 如果需要,添加身份验证

可用工具

  • get_users(max_results: int = 10):获取用户列表
  • create_user(username: str, email: str, password: str):创建新用户
  • search_users(query: str):搜索用户

发展

在调试模式下运行

# Run with debug logging
export MCP_DEBUG=true
mcp dev server.py

# Run without debug logging
mcp run server.py

添加新工具

  1. 定义请求/响应的Pydantic模型
  2. 使用创建新的工具功能 @mcp.tool() 装饰器
  3. 实施错误处理
  4. 添加调试日志

最佳实践

  • 使用适当的错误处理
  • 包括全面的日志记录
  • 使用Pydantic模型验证输入数据
  • 遵循API密钥和令牌的安全最佳实践
  • 确保凭据和敏感数据的安全

安全说明

  • 安全存储API密钥和凭据
  • 对敏感数据使用环境变量
  • 从不将凭据提交到版本控制
  • 在适当的情况下实施限速
  • 遵循OAuth最佳实践

常见问题

  1. 身份验证错误:

    • 检查credentials.json是否存在
    • 验证OAuth令牌的有效性
    • 如果令牌过期,则重新进行身份验证
  2. API费率限制:

    • 实施指数回退
    • 处理超出配额的错误
    • 监控API使用情况
  3. 连接问题:

    • 检查网络连接
    • 验证API端点的可用性
    • 确认防火墙设置

贡献

  1. 分叉存储库
  2. 创建特征分支
  3. 提交更改
  4. 创建pull请求

许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。