MCP server that gives AI agents deep understanding of your email
Project description
Deepmail
Your agent can search your email. It can't understand it.
Gmail MCP servers let agents read individual messages. But understanding email — knowing who matters, what relationships exist, what's happening in your life and business — requires investigation, cross-referencing, and memory. Agents can't do that in a single search.
Deepmail gives your AI agent 10 tools to investigate, analyze, and remember your email. It builds persistent knowledge that survives across sessions — so your agent actually knows you.
What your agent can do with Deepmail
You: "Who are my investors?"
Agent searches your Gmail for term sheets, fund communications, board emails.
Agent reads specific emails to understand deal details.
Agent cross-references names across rounds.
Agent builds a complete investor table — firms, key contacts, amounts, dates.
Next session, your agent already knows. No re-searching.
Quick start
pip install deep-email
deep-email auth
Opens your browser for Google consent. Read-only access. Done.
You may see "This app isn't verified" — click Advanced → Go to Deepmail (unsafe). This is standard for open-source tools. Deepmail only requests read-only email access.
Configure your agent
Add to your project's .mcp.json:
{
"mcpServers": {
"deepmail": {
"type": "stdio",
"command": "uvx",
"args": ["deep-email"]
}
}
}
Or use the CLI:
deep-email init # writes .mcp.json for you
Install the skill (teaches your agent how to use the tools)
npx skills add dennisonbertram/deepmail
Works with Claude Code, Cursor, Codex, GitHub Copilot, Windsurf, Gemini CLI, and 40+ other agents.
Advanced: Use your own Google Cloud credentials
By default, Deepmail uses built-in OAuth credentials. If you prefer to use your own GCP project:
1. Create a Google Cloud Project
- Go to Google Cloud Console
- Select a project → New Project → name it anything → Create
2. Enable the Gmail API
- Go to Gmail API
- Click Enable
3. Configure OAuth Consent Screen
- Go to OAuth consent screen
- Choose External → Create
- App name: anything. Support email: yours. Developer contact: yours.
- Scopes → Add or Remove Scopes → find
gmail.readonly→ check it → Update → Save - Test users → Add Users → add your email → Save
Note: Your app starts in "Testing" mode. Tokens expire every 7 days — re-run
deep-email authwhen they do. For non-expiring tokens, submit your app for verification on the consent screen (optional for personal use).
4. Create Credentials
- Go to Credentials
- Create Credentials → OAuth client ID → Desktop app → Create
- Copy the Client ID and Client Secret
5. Set the credentials
export GOOGLE_CLIENT_ID="your-id.apps.googleusercontent.com"
export GOOGLE_CLIENT_SECRET="your-secret"
Or add to ~/.zshrc / ~/.bashrc for persistence. Then run deep-email auth.
Tools
| Tool | What it does |
|---|---|
search_emails(query) |
Search Gmail — returns sender, date, subject, snippet |
read_email(message_id) |
Read the full body of a specific email |
build_profile(query) |
Deep investigation — extracts people, builds profiles |
build_status() |
Check progress of a running investigation |
get_candidates() |
Review extracted candidates from latest investigation |
who_is(person) |
Look up a person from cached knowledge |
about_me(topic) |
What the agent knows about you, by topic |
profile_health() |
Check how fresh the cached knowledge is |
reset_profile(confirm) |
Wipe cached knowledge and start fresh |
check_auth() |
Verify Gmail connection |
How it works
- Your agent reads the skill and learns how to investigate email topics
- It searches your Gmail using
search_emails— following leads, reading full emails when needed - It builds profiles using
build_profile— extracting people, relationships, and context - Knowledge persists —
who_isandabout_mereturn cached results instantly in future sessions - It gets smarter — each investigation adds to the persistent knowledge base
All data stays on your machine. The MCP server runs locally. No cloud storage, no telemetry.
Examples
"Figure out my investors" — Agent searches for term sheets, fund emails, board communications. Builds a table of investors across rounds with key contacts and amounts.
"Who's on my team?" — Agent searches internal comms, standup emails, shared docs. Maps your org with roles and last-contact dates.
"Tell me about my relationship with [person]" — Agent searches all correspondence, synthesizes a relationship summary with timeline.
"What should I know before my meeting with [person]?" — Agent pulls recent threads, open items, relationship context.
License
AGPL-3.0 — free to use, modify, and distribute. If you run it as a hosted service, you must release your source under the same license. See LICENSE.
Security
- Read-only: Only
gmail.readonlyscope. Never sends, modifies, or deletes. - Local-first: All data on your machine. No cloud, no telemetry.
- OAuth scoped: Minimum required permissions.
- Wipe anytime:
reset_profile(confirm="yes")deletes all cached data.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file deep_email-0.3.0.tar.gz.
File metadata
- Download URL: deep_email-0.3.0.tar.gz
- Upload date:
- Size: 629.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
12ea77955046e57b2130ce4eb34e66da64885b6f0d4943d1aace5e1e0622d249
|
|
| MD5 |
2ba499f0d4780a0bb9d94b0347a545b5
|
|
| BLAKE2b-256 |
6f9ca684f50d496595ac09246d6889319e5578a3e0cd3e0ed5258e421d4e3d59
|
File details
Details for the file deep_email-0.3.0-py3-none-any.whl.
File metadata
- Download URL: deep_email-0.3.0-py3-none-any.whl
- Upload date:
- Size: 191.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4f7e0dd89c20c293bea70ad89dcf567a860c4cac3f0094186c596407e7d27557
|
|
| MD5 |
a47738d35c2154721c78c253417ba513
|
|
| BLAKE2b-256 |
fdb9e4efad783587bee6bedfc532bb508a106482236b91ab0d47aac24ecc48f8
|