办公助手代理

一个智能助手,旨在优化员工的日常生产力,自动管理会议、联系人和电子邮件。

  • by MACHINE-LEARNING-tlp3
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 MACHINE-LEARNING-tlp3/MCP-OFFICE-AGENT

使用说明

#办公室助理

一种智能助理,旨在优化员工的日常生产力,以自动和对话的方式管理会议、联系人和电子邮件。


解决问题的描述

在现代工作环境中,员工花大量时间管理行政任务,如安排会议、寻找联系人或发送电子邮件。这分散了他们对战略和创造性活动的注意力。

该项目通过创建 对话代理人 他充当个人助理。用户可以通过自然聊天与他互动,要求采取以下行动:

  • 安排、重新安排或取消会议。
  • 搜索、添加或编辑联系人。
  • 向您的联系人发送电子邮件。

该系统旨在直观、高效和有用,使员工能够专注于真正重要的事情:工作。


演示(GIF动画)

在这个演示中,用户要求代理向“Calos Lopez”发送带有提醒的电子邮件。代理执行操作并确认发送,实时更新界面。


堆栈技术

该项目是使用以下技术建造的:

  • 后端:

    • FastAPI:创建REST端点并服务代理逻辑。
    • LangChain:将AI模型与工具连接。
    • Pydantic:定义数据模型和验证。
    • Google Gemini API (gemini-2.5-flash):用于对话互动的语言模型。
    • MCP Server (mcp.server.fastmcp):展示会议、联系人和电子邮件管理工具。
    • uvicorn:运行Fastapi的ASGi服务器。
  • 前端:

    • Interfaz web(Vite+React+Tailwind CSS)不会消耗端点 /chat, /contactos, /reuniones y /emails.
  • 其他:

    • dotenv:处理环境变量。
    • CORS Middleware:允许来自前端的请求。

安装说明

  1. 克隆存储库:

    git clone https://github.com/MACHINE-LEARNING-tlp3/MCP-OFFICE-AGENT.git
    cd MCP-OFFICE-AGENT
    
  2. 在后台创建虚拟环境:

    cd mcp-oficina
    python -m venv env
    source ./env/Scripts/activate  # En Windows: env\Scripts\activate
    

  1. 安装依赖项:

    pip install -r requirements.txt
    
  2. 配置环境变量:

    使用以下变量在MCP-Office文件夹中创建.env文件:

    GOOGLE_API_KEY=tu_clave_api_de_gemini
    MCP_SERVER_URL=http://localhost:8000
    AGENT_PORT=8001
    AGENT_HOST=127.0.0.1
    
  3. 启动MCP服务器:

    python mcp_server.py
    
  4. 启动代理服务器:

    python agent_server.py
    
  5. 启动前端 :

cd frontend
npm install
npm run dev
  1. 与代理人互动: 打开Frontend界面并开始与向导聊天。例如:
  • “安排周五上午10点与胡安和玛丽亚会面。”
  • “寻找名为“胡安”的联系人。”
  • “给胡安发一封电子邮件,提醒他开会。”
  • 等等

已实现的功能

  • 安排会议:用户可以指定标题、日期、时间和客人。
  • 查询会议:代理可以显示计划会议的列表。
  • 重新安排会议:代理人可以更改现有会议的日期和时间。
  • 联系人管理:允许搜索、添加、编辑和删除联系人。
  • 发送模拟电子邮件:向联系人发送电子邮件并将其记录在历史记录中。

项目结构

MCP-OFFICE-AGENT/
├── frontend/                     # Frontend del agente
│   ├── App.tsx                   # Componente principal
│   └── src/                      # Código fuente del frontend
│       └── components/
│           ├── Chat.tsx
│           ├── Contactos.tsx
│           ├── Reuniones.tsx
│           └── Emails.tsx
│
├── mcp-oficina/                  # Backend y servidor MCP
│   ├── mcp_server.py             # Tools MCP: reuniones, contactos y emails
│   ├── agent_server.py           # Servidor del agente (LangChain + Gemini)
│   ├── models.py                 # Modelos Pydantic
│   └── requirements.txt          # Dependencias Python
│
└── README.md                     # Documentación del proyecto



项目作者