Google Workspace Mcp Server

Google Workspace Mcp Server

🚀 Google 工作区 MCP 服务器

Google 工作区 MCP 服务器是一个基于 Model Context Protocol (MCP) 的服务器,它提供了与 Gmail 和日历 API 相互操作的工具。借助 MCP 接口,你可以对电子邮件和日历事件进行程序化管理,极大地提高工作效率。

✨ 主要特性

Gmail 工具

  • list_emails:列出收件箱中的近期邮件,支持可选过滤,让你快速定位所需邮件。
  • search_emails:使用 Gmail 查询语法进行高级邮件搜索,满足复杂的搜索需求。
  • send_email:发送新邮件,支持 CC 和 BCC,方便与多人沟通。
  • modify_email:修改电子邮件标签(存档、删除、标记为已读/未读),轻松管理邮件状态。

日历工具

  • list_events:列出即将进行的日历事件,支持日期范围过滤,合理规划日程。
  • create_event:创建新的日历事件并添加参与者,高效组织会议。
  • update_event:更新现有日历事件,确保日程信息的准确性。
  • delete_event:删除日历事件,灵活调整日程安排。

📦 安装指南

先决条件

  1. Node.js:安装 Node.js 14 或更高版本。
  2. Google Cloud Console 设置
    • 访问 Google Cloud Console
    • 创建新项目或选择现有项目。
    • 启用 Gmail API 和 Google Calendar API:
      1. 转到 "APIs & Services" > "Library"。
      2. 搜索并启用 "Gmail API"。
      3. 搜索并启用 "Google Calendar API"。
    • 设置 OAuth 2.0 客户端 ID:
      1. 转到 Google Cloud Console
      2. 选择你的项目。
      3. 转到 "APIs & Services" > "OAuth 2.0 Client IDs"。
      4. 添加一个新的 OAuth 2.0 客户端 ID,指定名称和允许的重定向 URI(例如:http://localhost:3000)。

设置步骤

  1. 克隆仓库
    git clone https://github.com/your-username/google-workspace-mcp.git
    cd google-workspace-mcp
    
  2. 安装依赖项
    npm install
    
  3. 配置环境变量
    • 创建一个 .env 文件(如果尚未创建)。
    • 添加以下内容,将 YOUR_CLIENT_IDYOUR_CLIENT_SECRET 替换为你从 Google Cloud Console 获取的值:
      CLIENT_ID=your_client_id
      CLIENT_SECRET=your_client_secret
      REDIRECT_URI=http://localhost:3000
      
  4. 运行服务器
    npm start
    

💻 使用示例

Gmail 示例

基础用法

// 列出近期邮件
const response = await fetch('http://localhost:3000/api/gmail/list_emails');
const data = await response.json();
console.log(data);

高级用法

// 搜索特定内容的邮件
const requestBody = {
query: 'subject:meeting',
maxResults: 10
};
const response = await fetch('http://localhost:3000/api/gmail/search_emails', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(requestBody)
});
const data = await response.json();
console.log(data);

日历示例

基础用法

// 列出即将进行的事件
const requestBody = {
timeMin: '2024-01-01T00:00:00Z',
timeMax: '2024-12-31T23:59:59Z',
maxResults: 10
};
const response = await fetch('http://localhost:3000/api/calendar/list_events', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(requestBody)
});
const data = await response.json();
console.log(data);

📚 详细文档

故障排除

  1. 身份验证问题
    • 确保所有必需的 OAuth 作用域已授予。
    • 验证客户端 ID 和密钥是否正确。
    • 检查刷新令牌是否有效。
  2. API 错误
    • 在 Google Cloud Console 中检查 API 配额和限制。
    • 确保项目上启用了所有必要的 API。
    • 确认请求参数符合要求的格式。

📄 许可证

此项目在 MIT License 下发行。

  • 0 关注
  • 0 收藏,25 浏览
  • system 提出于 2025-10-03 11:00

相似服务问题

相关AI产品