Skip to main content

A Model Context Protocol server for email

Project description

MCP Email Server

A Model Context Protocol server that provides email functionality. This server enables LLMs to compose and send emails, as well as search for attachments within specified directories. 1742711978001

1742712768132

Features

  • Send emails with multiple recipients
  • Support for email attachments
  • Search for files in directories based on pattern matching
  • Secure email transmission using SMTP

Available Tools

  • send_email - Sends emails based on the provided subject, body, and receiver.

    • receiver (array of strings, required): List of recipient email addresses
    • body (string, required): The main content of the email
    • subject (string, required): The subject line of the email
    • attachments (array of strings or string, optional): Email attachments (filenames)
  • search_attachments - Searches for files in a specified directory that match a given pattern.

    • pattern (string, required): The text pattern to search for in file names

Prompts

  • send_email

    • Send an email with optional attachments
    • Arguments:
      • receiver (required): The list of recipient email addresses
      • body (required): The main content of the email
      • subject (required): The subject line of the email
      • attachments (optional): Email attachments
  • search_attachments

    • Search for files matching a pattern
    • Arguments:
      • pattern (required): The text pattern to search for in file names

Installation

Using pip

Install the required dependencies:

pip install pydantic python-dotenv

Email Configuration

An email.json file with SMTP server configurations:

[
  {
    "domain": "@gmail.com",
    "server": "smtp.gmail.com", 
    "port": 587
  },
  {
    "domain": "@outlook.com",
    "server": "smtp.office365.com",
    "port": 587
  },
  {
    "domain": "@yahoo.com",
    "server": "smtp.mail.yahoo.com",
    "port": 587
  }
]

Usage

Running the Server

Start the MCP Email Server with:

python -m mcp_email_server (--dir /path/to/attachment/directory)

Configure for Claude.app

Add to your Claude settings:

Conda

{
  "mcpServers": {
    "email": {
      "command": "D:\\conda\\envs\\mcp\\python.exe",
      "args": [
        "C:\\Users\\YourUserName\\Desktop\\servers\\src\\email\\src\\mcp_server_email",
        "--dir",
        "C:\\Users\\YourUserName\\Desktop"
      ],
      "env": {
        "SENDER": "2593666979q@gmail.com",
        "PASSWORD": "tuogk......."
      }
    }
  }
}

UV

{
  "mcpServers": {
    "email": {
      "command": "uv",
      "args": [
        "~\\servers\\src\\email\\src\\mcp_server_email",
        "--dir",
        "C:\\Users\\YourUserName\\Desktop"
      ],
      "env": {
        "SENDER": "2593666979q@gmail.com",
        "PASSWORD": "tuogk......."
      }
    }
  }
}

Security Notes

  • For Gmail and other services, you may need to use an app-specific password
  • The server supports a limited set of attachment file types for security reasons

Supported File Types

The server supports the following attachment file types:

  • Documents: doc, docx, xls, xlsx, ppt, pptx, pdf
  • Archives: zip, rar, 7z, tar, gz
  • Text files: txt, log, csv, json, xml
  • Images: jpg, jpeg, png, gif, bmp
  • Other: md

Example Usage

Sending an Email

{
  "receiver": ["recipient@example.com"],
  "subject": "Test Email from MCP Server",
  "body": "This is a test email sent via the MCP Email Server.",
  "attachments": ["document.pdf", "image.jpg"]
}

Searching for Attachments

{
  "pattern": "report"
}

Contributing

We encourage contributions to help expand and improve the MCP Email Server. Whether you want to add new tools, enhance existing functionality, or improve documentation, your input is valuable.

For examples of other MCP servers and implementation patterns, see: https://github.com/modelcontextprotocol/servers

Pull requests are welcome! Feel free to contribute new ideas, bug fixes, or enhancements to make the MCP Email Server even more powerful and useful.

License

MCP Email Server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License.

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

mcp_server_email-0.1.4.tar.gz (25.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_server_email-0.1.4-py3-none-any.whl (9.5 kB view details)

Uploaded Python 3

File details

Details for the file mcp_server_email-0.1.4.tar.gz.

File metadata

  • Download URL: mcp_server_email-0.1.4.tar.gz
  • Upload date:
  • Size: 25.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.9

File hashes

Hashes for mcp_server_email-0.1.4.tar.gz
Algorithm Hash digest
SHA256 0ae50d5f790cded9dcb3428a3c1d4231412e4d21adcfb20eeb76676193df1081
MD5 8c6764e81aa562170b06f015f93a77b2
BLAKE2b-256 538d0c9f3749a9b7f6ae85ea9eeee18cf3785615e148d3e34b2a4bae90dd817a

See more details on using hashes here.

File details

Details for the file mcp_server_email-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_server_email-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 bed597b219536f971dbeeb05c2ec0d34e69a0492daed222141a406db621eb9f8
MD5 ce7e5e521cffa39883c6515f615dc34b
BLAKE2b-256 344bd2c2dd11c384d1df0c6fefbb0ba73ef1ce8fa7bd494e7aa4cc0c60a9afac

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page