rickjang-gmail-mcp-server


Namerickjang-gmail-mcp-server JSON
Version 1.1.0 PyPI version JSON
download
home_pageNone
SummaryA resilient MCP server built with fastMCP for sending emails through Gmail's SMTP server using AI agents via stdio transport
upload_time2025-09-14 12:22:22
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseNone
keywords mcp gmail email smtp ai agent
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            
# Gmail MCP Server

A resilient MCP (Model Context Protocol) server built with fastMCP for sending emails through Gmail's SMTP server using AI agents. This server uses stdio transport for seamless integration with MCP clients.

[![PyPI version](https://badge.fury.io/py/rickjang-gmail-mcp-server.svg)](https://badge.fury.io/py/rickjang-gmail-mcp-server)
[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

## Features

- Send emails via Gmail SMTP
- Fetch recent emails from Gmail folders
- Handle email attachments (from URLs, local files, or pre-staged files)
- stdio transport for MCP client integration


## Gmail App Password Setup

To use this MCP server, you'll need to create a Gmail App Password:

1. Go to your [Google Account settings](https://myaccount.google.com/)
2. Select **Security** from the navigation panel
3. Under "How you sign in to Google," select **2-Step Verification**
4. At the bottom, select **App passwords**
5. Select the app and device you want to generate the app password for
6. Select **Generate**
7. Follow the instructions to enter the app password on your device
8. Select **Done**

Use this app password as your `SMTP_PASSWORD` in the configuration.


## Configuration Options

### Environment Variables

- `SMTP_USERNAME`: Your Gmail email address
- `SMTP_PASSWORD`: Your Gmail app password (not your regular password)

### Server Configuration

- **Transport**: stdio for MCP client integration
- **Protocol**: MCP (Model Context Protocol)

## Installation

### Option 1: Direct Installation with pip

Install the package from PyPI:

```bash
pip install rickjang-gmail-mcp-server
```

Then set up your Gmail credentials as environment variables:
```bash
export SMTP_USERNAME="your-email@gmail.com"
export SMTP_PASSWORD="your-app-password"
```

Run the server:
```bash
rickjang-gmail-mcp-server
```

### Option 2: MCP Server Configuration with uv (Recommended)

Add the following to your MCP client configuration (e.g., Claude Desktop):

```json
{
  "mcpServers": {
    "gmail-mcp": {
      "command": "uv",
      "args": [
        "tool", 
        "run", 
        "rickjang-gmail-mcp-server"
      ],
      "env": {
        "SMTP_USERNAME": "your-email@gmail.com",
        "SMTP_PASSWORD": "your-gmail-app-password"
      }
    }
  }
}
```

This method automatically installs the package using uv and sets the environment variables directly in the configuration.

### Claude Desktop Configuration

For Claude Desktop, add this to your `claude_desktop_config.json` file:

**macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`  
**Windows**: `%APPDATA%/Claude/claude_desktop_config.json`

```json
{
  "mcpServers": {
    "gmail-mcp": {
      "command": "uv",
      "args": [
        "tool", 
        "run", 
        "rickjang-gmail-mcp-server"
      ],
      "env": {
        "SMTP_USERNAME": "jyjang@uengine.org",
        "SMTP_PASSWORD": "your-gmail-app-password"
      }
    }
  }
}
```

After adding this configuration, restart Claude Desktop to load the MCP server.

## Local Development

1. Clone the repository:
   ```bash
   git clone https://github.com/rickjang/Gmail-mcp-server.git
   cd Gmail-mcp-server
   ```

2. Install in development mode:
   ```bash
   pip install -e .
   ```

3. Set environment variables and run:
   ```bash
   export SMTP_USERNAME="your-email@gmail.com"
   export SMTP_PASSWORD="your-app-password"
   rickjang-gmail-mcp-server
   ```

## Available Tools

This MCP server provides the following tools:

### send_email_tool
Send emails via Gmail SMTP with optional attachments.

**Parameters:**
- `recipient` (string): Email address to send to
- `subject` (string): Email subject
- `body` (string): Email body text
- `attachment_path` (string, optional): Direct file path for attachment
- `attachment_url` (string, optional): URL to download attachment from
- `attachment_name` (string, optional): Filename for attachment

### fetch_recent_emails
Fetch recent emails from a Gmail folder.

**Parameters:**
- `folder` (string, optional): Email folder to fetch from (default: "INBOX")
- `limit` (integer, optional): Maximum number of emails to fetch (default: 10)

## Testing

Test the server locally:

```bash
# Basic functionality test
python test_local.py

# stdio transport test
python test_stdio.py
```

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "rickjang-gmail-mcp-server",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "mcp, gmail, email, smtp, ai, agent",
    "author": null,
    "author_email": "Rick Jang <rickjang@example.com>",
    "download_url": "https://files.pythonhosted.org/packages/83/ce/68c3cd87ab101ae91fa3af62015123914c5f42be6445e18d67b25e3a4fc3/rickjang_gmail_mcp_server-1.1.0.tar.gz",
    "platform": null,
    "description": "\n# Gmail MCP Server\n\nA resilient MCP (Model Context Protocol) server built with fastMCP for sending emails through Gmail's SMTP server using AI agents. This server uses stdio transport for seamless integration with MCP clients.\n\n[![PyPI version](https://badge.fury.io/py/rickjang-gmail-mcp-server.svg)](https://badge.fury.io/py/rickjang-gmail-mcp-server)\n[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n## Features\n\n- Send emails via Gmail SMTP\n- Fetch recent emails from Gmail folders\n- Handle email attachments (from URLs, local files, or pre-staged files)\n- stdio transport for MCP client integration\n\n\n## Gmail App Password Setup\n\nTo use this MCP server, you'll need to create a Gmail App Password:\n\n1. Go to your [Google Account settings](https://myaccount.google.com/)\n2. Select **Security** from the navigation panel\n3. Under \"How you sign in to Google,\" select **2-Step Verification**\n4. At the bottom, select **App passwords**\n5. Select the app and device you want to generate the app password for\n6. Select **Generate**\n7. Follow the instructions to enter the app password on your device\n8. Select **Done**\n\nUse this app password as your `SMTP_PASSWORD` in the configuration.\n\n\n## Configuration Options\n\n### Environment Variables\n\n- `SMTP_USERNAME`: Your Gmail email address\n- `SMTP_PASSWORD`: Your Gmail app password (not your regular password)\n\n### Server Configuration\n\n- **Transport**: stdio for MCP client integration\n- **Protocol**: MCP (Model Context Protocol)\n\n## Installation\n\n### Option 1: Direct Installation with pip\n\nInstall the package from PyPI:\n\n```bash\npip install rickjang-gmail-mcp-server\n```\n\nThen set up your Gmail credentials as environment variables:\n```bash\nexport SMTP_USERNAME=\"your-email@gmail.com\"\nexport SMTP_PASSWORD=\"your-app-password\"\n```\n\nRun the server:\n```bash\nrickjang-gmail-mcp-server\n```\n\n### Option 2: MCP Server Configuration with uv (Recommended)\n\nAdd the following to your MCP client configuration (e.g., Claude Desktop):\n\n```json\n{\n  \"mcpServers\": {\n    \"gmail-mcp\": {\n      \"command\": \"uv\",\n      \"args\": [\n        \"tool\", \n        \"run\", \n        \"rickjang-gmail-mcp-server\"\n      ],\n      \"env\": {\n        \"SMTP_USERNAME\": \"your-email@gmail.com\",\n        \"SMTP_PASSWORD\": \"your-gmail-app-password\"\n      }\n    }\n  }\n}\n```\n\nThis method automatically installs the package using uv and sets the environment variables directly in the configuration.\n\n### Claude Desktop Configuration\n\nFor Claude Desktop, add this to your `claude_desktop_config.json` file:\n\n**macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`  \n**Windows**: `%APPDATA%/Claude/claude_desktop_config.json`\n\n```json\n{\n  \"mcpServers\": {\n    \"gmail-mcp\": {\n      \"command\": \"uv\",\n      \"args\": [\n        \"tool\", \n        \"run\", \n        \"rickjang-gmail-mcp-server\"\n      ],\n      \"env\": {\n        \"SMTP_USERNAME\": \"jyjang@uengine.org\",\n        \"SMTP_PASSWORD\": \"your-gmail-app-password\"\n      }\n    }\n  }\n}\n```\n\nAfter adding this configuration, restart Claude Desktop to load the MCP server.\n\n## Local Development\n\n1. Clone the repository:\n   ```bash\n   git clone https://github.com/rickjang/Gmail-mcp-server.git\n   cd Gmail-mcp-server\n   ```\n\n2. Install in development mode:\n   ```bash\n   pip install -e .\n   ```\n\n3. Set environment variables and run:\n   ```bash\n   export SMTP_USERNAME=\"your-email@gmail.com\"\n   export SMTP_PASSWORD=\"your-app-password\"\n   rickjang-gmail-mcp-server\n   ```\n\n## Available Tools\n\nThis MCP server provides the following tools:\n\n### send_email_tool\nSend emails via Gmail SMTP with optional attachments.\n\n**Parameters:**\n- `recipient` (string): Email address to send to\n- `subject` (string): Email subject\n- `body` (string): Email body text\n- `attachment_path` (string, optional): Direct file path for attachment\n- `attachment_url` (string, optional): URL to download attachment from\n- `attachment_name` (string, optional): Filename for attachment\n\n### fetch_recent_emails\nFetch recent emails from a Gmail folder.\n\n**Parameters:**\n- `folder` (string, optional): Email folder to fetch from (default: \"INBOX\")\n- `limit` (integer, optional): Maximum number of emails to fetch (default: 10)\n\n## Testing\n\nTest the server locally:\n\n```bash\n# Basic functionality test\npython test_local.py\n\n# stdio transport test\npython test_stdio.py\n```\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A resilient MCP server built with fastMCP for sending emails through Gmail's SMTP server using AI agents via stdio transport",
    "version": "1.1.0",
    "project_urls": {
        "Homepage": "https://github.com/rickjang/Gmail-mcp-server",
        "Issues": "https://github.com/rickjang/Gmail-mcp-server/issues",
        "Repository": "https://github.com/rickjang/Gmail-mcp-server"
    },
    "split_keywords": [
        "mcp",
        " gmail",
        " email",
        " smtp",
        " ai",
        " agent"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "288ce2b4f14d3d2b1460d78d82ffc74aca69c343028246fd98ae853b13ec191b",
                "md5": "9673590240a3990b80cb9427cb0e02e0",
                "sha256": "7aec32f64c56ec901fd6d2511982ed39f442c05309d7b6a07c8551d10631402c"
            },
            "downloads": -1,
            "filename": "rickjang_gmail_mcp_server-1.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "9673590240a3990b80cb9427cb0e02e0",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 6931,
            "upload_time": "2025-09-14T12:22:21",
            "upload_time_iso_8601": "2025-09-14T12:22:21.112453Z",
            "url": "https://files.pythonhosted.org/packages/28/8c/e2b4f14d3d2b1460d78d82ffc74aca69c343028246fd98ae853b13ec191b/rickjang_gmail_mcp_server-1.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "83ce68c3cd87ab101ae91fa3af62015123914c5f42be6445e18d67b25e3a4fc3",
                "md5": "8636634c897393ba00010e05632e42b0",
                "sha256": "1c7b10873b5b2ea0e7f64b6c49b02f76f17664e0f6a8f968c27715ad12686ab8"
            },
            "downloads": -1,
            "filename": "rickjang_gmail_mcp_server-1.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "8636634c897393ba00010e05632e42b0",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 6341,
            "upload_time": "2025-09-14T12:22:22",
            "upload_time_iso_8601": "2025-09-14T12:22:22.566003Z",
            "url": "https://files.pythonhosted.org/packages/83/ce/68c3cd87ab101ae91fa3af62015123914c5f42be6445e18d67b25e3a4fc3/rickjang_gmail_mcp_server-1.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-14 12:22:22",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "rickjang",
    "github_project": "Gmail-mcp-server",
    "github_not_found": true,
    "lcname": "rickjang-gmail-mcp-server"
}
        
Elapsed time: 0.55551s