Outlook MCP Server
Description
# Outlook MCP Server A Model Context Protocol (MCP) server that provides access to Microsoft Outlook email functionality, allowing LLMs and other MCP clients to read, search, and manage emails through a standardized interface. ## Features - **Folder Management**: List available…
About
# Outlook MCP Server A Model Context Protocol (MCP) server that provides access to Microsoft Outlook email functionality, allowing LLMs and other MCP clients to read, search, and manage emails through a standardized interface. ## Features - **Folder Management**: List available mail folders in your Outlook client -…
Details
- Author
- Wallisking1991
- GitHub stars
- 58
- Downloads
- 791
- Categories
- Communication
Jump to
- Folder management: lists all available mail folders
- Email listing: retrieves emails from specified time periods
- Email search: searches by contact name, keywords, or phrases with OR operators
- Email details: views complete email content including attachments
- Email composition: creates and sends new emails
- Email replies: replies to existing emails
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Outlook MCP ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Install dependencies (mcp>=1.2.0 and pywin32>=305), then configure your MCP client (e.g., Claude Desktop) by adding the server to its configuration file. Start the server directly with python outlook_mcp_server.py or let the client launch it. Use natural language commands to list folders, view recent emails, search, read details, reply, or compose emails.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"outlook mcp server": {
"outlook-mcp-server": {
"command": "python",
"args": [
"outlook_mcp_server.py"
]
}
}
}
}
McpServers
{
"outlook-mcp-server": {
"command": "python",
"args": [
"outlook_mcp_server.py"
]
}
}
Outlook MCP Server
A Model Context Protocol (MCP) server that provides access to Microsoft Outlook email functionality, allowing LLMs and other MCP clients to read, search, and manage emails through a standardized interface.
Features
- Folder Management: List available mail folders in your Outlook client
- Email Listing: Retrieve emails from specified time periods
- Email Search: Search emails by contact name, keywords, or phrases with OR operators
- Email Details: View complete email content, including attachments
- Email Composition: Create and send new emails
- Email Replies: Reply to existing emails
Prerequisites
- Windows operating system
- Python 3.10 or later
- Microsoft Outlook installed and configured with an active account
- Claude Desktop or another MCP-compatible client
Installation
1. Clone or download this repository
2. Install required dependencies:
pip install mcp>=1.2.0 pywin32>=305
3. Configure Claude Desktop (or your preferred MCP client) to use this server
Configuration
Claude Desktop Configuration
Add the following to your MCP_client_config.json file:
{
"mcpServers": {
"outlook": {
"command": "python",
"args": ["Your path\\outlook_mcp_server.py"],
"env": {}
}
}
}
Usage
Starting the Server
You can start the server directly:
python outlook_mcp_server.py
Or allow an MCP client like Claude Desktop to start it via the configuration.
Available Tools
The server provides the following tools:
1. list_folders: Lists all available mail folders in Outlook
2. list_recent_emails: Lists email titles from the specified number of days
3. search_emails: Searches emails by contact name or keyword
4. get_email_by_number: Retrieves detailed content of a specific email
5. reply_to_email_by_number: Replies to a specific email
6. compose_email: Creates and sends a new email
Example Workflow
1. Use list_folders to see all available mail folders
2. Use list_recent_emails to view recent emails (e.g., from last 7 days)
3. Use search_emails to find specific emails by keywords
4. Use get_email_by_number to view a complete email
5. Use reply_to_email_by_number to respond to an email
Examples
Listing Recent Emails
Could you show me my unread emails from the last 3 days?
Searching for Emails
Search for emails about "project update OR meeting notes" in the last week
Reading Email Details
Show me the details of email #2 from the list
Replying to an Email
Reply to email #3 with: "Thanks for the information. I'll review this and get back to you tomorrow."
Composing a New Email
Send an email to john.doe@example.com with subject "Meeting Agenda" and body "Here's the agenda for our upcoming meeting..."
Troubleshooting
- Connection Issues: Ensure Outlook is running and properly configured
- Permission Errors: Make sure the script has permission to access Outlook
- Search Problems: For complex searches, try using OR operators between terms
- Email Access Errors: Check if the email ID is valid and accessible
- Server Crashes: Check Outlook's connection and stability
Security Considerations
This server has access to your Outlook email account and can read, send, and manage emails. Use it only with trusted MCP clients and in secure environments.
Limitations
- Currently supports text emails only (not HTML)
- Maximum email history is limited to 30 days
- Search capabilities depend on Outlook's built-in search functionality
- Only supports basic email functions (no calendar, contacts, etc.)
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



