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.3.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.3-py3-none-any.whl (9.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mcp_server_email-0.1.3.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.3.tar.gz
Algorithm Hash digest
SHA256 b774ddbde1de379147a8eaa12952e924b2d0eded8e593a755f7356da1ddb82f8
MD5 823dd6c667e4c0ebdb77211a3a52919b
BLAKE2b-256 efac33d81455033d6b31b5dd9764e5197eeb6bb69cdf1bb56915fa94c3478638

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mcp_server_email-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 ed323dfbc92faa9bc628c9d33a917cd3c3537331a78b2acd2656c1375dfc713f
MD5 e71936da33beb1a91a0d820b8311b114
BLAKE2b-256 dc119f34ad1a06f2933e4a65fb9f446f5977e3bfdde1ff1763fe44cfb0f15160

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