使用说明
MCP聊天机器人项目
一个名为“模型上下文协议(MCP)”的聊天机器人,它集成了多项服务,包括Gmail、Google日历、PDF处理、网页搜索以及披萨订购功能。
安装
先决条件
- Python 3.10+(或 Python 3.10及以上版本)
- UV包管理器
设置环境
# Install dependencies
uv sync
# Activate virtual environment
source .venv/bin/activate
谷歌API凭证设置
1. 创建Google云项目
- 首选 Google 云控制台
- 创建一个新项目或选择现有项目
- 启用Gmail API和Google日历API
2. 创建OAuth 2.0凭据
- 首选 凭据;身份证明;资格 > 创建凭据 > OAuth 2.0 客户端ID
- 将应用程序类型设置为 桌面应用程序
- 下载JSON文件并保存为:
gmail/client_secret_[YOUR_CLIENT_ID].apps.googleusercontent.com.json
3. 更新配置
更新 server_config.json 使用您的凭证文件名:
"GMAIL_CREDENTIALS_FILE": "gmail/client_secret_[YOUR_CLIENT_ID].apps.googleusercontent.com.json"
4. 环境变量
创建 .env 包含您的API密钥的文件:
GEMINI_API_KEY=your_gemini_api_key_here
运行聊天机器人
uv run mcp_chatbot.py
首次运行验证
- Gmail和日历服务器将打开浏览器以获取OAuth授权
- 代币将被保存至
gmail/gmail_token.json和gmail/token.json - 后续运行将使用已保存的令牌
可用命令
| 命令 | 描述 |
|---|---|
clear |
清除对话历史 |
quit |
退出聊天机器人 |
MCP服务器
该聊天机器人连接到5台专用服务器:
- Gmail(谷歌邮箱) - 发送和管理电子邮件
- 谷歌日历 - 安排会议和活动
- PDF处理器 - 阅读并回答有关PDF的问题
- 双子座搜索 - 实时网页搜索
- 多米诺(或指多米诺骨牌) - 点披萨
发展
检查MCP服务器
npx @modelcontextprotocol/inspector uv run mcp_servers/google_calendar_server.py
披萨服务员
为避免将敏感信息泄露给API,请使用register_user.py脚本来添加地址和支付信息等私密信息。
添加新服务器
- 在(某个地方/某个系统中)创建服务器
mcp_servers/目录 - 添加配置到
server_config.json - 重启聊天机器人以加载新工具
故障排除
- 认证错误删除令牌文件并重新进行身份验证
- 服务器连接问题检查
mcp_chatbot.log详情如下 - 缺少依赖项跑
uv sync --upgrade
