代理电子邮件系统MCP服务器
使用LangChain和MCP工具,使用Agent AI构建的智能电子邮件助手。它可以自动阅读、分类、标记电子邮件为已读,并回复重要邮件,帮助您保持收件箱的清洁和高效。
该项目包括:
- MCP服务器 和 MCP客户端 与Gmail API异步交互。
- LangChain工具 包装MCP客户端调用以在AI代理中使用。
- A. Streamlit应用程序(
app.py) UI以用户友好的方式与代理交互。
特性
- 阅读Gmail收件箱中的最新电子邮件。
- 发送带有主题和正文的电子邮件。
- 创建Gmail标签。
- 按ID删除电子邮件。
- 创建电子邮件草稿。
- 获取并设置Gmail签名。
- 由LangChain和OpenAI LLMs提供技术支持。
- 通过OAuth 2.0使用Google的Gmail API。
入门指南
先决条件
- Python 3.9+
- 启用Gmail API的Google云控制台项目。
credentials.json从Google API控制台下载的文件。- OpenAI API密钥。
安装
- 克隆存储库
git clone https://github.com/yourusername/gmail-langchain-agent.git
cd gmail-langchain-agent- 安装依赖项
pip install -r requirements.txt- 将您的Google API credentials.json放在根目录中。
- 运行MCP服务器(这将在第一次运行时启动OAuth流):
python mcp_server.py- 运行Streamlit应用程序:
streamlit run app.py- 使用Streamlit UI通过AI代理与您的Gmail进行交互。
文件概述
- mcp_server.py:MCP服务器异步处理Gmail API调用。
- mcp_client.py:MCP客户端函数调用服务器工具。
- gmail_tools.py:封装MCP客户端功能的LangChain工具。
- app.py:流线型应用程序UI,用于与代理交互。
- 需求.txt:Python依赖关系。
配置
- 请确保在中更新您的OpenAI API密钥
app.py或设置环境变量OPENAI_API_KEY. - MCP服务器的第一次运行会打开一个浏览器以获得Gmail OAuth同意。
用法
输入自然语言查询,如:
- “阅读5封最新电子邮件”
- “发送电子邮件至john@example.com主题你好,身体你好,约翰
- “创建一个名为Important的标签”
- “将我的Gmail签名设置为致以最诚挚的问候,穆基兰”
LangChain代理将命令路由到相应的Gmail API工具。
