个人助理代理

一个基于Gemini 2.0 Flash和模型上下文协议(MCP)的自主早晨简报代理,具有主动推理、多轮工具使用和本地优先隐私功能。

  • by paddumelanahalli
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 paddumelanahalli/MCP-Personal-Assistant

使用说明

MCP个人助理🤖 自主晨间简报代理

使用Gemini 2.0 Flash和模型上下文协议(MCP)构建的自主Morning Briefing代理。具有主动推理、多轮工具使用和本地优先隐私的特点

Gemini 2.0 Flash+模型上下文协议(MCP) 此存储库包含一个个人项目,该项目使用模型上下文协议(MCP)实现了一个自主的“执行助理”。该代理弥合了高级LLM推理和本地数据孤岛(Gmail、日历、天气)之间的差距,以提供主动的早间简报。

🚀 项目概述 大多数人工智能助手都是被动的——他们等待命令。这个代理是主动的。它不仅仅是获取你的日程安排;它会分析它。如果它发现你的生日或一天中的空档,它会在你问之前自主计划并执行后续行动(比如研究礼物创意或起草电子邮件)。

“黄金跑”里程碑 在最后一次迭代中,代理成功执行了以下工作流程:

并行上下文收集:同时获取天气、未读电子邮件和日历事件。

自主触发:确定2026年7月的生日。

自动功能调用:通过DuckDuckGo独立搜索技术礼品,并使用结果在Gmail中创建草稿。

🛠️ 技术栈和架构 法学硕士:Gemini 2.0 Flash(通过谷歌GenAI SDK)

协议:模型上下文协议(MCP)

后端:Python 3.13

集成:*谷歌Gmail API:用于阅读未读邮件和创建草稿。

谷歌日历API:用于日程分析。

DuckDuckGo搜索:用于实时网络研究。

📂 文件结构 server.py:MCP功能提供程序。此文件定义了工具(Gmail、日历、搜索),并处理与谷歌服务的安全OAuth2连接。

run_check_mcp.py:编排器。此脚本连接到MCP服务器,并使用Gemini 2.0对收集到的数据进行推理并执行工具。

⚙️ 设置和安装

  1. 先决条件 启用Gmail和日历API的谷歌云项目。

来自Google Cloud控制台的credentials.json文件。

双子星API密钥。

  1. 环境设置 在根目录中创建.env文件:

代码片段

GEMINI_API_KEY=您的_API_KEY_here 3.安装 pip安装mcp谷歌genai duckduckgo搜索谷歌认证oauthlib谷歌api python客户端python dotenv

  1. 用法 确保server.py与run_check_mcp.py位于同一目录中:

python run_check_mcp.py

🧠 主要学习内容 本地优先隐私:通过使用MCP,电子邮件和日历事件等敏感数据在本地处理。仅将摘要上下文发送给LLM。

自动函数调用:利用GenAI SDK中的Automatic_Function_Calling配置,无需在多回合对话中进行手动状态管理。

异步性能:利用asyncio.gather执行工具可将上下文收集延迟减少50%以上。

最终项目状态:功能完成✅

该项目成功地展示了从简单的“与数据聊天”机器人到“理性与行动”自主代理的过渡。

联系方式/让我们联系: “我对本地优先的人工智能和代理工作流程的未来充满热情。如果你在MCP领域进行构建,让我们在LinkedIn上联系吧!”