Skip to main content
Glama
chronis10

FastMCP Gmail Reader Server

by chronis10
README.md

# đź“§ FastMCP Gmail Reader Server

Manage Gmail using a FastMCP API server for Gemini-CLI. Supports reading emails and creating drafts (reply or new).

## 🚀 Features

- Fetch recent emails with pagination
- Create reply drafts
- Create new email drafts

## đź”§ Setup

### Install Dependencies

```bash
pip install uv
cd gemini-tasks-mcp
uv venv
source .venv/bin/activate
uv run main.py
```

### Generate Google API Credentials

1. Go to [Google Cloud Console](https://console.cloud.google.com/).
2. Create a project and enable **Gmail API**.
3. Go to **APIs & Services → Credentials**.
4. Click **“Create Credentials” → “OAuth client ID” → Application type: Desktop App**.
5. Download `credentials.json` and place it in the project folder.

### Gemini-CLI Configuration

```bash
cd ~/.gemini
nano settings.json
```

```json
"mcpServers": {
    "gmailReader": {
      "command": "uv",
      "args": ["run", "main.py"],
      "cwd": "<<full-path>>/gemini-email-mcp",
      "timeout": 20000
    }
}
```

TDQS

B3.4/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: create_new_email_draft for new emails, create_reply_draft for replies, and read_emails for fetching emails. There is no overlap in functionality, making it easy for an agent to select the right tool.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with snake_case: create_new_email_draft, create_reply_draft, and read_emails. The naming is predictable and readable throughout the set.

Tool Count3/5

With only 3 tools, the server feels thin for a Gmail reader, as it lacks operations like updating drafts, deleting emails, or managing labels. While the core functions are present, the scope is limited compared to typical email management needs.

Completeness2/5

The tool set is severely incomplete for a Gmail server. It only supports creating drafts and reading emails, missing essential CRUD operations like sending emails, updating drafts, deleting emails, or accessing other Gmail features such as labels or attachments. This will likely cause agent failures in broader email workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues