1. Conduid
  2. Security
  3. Gmail API Integration Server
MCP server · Security

Gmail API Integration Server

Provide seamless access to Gmail functionalities including email sending, retrieval, label and thread management, and mailbox settings through a standardized interface. Enable secure OAuth2 authentication for personalized user access and support comprehensive Gmail API features. Simplify email management workflows by integrating Gmail capabilities into your applications or agents.

Unclaimed last commit a year ago security
34Low

Scored 6 months ago · breakdown

About Gmail API Integration Server

Gmail API Integration Server is an MCP server published by HitmanLy007 in the Security category: provide seamless access to Gmail functionalities including email sending, retrieval, label and thread management, and mailbox settings through a standardized interface. Enable secure OAuth2 authentication for personalized user access and support comprehensive Gmail API features. Simplify email management workflows by integrating Gmail capabilities into your applications or agents.

The repository has 1 stars and 0 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.

Install

From source
git clone https://github.com/HitmanLy007/gmail-mcp

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Tools (64)

add_delegateAdds a delegate to the specified account

Parameters not published.

batch_delete_messagesDelete multiple messages

Parameters not published.

batch_modify_messagesModify the labels on multiple messages

Parameters not published.

create_draftCreate a draft email in Gmail. Note the mechanics of the raw parameter.

Parameters not published.

create_filterCreates a filter

Parameters not published.

create_forwarding_addressCreates a forwarding address

Parameters not published.

create_labelCreate a new label

Parameters not published.

create_send_asCreates a custom send-as alias

Parameters not published.

delete_draftDelete a draft

Parameters not published.

delete_filterDeletes a filter

Parameters not published.

Show all 64 tools
delete_forwarding_addressDeletes the specified forwarding address

Parameters not published.

delete_labelDelete a label

Parameters not published.

delete_messageImmediately and permanently delete a message

Parameters not published.

delete_send_asDeletes the specified send-as alias

Parameters not published.

delete_smime_infoDeletes the specified S/MIME config for the specified send-as alias

Parameters not published.

delete_threadDelete a thread

Parameters not published.

get_attachmentGet a message attachment

Parameters not published.

get_auto_forwardingGets auto-forwarding settings

Parameters not published.

get_delegateGets the specified delegate

Parameters not published.

get_draftGet a specific draft by ID

Parameters not published.

get_filterGets a filter

Parameters not published.

get_forwarding_addressGets the specified forwarding address

Parameters not published.

get_imapGets IMAP settings

Parameters not published.

get_labelGet a specific label by ID

Parameters not published.

get_languageGets language settings

Parameters not published.

get_messageGet a specific message by ID with format options

Parameters not published.

get_popGets POP settings

Parameters not published.

get_profileGet the current user

Parameters not published.

get_send_asGets the specified send-as alias

Parameters not published.

get_smime_infoGets the specified S/MIME config for the specified send-as alias

Parameters not published.

get_threadGet a specific thread by ID

Parameters not published.

get_vacationGet vacation responder settings

Parameters not published.

insert_smime_infoInsert (upload) the given S/MIME config for the specified send-as alias

Parameters not published.

list_delegatesLists the delegates for the specified account

Parameters not published.

list_draftsList drafts in the user

Parameters not published.

list_filtersLists the message filters of a Gmail user

Parameters not published.

list_forwarding_addressesLists the forwarding addresses for the specified account

Parameters not published.

list_labelsList all labels in the user

Parameters not published.

list_messagesList messages in the user

Parameters not published.

list_send_asLists the send-as aliases for the specified account

Parameters not published.

list_smime_infoLists S/MIME configs for the specified send-as alias

Parameters not published.

list_threadsList threads in the user

Parameters not published.

modify_messageModify the labels on a message

Parameters not published.

modify_threadModify the labels applied to a thread

Parameters not published.

patch_labelPatch an existing label (partial update)

Parameters not published.

patch_send_asPatches the specified send-as alias

Parameters not published.

remove_delegateRemoves the specified delegate

Parameters not published.

send_draftSend an existing draft

Parameters not published.

send_messageSend an email message to specified recipients. Note the mechanics of the raw parameter.

Parameters not published.

set_default_smime_infoSets the default S/MIME config for the specified send-as alias

