Apple Mail Summary MCP
Allows fetching emails from Apple Mail accounts and mailboxes using AppleScript.
Provides parsing of Google Scholar Alert emails to extract paper titles and links.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Apple Mail Summary MCPfetch 3 unread emails from my iCloud inbox"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Apple Mail Summary MCP Server
A Model Context Protocol (MCP) server for macOS that allows AI agents to interact with the local Apple Mail application. This server enables LLMs to fetch emails from specific accounts and mailboxes, and includes specialized tools for parsing academic paper alerts.
Features
📧 Fetch Emails: Retrieve the latest unread emails from any configured Apple Mail account and mailbox.
🎓 Scholar Tools: specialized parsing for Google Scholar Alert emails to extract paper titles and links.
🔒 Local & Secure: Runs locally on your machine, communicating directly with Apple Mail via AppleScript.
Related MCP server: mcp-imap-server
Prerequisites
macOS: This server relies on
osascript(AppleScript) to communicate with Apple Mail. It will not work on Windows or Linux.Apple Mail: Must be set up and running with your email accounts configured.
Python 3.10+
uv (recommended for package management) or standard pip.
Usage
1. Identify your Mail Configuration
To use this server, you need to know the exact names of your Accounts and Mailboxes as they appear in Apple Mail.
You can find these by hovering over the mailbox in the Mail app sidebar, or by running this simple AppleScript in 'Script Editor.app':
tell application "Mail"
get name of every account
end tell2. Environment Variables (Optional)
You can set default values for the account and mailbox using environment variables. This allows the AI agent to skip specifying these parameters every time.
Variable | Description | Default |
| The name of the default Apple Mail account. | None (Required if not provided via tool) |
| The name of the default mailbox. |
|
3. Configuration for Claude Desktop
You can add this server to your claude_desktop_config.json in two ways:
Option A: Running directly from GitHub via uvx (No manual install needed)
This is the easiest way to try it out without manually cloning the repo.
{
"mcpServers": {
"apple-mail-summary": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/BillShiyaoZhang/apple-mail-summary-mcp.git",
"apple-mail-summary-mcp"
],
"env": {
"APPLE_MAIL_SUMMARY_MCP_ACCOUNT": "Your Default Account Name",
"APPLE_MAIL_SUMMARY_MCP_MAILBOX": "Inbox"
}
}
}
}Option B: Running from a Local Clone (Development)
If you want to run from a local copy or make changes, first clone the repository and install dependencies:
Using uv (Recommended)
git clone https://github.com/BillShiyaoZhang/apple-mail-summary-mcp.git
cd apple-mail-summary-mcp
uv pip install -e .Using pip
git clone https://github.com/BillShiyaoZhang/apple-mail-summary-mcp.git
cd apple-mail-summary-mcp
pip install -e .Then configure your claude_desktop_config.json:
{
"mcpServers": {
"apple-mail-summary": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/apple-mail-summary-mcp",
"run",
"apple-mail-summary-mcp"
]
}
}
}Note: For Option B to work, make sure
uvis in your system PATH.
3. Running the Server Manually
You can also run the server directly if needed:
python -m apple_mail_summary_mcp.server4. Available Tools
fetch_emails(account: str = None, mailbox: str = None, limit: int = 5)
Fetches a list of unread emails from a specific source.
account: The exact name of the account (e.g., "iCloud", "Exchange", "Personal"). Defaults to
APPLE_MAIL_SUMMARY_MCP_ACCOUNTif not provided.mailbox: The mailbox name (e.g., "Inbox", "Spam", "Google Scholar"). Defaults to
APPLE_MAIL_SUMMARY_MCP_MAILBOX(or "Inbox") if not provided.limit: Maximum number of emails to retrieve.
extract_scholar_links(html_content: str)
A utility tool to parse the HTML content of a Google Scholar Alert email and return structured data (Title, URL).
html_content: The raw HTML body of the email.
Development
Project structure:
src/apple_mail_summary_mcp/email_client.py: Handles AppleScript communication.src/apple_mail_summary_mcp/processor.py: Contains HTML parsing logic (BeautifulSoup).src/apple_mail_summary_mcp/server.py: Defines the FastMCP server and tools.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/BillShiyaoZhang/apple-mail-summary-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server