Email Mcp Server — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Email Mcp Server (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
An MCP (Model Context Protocol) server that exposes email operations as tools for AI agents. This allows Claude or other LLM-based agents to naturally read, filter, send emails, and check unread counts through the MCP protocol.
cd "C:\Users\tejas\OneDrive\Desktop\Email MCP server"python -m venv venvWindows:
venv\Scripts\activateMac/Linux:
source venv/bin/activatepip install -r requirements.txtFor security, Gmail requires an App Password instead of your regular password when using SMTP/IMAP.
abcd efgh ijkl mnop).env file with this App PasswordYour .env file should look like this:
[email protected]
EMAIL_PASS=your-16-char-app-password
IMAP_SERVER=imap.gmail.com
SMTP_SERVER=smtp.gmail.com
IMAP_PORT=993
SMTP_PORT=587
OPENAI_API_KEY=your-openai-api-key (optional)python server.pyThe server will start and listen for MCP protocol messages via stdin/stdout.
To use this MCP server with Claude Desktop, you need to add it to your Claude Desktop configuration.
Mac:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonEdit the config file and add (see claude_desktop_config.example.json for reference):
{
"mcpServers": {
"email-alert": {
"command": "python",
"args": [
"/absolute/path/to/your/project/server.py"
],
"env": {
"PYTHONPATH": "/absolute/path/to/your/project"
}
}
}
}Windows Example:
{
"mcpServers": {
"email-alert": {
"command": "C:\\Users\\YourName\\path\\to\\venv\\Scripts\\python.exe",
"args": [
"C:\\Users\\YourName\\path\\to\\Email MCP server\\server.py"
]
}
}
}Mac/Linux Example:
{
"mcpServers": {
"email-alert": {
"command": "/usr/bin/python3",
"args": [
"/home/username/Email-MCP-server/server.py"
]
}
}
}Note: Replace paths with your actual project location.
Close and reopen Claude Desktop to load the new MCP server.
Once connected to Claude Desktop, you can test the email tools with natural language:
Check Unread Emails:
"How many unread emails do I have?"Read Recent Emails:
"Show me my 5 most recent emails"Filter by Sender:
"Show me all emails from [email protected]"Search by Subject:
"Find emails with 'meeting' in the subject"Send an Email:
"Send an email to [email protected] with subject 'Meeting Reminder' and tell her about the 4 PM meeting"read_emailsRead recent emails from inbox or specified folder.
Parameters:
count (number, optional): Number of emails to retrieve (default: 10)folder (string, optional): Email folder (default: "INBOX")filter_emailsSearch and filter emails by criteria.
Parameters:
sender (string, optional): Filter by sender email addresssubject (string, optional): Filter by subject (substring match)is_unread (boolean, optional): Filter by unread statusfolder (string, optional): Email folder (default: "INBOX")send_emailSend an email to a recipient.
Parameters:
to (string, required): Recipient email addresssubject (string, required): Email subject linebody (string, required): Email body contentcc (string, optional): CC recipient email addressget_unread_countGet count of unread emails.
Parameters:
folder (string, optional): Email folder (default: "INBOX")Email MCP server/
├── server.py # Main MCP server
├── email_client.py # Email operations (SMTP/IMAP)
├── requirements.txt # Python dependencies
├── .env # Environment variables (NOT in git)
├── .env.example # Example environment file
├── .gitignore # Git ignore rules
└── README.md # This file⚠️ Important:
server.py - Your MCP server codeemail_client.py - Email operationstest_email.py - Testing scriptrequirements.txt - Dependencies listREADME.md - Documentation.env.example - Template (NO real credentials)claude_desktop_config.example.json - Config template.gitignore - Git ignore rules.env - Contains your email password! (Auto-ignored)claude_desktop_config.json - Has your specific paths (Auto-ignored)venv/ - Virtual environment folder (Auto-ignored)__pycache__/ - Python cache (Auto-ignored)The .gitignore file is already configured to protect sensitive files.
EMAIL_USER and EMAIL_PASS in .env are correctclaude_desktop_config.json is correctMIT License - Feel free to use and modify!
Contributions are welcome! Feel free to open issues or submit pull requests.
Built with ❤️ using the Model Context Protocol
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.