Parameters not published.

stop_mail_watchStop receiving push notifications for the given user mailbox

Parameters not published.

trash_messageMove a message to the trash

Parameters not published.

trash_threadMove a thread to the trash

Parameters not published.

untrash_messageRemove a message from the trash

Parameters not published.

untrash_threadRemove a thread from the trash

Parameters not published.

update_auto_forwardingUpdates automatic forwarding settings

Parameters not published.

update_imapUpdates IMAP settings

Parameters not published.

update_labelUpdate an existing label

Parameters not published.

update_languageUpdates language settings

Parameters not published.

update_popUpdates POP settings

Parameters not published.

update_send_asUpdates a send-as alias

Parameters not published.

update_vacationUpdate vacation responder settings

Parameters not published.

verify_send_asSends a verification email to the specified send-as alias

Parameters not published.

watch_mailboxWatch for changes to the user

Parameters not published.

Ask AI

✦

Ask AI about Gmail API Integration Server

Powered by Claude · Grounded in docs

I know everything about Gmail API Integration Server. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

Gmail MCP

npm version smithery badge

A Model Context Protocol (MCP) implementation for the Gmail API, providing a standardized interface for email management, sending, and retrieval.

Features

  • Complete Gmail API coverage including messages, threads, labels, drafts, and settings
  • Support for sending, drafting, and managing emails
  • Label management with customizable colors and visibility settings
  • Thread operations for conversation management
  • Settings management including vacation responder, IMAP/POP, and language settings
  • History tracking for mailbox changes
  • Secure OAuth2 authentication using Google Cloud credentials

Prerequisites

To run this MCP server, you first need to set up a Google API Client for your organization, with each user running a script to retrieve their own OAuth refresh token.

Google API Client Setup (once per organization)

  1. Go to the Google Cloud Console.
  2. Create a new project or select an existing one.
  3. Enable the Gmail API for your project.
  4. Go to Credentials and create an OAuth 2.0 Client ID. Choose "Desktop app" for the client type.
  5. Download and save the OAuth keys JSON as ~/.gmail-mcp/gcp-oauth.keys.json. ⚠️ NOTE: to create ~/.gmail-mcp/ through MacOS's Finder app you need to enable hidden files first.
  6. (Optional) For remote server installation (ex. using Smithery CLI), note the CLIENT_ID and CLIENT_SECRET from this file.

Client OAuth (once per user)

  1. Have the user copy ~/.gmail-mcp/gcp-oauth.keys.json to their computer at the same path.
  2. Run npx @shinzolabs/gmail-mcp auth.
  3. A browser window will open where the user may select a profile, review the requested scopes, and approve.
  4. (Optional) For remote server installation, note the file path mentioned in the success message (~/.gmail-mcp/credentials.json by default). The user's REFRESH_TOKEN will be found here.

Client Configuration

There are several options to configure your MCP client with the server. For hosted/remote server setup, use Smithery's CLI with a Smithery API Key. For local installation, use npx or build from source. Each of these options is explained below.

Smithery Remote Server (Recommended)

To add a remote server to your MCP client config.json, run the following command from Smithery CLI:

npx -y @smithery/cli install @shinzo-labs/gmail-mcp

Enter your CLIENT_ID, CLIENT_SECRET, and REFRESH_TOKEN when prompted.

Smithery SDK

If you are developing your own agent application, you can use the boilerplate code here.

NPX Local Install

To install the server locally with npx, add the following to your MCP client config.json:

{
  "mcpServers": {
    "gmail": {
      "command": "npx",
      "args": [
        "@shinzolabs/gmail-mcp"
      ]
    }
  }
}

Build from Source

  1. Download the repo:
git clone https://github.com/shinzo-labs/gmail-mcp.git
  1. Install packages and build with pnpm (inside cloned repo):
pnpm i && pnpm build
  1. Add the following to your MCP client config.json:
{
  "mcpServers": {
    "gmail": {
      "command": "node",
      "args": [
        "/path/to/gmail-mcp/dist/index.js"
      ]
    }
  }
}

Config Variables

