- Google Workspace MCP Server
Google Workspace MCP Server
Content
Google Workspace MCP Server
A Model Context Protocol (MCP) server for interacting with Google Workspace APIs including Gmail, Drive, Calendar, Docs, Sheets, and Slides.
## Features
- **Gmail API**: Send emails, list messages, manage labels, and more
- **Drive API**: List files, create folders, and upload files
- **Docs API**: Create and edit Google Docs
- **Sheets API**: Read and write spreadsheet data
- **Slides API**: Create presentations and slides
- **Calendar API**: List and create calendar events
- **Authentication**: OAuth2 authentication flow helpers
## Prerequisites
- Node.js 16+
- Google Cloud project with the necessary APIs enabled
- OAuth 2.0 client credentials
## Installation
```bash
npm install
```
## Configuration
1. Copy the `.env.example` file to `.env`:
```bash
cp .env.example .env
```
2. Edit the `.env` file with your Google API credentials:
```
CLIENT_ID=your_client_id
CLIENT_SECRET=your_client_secret
REDIRECT_URI=http://localhost:3000/oauth2callback
REFRESH_TOKEN=your_refresh_token
```
3. If you don't have a refresh token yet, you can use the authentication tools provided by the server to get one.
## Usage
### Starting the Server
```bash
npm run dev
```
### Using with MCP Inspector
To test the server with the MCP Inspector:
```bash
npm run inspect
```
This will open the MCP Inspector in your browser, allowing you to test all tools and resources.
### Authentication
If you don't have a refresh token, use these tools:
1. Use the `generate_auth_url` tool to get an authorization URL
2. Open the URL in a browser and authorize the application
3. Copy the authorization code from the redirect URL
4. Use the `exchange_code_for_tokens` tool with the code to get a refresh token
5. Add the refresh token to your `.env` file
## Available Tools
### Gmail
- `gmail_list_messages`: List Gmail messages with optional filters
- `gmail_get_message`: Get a specific Gmail message by ID
- `gmail_send_message`: Send a new email message
- `gmail_list_labels`: List all Gmail labels
- `gmail_modify_message`: Modify a message's labels
- `gmail_trash_message`: Move a message to trash
- `gmail_untrash_message`: Remove a message from trash
- `gmail_create_draft`: Create a draft email
### Drive
- `drive_list_files`: List files in Google Drive
- `drive_get_file`: Get metadata for a specific file
- `drive_create_folder`: Create a new folder in Google Drive
- `drive_upload_file`: Upload a file to Google Drive
### Docs
- `docs_get_document`: Get the content of a Google Doc
- `docs_create_document`: Create a new Google Doc
- `docs_append_text`: Append text to a Google Doc
### Sheets
- `sheets_get_values`: Get values from a Google Sheet
- `sheets_update_values`: Update values in a Google Sheet
- `sheets_create_spreadsheet`: Create a new Google Sheet
### Slides
- `slides_create_presentation`: Create a new Google Slides presentation
- `slides_get_presentation`: Get information about a Google Slides presentation
- `slides_create_slide`: Create a new slide in a presentation
### Calendar
- `calendar_list_events`: List events from Google Calendar
- `calendar_create_event`: Create a new event in Google Calendar
### Authentication
- `generate_auth_url`: Generate an OAuth2 authorization URL
- `exchange_code_for_tokens`: Exchange an authorization code for OAuth2 tokens
## Available Resources
- `gmail://message/{messageId}`: Get a specific Gmail message
- `gmail://thread/{threadId}`: Get a Gmail thread with all messages
- `gmail://labels`: List all Gmail labels
- `workspace://docs/{service}`: Documentation for a specific Google Workspace API
- `workspace://auth/guide`: Authentication guide for Google Workspace APIs
## License
MIT
Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
CursorThe AI Code Editor
Playwright McpPlaywright MCP server
Y GuiA web-based graphical interface for AI chat interactions with support for multiple AI models and MCP (Model Context Protocol) servers.
RedisA Model Context Protocol server that provides access to Redis databases. This server enables LLMs to interact with Redis key-value stores through a set of standardized tools.
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
WindsurfThe new purpose-built IDE to harness magic
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
Tavily Mcp
Serper MCP ServerA Serper MCP Server
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
ChatWiseThe second fastest AI chatbot™
DeepChatYour AI Partner on Desktop
Amap Maps高德地图官方 MCP Server
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题;
Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.