Help us improve
Share bugs, ideas, or general feedback.
From gmail-mcp
Secure Gmail access via IMAP/SMTP with 1Password credential storage. Supports listing, reading, searching, sending, and replying to emails with proper threading and attachments.
npx claudepluginhub ClementWalter/rookie-marketplace --plugin gmail-mcpHow this skill is triggered — by the user, by Claude, or both
Slash command
/gmail-mcp:skills/gmail-toolsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Secure Gmail access via IMAP/SMTP with 1Password credential storage. Supports listing, reading, searching, sending, and replying to emails with proper threading and attachments.
Manages Gmail across multiple accounts: read, search, send, reply to emails, and handle labels using Python scripts and API with structured sending workflow.
Reads and searches Gmail for the configured user via the gog CLI, with structured output and Gmail query syntax support.
Searches USPTO patent and trademark records from official APIs including PatentSearch, TSDR, and assignment databases.
Share bugs, ideas, or general feedback.
Secure Gmail access via IMAP/SMTP with 1Password credential storage. Supports listing, reading, searching, sending, and replying to emails with proper threading and attachments.
Create a 1Password item with:
user@gmail.com)The plugin provides these MCP tools:
List recent emails from an account.
account: "Gmail Work Claude" # 1Password item name
folder: "INBOX" # Optional, default: INBOX
limit: 10 # Optional, default: 10
Read full email content including threading headers.
account: "Gmail Work Claude"
email_id: "46" # From list_emails
folder: "INBOX" # Optional
Send a new email with optional attachments.
account: "Gmail Work Claude"
to: "recipient@example.com"
subject: "Hello"
body: "Email content here"
cc: "cc@example.com" # Optional
bcc: "bcc@example.com" # Optional
attachments: ["/path/to/file.pdf"] # Optional
Reply to an email, maintaining the thread.
account: "Gmail Work Claude"
email_id: "46" # Email to reply to
body: "Thanks for your message!"
attachments: ["/path/to/doc.pdf"] # Optional
folder: "INBOX" # Optional
Search using IMAP syntax.
account: "Gmail Work Claude"
query: "FROM sender@example.com" # or "SUBJECT hello", "UNSEEN", etc.
folder: "INBOX" # Optional
limit: 10 # Optional
For CLI usage without MCP, use scripts in scripts/:
./scripts/gmail_list.py "Gmail Work Claude" --limit 20
./scripts/gmail_list.py "Gmail Work Claude" --json # JSON output
./scripts/gmail_read.py "Gmail Work Claude" "46"
./scripts/gmail_read.py "Gmail Work Claude" "46" --json
# Dry run (preview without sending)
./scripts/gmail_reply.py "Gmail Work Claude" "46" \
--body "Thanks for your email." \
--attachment ~/document.pdf \
--dry-run
# Send reply
./scripts/gmail_reply.py "Gmail Work Claude" "46" \
--body "Thanks for your email." \
--attachment ~/document.pdf
When using reply_email, the tool automatically:
Message-ID and References headersIn-Reply-To to the original Message-IDReferences header chainRE: prefix to subject if not presentThis ensures replies appear in the same thread in all email clients.
| Query | Description |
|---|---|
ALL | All messages |
UNSEEN | Unread messages |
FROM "john" | From sender containing "john" |
SUBJECT "meeting" | Subject containing "meeting" |
SINCE "01-Jan-2024" | Messages since date |
BEFORE "01-Jan-2024" | Messages before date |
BODY "keyword" | Body containing "keyword" |
Combine with parentheses: (FROM "john" SUBJECT "meeting")
Verify the exact item name in 1Password matches what you're using.
Enable IMAP in Gmail Settings → Forwarding and POP/IMAP → Enable IMAP