Variable Description Required? Default
AUTH_SERVER_PORT Port for the temporary OAuth authentication server No 3000
CLIENT_ID Google API client ID (found in GMAIL_OAUTH_PATH) Yes if remote server connection ''
CLIENT_SECRET Google API client secret (found in GMAIL_OAUTH_PATH) Yes if remote server connection ''
GMAIL_CREDENTIALS_PATH Path to the user credentials file No MCP_CONFIG_DIR/credentials.json
GMAIL_OAUTH_PATH Path to the Google API Client file No MCP_CONFIG_DIR/gcp-oauth.keys.json
MCP_CONFIG_DIR Directory for storing configuration files No ~/.gmail-mcp
REFRESH_TOKEN OAuth refresh token (found in GMAIL_CREDENTIALS_PATH) Yes if remote server connection ''
PORT Port for Streamable HTTP transport method No 3000

Supported Endpoints

User Management

  • get_profile: Get the current user's Gmail profile
  • stop_mail_watch: Stop receiving push notifications
  • watch_mailbox: Set up push notifications for mailbox changes

Message Management

Managing Messages

  • list_messages: List messages with optional filtering
  • get_message: Get a specific message
  • get_attachment: Get a message attachment
  • modify_message: Modify message labels
  • send_message: Send an email message to specified recipients
  • delete_message: Permanently delete a message
  • trash_message: Move message to trash
  • untrash_message: Remove message from trash
  • batch_modify_messages: Modify multiple messages
  • batch_delete_messages: Delete multiple messages

Label Management

  • list_labels: List all labels
  • get_label: Get a specific label
  • create_label: Create a new label
  • update_label: Update a label
  • patch_label: Partial update of a label
  • delete_label: Delete a label

Thread Management

  • list_threads: List email threads
  • get_thread: Get a specific thread
  • modify_thread: Modify thread labels
  • trash_thread: Move thread to trash
  • untrash_thread: Remove thread from trash
  • delete_thread: Delete a thread

Draft Management

  • list_drafts: List drafts in the user's mailbox
  • get_draft: Get a specific draft by ID
  • create_draft: Create a draft email in Gmail
  • update_draft: Replace a draft's content
  • delete_draft: Delete a draft
  • send_draft: Send an existing draft

Settings Management

Auto-Forwarding

  • get_auto_forwarding: Get auto-forwarding settings
  • update_auto_forwarding: Update auto-forwarding settings

IMAP Settings

  • get_imap: Get IMAP settings
  • update_imap: Update IMAP settings

POP Settings

  • get_pop: Get POP settings
  • update_pop: Update POP settings

Vacation Responder

  • get_vacation: Get vacation responder settings
  • update_vacation: Update vacation responder

Language Settings

  • get_language: Get language settings
  • update_language: Update language settings

Delegates

  • list_delegates: List account delegates
  • get_delegate: Get a specific delegate
  • add_delegate: Add a delegate
  • remove_delegate: Remove a delegate

Filters

  • list_filters: List email filters
  • get_filter: Get a specific filter
  • create_filter: Create a new filter
  • delete_filter: Delete a filter

Forwarding Addresses

  • list_forwarding_addresses: List forwarding addresses
  • get_forwarding_address: Get a specific forwarding address
  • create_forwarding_address: Create a forwarding address
  • delete_forwarding_address: Delete a forwarding address

Send-As Settings

  • list_send_as: List send-as aliases
  • get_send_as: Get a specific send-as alias
  • create_send_as: Create a send-as alias
  • update_send_as: Update a send-as alias
  • patch_send_as: Partial update of a send-as alias
  • verify_send_as: Send verification email
  • delete_send_as: Delete a send-as alias

S/MIME Settings

  • list_smime_info: List S/MIME configurations
  • get_smime_info: Get a specific S/MIME config
  • insert_smime_info: Upload a new S/MIME config
  • set_default_smime_info: Set default S/MIME config
  • delete_smime_info: Delete an S/MIME config

Contributing

Contributions are welcomed and encouraged! Please read CONTRIBUTING.md for guidelines on issues, contributions, and contact information.

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About Gmail API Integration Server

How do I install Gmail API Integration Server?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Gmail API Integration Server safe to use with an AI agent?

Its trust score is 34 out of 100 (low). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Gmail API Integration Server still maintained?

The last commit was a year ago. That's long enough that you should check whether the maintainer is responding to issues before depending on it.