About
Draft — Model Context Protocol server
README
This project implements a minimal Model Context Protocol (MCP) server named AVA, exposing a single tool: write_email_draft.
The tool creates Gmail drafts from structured input, allowing AI agents like Claude to generate email content safely — without sending anything. This enables reviewable automation for follow-ups, summaries, or outreach.
It integrates with the Gmail API using OAuth2 authentication, ensuring secure access and user control. The server responds with metadata including the draft ID, making it ideal for real-world AI workflows.
Architecture Overview
Claude AI → MCP Tool Call → AVA Server → Gmail API → Draft Created
┌────────────────────────────┐
│ Claude AI │
│ (MCP client) │
└────────────┬───────────────┘
│ Tool Call: write_email_draft
▼
┌────────────────────────────┐
│ MCP Server (AVA) │
│ mcp-server-draft.py │
│ └── gmail.py │
│ └── .env config │
└────────────┬───────────────┘
│ Uses credentials from .env
▼
┌────────────────────────────┐
│ Gmail API (OAuth2 Auth) │
│ via Google Cloud Console │
│ Project: ava-mcp-475222 │
└────────────┬───────────────┘
│ Creates draft
▼
┌────────────────────────────┐
│ Gmail Draft Created │
│ │
└────────────────────────────┘
- Claude AI: Sends structured tool calls via MCP
- AVA Server: Receives calls, loads credentials from
.env, and handles logic viagmail.py - Google Cloud Console: Hosts OAuth2 credentials (
credentials.json) - Gmail API: Creates draft and returns metadata
Features
- MCP-compliant server using
FastMCP - Gmail API integration via OAuth2
- Secure credential handling via
.env - Compatible with Claude and MCP Inspector
Project Structure
mcp-email-draft/
├── .env # Gmail credentials and sender email
├── mcp-server-draft.py # MCP server exposing the tool
├── gmail.py # Gmail API logic
├── pyproject.toml # Project metadata and dependencies
├── credentials.json # OAuth2 client credentials
├── token.json # Gmail API token
├── README.md # Documentation
Setup Instructions
1. Create project folder
cd C:/Users/carll/Desktop
mkdir mcp-email-draft
cd mcp-email-draft
2. Install uv
curl -Ls https://astral.sh/uv/install.sh | sh
3. Install dependencies
uv pip install -r pyproject.toml
Or manually:
uv pip install google-api-python-client google-auth-oauthlib python-dotenv mcp[cli]
Gmail API Setup
- Go to Google Cloud Console
- Create OAuth credentials for a desktop app
- Download
credentials.jsonand place it in the project root - Run the server once to trigger OAuth flow and generate
token.json
.env File
[email protected]
GOOGLE_CREDENTIALS_PATH=C:/Users/carll/Desktop/mcp-email-draft/credentials.json
GOOGLE_TOKEN_PATH=C:/Users/carll/Desktop/mcp-email-draft/token.json
Claude Integration
Go to Claude Connectors and use:
{
"mcpServers": {
"AVA": {
"command": "C:/Users/carll/.local/bin/uv.exe",
"args": [
"--directory",
"C:/Users/carll/Desktop/mcp-email-draft",
"run",
"mcp-server-draft.py"
]
}
}
}
Usage Example
{
"recipient_email": "[email protected]",
"subject": "Follow-up on our meeting",
"body": "Hi Carllos, thank you again for your time today. Looking forward to the next steps!"
}
Claude will return the Gmail draft ID and metadata. Next: Using Discord
License
This project is for demonstration and evaluation purposes only.
No affiliation with Google or Anthropic.
Installing Draft
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/cwattsnogueira/mcp-server-draftFAQ
Is Draft MCP free?
Yes, Draft MCP is free — one-click install via Unyly at no cost.
Does Draft need an API key?
No, Draft runs without API keys or environment variables.
Is Draft hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Draft in Claude Desktop, Claude Code or Cursor?
Open Draft on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Draft with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
