Gmail MCP Server
@christo707
Gmail MCP Server using Java and Spring Boot
Overview
What is Gmail MCP Server?
Gmail MCP Server is a Spring Boot MCP (Model Context Protocol) server that provides tools for interacting with Gmail, such as sending, reading, trashing, and marking emails. It also includes a client (ClientStdio) for testing the server via standard I/O.
How to use Gmail MCP Server?
Requires Java 17+, Maven, and Gmail API credentials. Clone the repository, configure OAuth credentials (place credentials.json in src/main/resources), build with mvn clean install, then run the server with mvn spring-boot:run. The ClientStdio client can be used for testing.
Key features of Gmail MCP Server
trashEmail: Moves an email to the trash by ID.markEmailAsRead: Marks an email as read by ID.sendEmail: Sends an email to a specified recipient.getUnreadMessages: Retrieves unread messages.readEmail: Reads an email by its ID.ClientStdio: test client using standard I/O.
Use cases of Gmail MCP Server
- Automate email management tasks through MCP-powered assistants.
- Send notifications or replies programmatically.
- Read and organize inbox without manual Gmail access.
- Integrate Gmail actions into MCP-based workflows.
FAQ from Gmail MCP Server
What are the prerequisites?
Java 17 or higher, Maven, and Gmail API credentials.
How do I get Gmail API credentials?
Create a Google Cloud project, enable the Gmail API, configure an OAuth consent screen (external, with your email as a test user), and create an OAuth Client ID for a Desktop App. Download the JSON, rename it to credentials.json, and place it in src/main/resources.
How do I run the server?
After building the project with mvn clean install, run mvn spring-boot:run.
Is there a test client included?
Yes, the ClientStdio class can be used to test the MCP server functionality using standard I/O.
What OAuth scope is required?
The scope https://www.googleapis.com/auth/gmail/modify is used.