article
README
🚀 Gmail 附件 MCP 服务器
本项目是一个提供微服务的服务器,借助消息控制协议 (MCP) 实现 Gmail 附件的下载功能,为用户获取 Gmail 附件提供了便捷途径。
🚀 快速开始
本服务器允许您使用消息 ID 下载 Gmail 信息中的附件。它借助 IMAP 连接到 Gmail 并获取附件。
✨ 主要特性
- 可使用消息 ID 下载 Gmail 信息中的附件。
- 运用 SSL 实现与 Gmail 的 IMAP 安全连接。
- 支持通过环境变量配置身份验证凭据。
- 提供基于 MCP 的简单 API 接口。
📦 安装指南
先决条件
- Python 3.7 或更高版本。
- 已安装 uv。
- 启用 IMAP 的 Gmail 账户。
- 若使用两步验证,需准备 Gmail 应用密码。
安装步骤
# 克隆仓库
git clone https://github.com/yourusername/gmail-attachment-mcp-server.git
cd gmail-attachment-mcp-server
# 安装依赖项
uv 同步
⚙️ 配置说明
需设置以下环境变量:
export GMAIL_USERNAME="your.email@gmail.com"
export GMAIL_PASSWORD="your_app_password"
export GMAIL_IMAP_SERVER="imap.gmail.com" # 可选,默认为 imap.gmail.com
⚠️ 重要提示
对于 Gmail,应该使用应用密码而不是常规密码。请参阅 Google 的文档 了解更多信息。
💻 使用示例
启动服务器
python server.py
# 或者
mcp 运行 server.py
使用工具
该服务器公开了一个 download_attachments_tool,接受以下参数:
message_id: Gmail 信息 ID,十六进制格式。download_folder: (可选) 下载到的文件夹路径(默认为 "./attachments")。
该函数返回一个包含下载附件文件路径的字符串列表。
使用 mcp 检查工具
npx @modelcontextprotocol/inspector uv 运行 mcp 运行 server.py
使用鹅 (geese)
extensions:
gmail-attachment-mcp-server:
args:
- run
- /path to virtual env/.venv/bin/mcp
- run
- /path to gmail-attachment-mcp-server/server.py
bundled: null
cmd: uv
description: null
enabled: true
env_keys:
- GMAIL_USERNAME
- GMAIL_PASSWORD
envs: {}
name: gmail-attachment-mcp-server
timeout: 300
type: stdio
📚 详细文档
download_attachments_tool
download_attachments_tool(message_id: str, download_folder="./attachments") -> list[str]
从 Gmail 信息中下载附件,该信息由其消息 ID 标识。
参数:
message_id: Gmail 信息 ID,十六进制格式。download_folder: (可选) 下载到的文件夹路径(默认为 "./attachments")。
返回:
- 包含已下载附件文件路径字符串的列表。
Scan to join WeChat group