outlook-mcp
Enables AI assistants to interact with Microsoft Outlook for macOS, managing emails, calendar events, and contacts, with local AI processing via Ollama.
README
Outlook MCP Tool
This is a Model Context Protocol (MCP) tool that allows your AI Assistant to interact with Microsoft Outlook for macOS.
<a href="https://glama.ai/mcp/servers/0j71n92wnh"> <img width="380" height="200" src="https://glama.ai/mcp/servers/0j71n92wnh/badge" alt="Outlook Tool MCP server" /> </a>
Features
- Mail:
- Read unread and regular emails
- Search emails by keywords
- Send emails with to, cc, and bcc recipients
- Send HTML-formatted emails
- Attach files to emails
- List mail folders
- Calendar:
- View today's events
- View upcoming events
- Search for events
- Create new calendar events
- Contacts:
- List contacts
- Search contacts by name
- Local AI Assistant (Ollama):
- Summarize unread emails, specific emails, or search results locally
- Extract action items locally
- Draft professional email replies locally
- Fully private processing (no email contents sent to cloud APIs)
Prerequisites
- macOS with Apple Silicon (M1/M2/M3) or Intel chip
- Microsoft Outlook for Mac installed and configured
- Bun installed
- An MCP Client (e.g., Cursor or an Ollama frontend)
- Ollama installed and running locally with at least one text model (e.g.,
llama3) for local AI assistant tasks
Installation
- Clone this repository:
git clone https://github.com/syedazharmbnr1/outlook-mcp.git
cd outlook-mcp
- Install dependencies:
bun install
- Make sure the script is executable:
chmod +x index.ts
- Update your MCP Client configuration:
Add the following to your MCP client configuration file (e.g. for a custom UI, specify your configuration):
{
"mcpServers": {
"outlook-mcp": {
"command": "/Users/YOURUSERNAME/.bun/bin/bun",
"args": ["run", "/path/to/outlook-mcp/index.ts"]
}
}
}
Make sure to replace YOURUSERNAME with your actual macOS username and adjust the path to where you cloned this repository.
-
Restart your MCP Client
-
Grant permissions:
- Go to System Preferences > Privacy & Security > Privacy
- Give Terminal (or your preferred terminal/client app) access to Accessibility features
- You may see permission prompts when the tool is first used
Usage
Once installed, you can use the Outlook tool directly from your AI Assistant by asking questions like:
- "Can you check my unread emails in Outlook?"
- "Search my Outlook emails for the quarterly report"
- "Send an email to john@example.com with the subject 'Meeting Tomorrow'"
- "What's on my calendar today?"
- "Create a meeting for tomorrow at 2pm"
- "Find the contact information for Jane Smith"
- "Use the local assistant to summarize my unread emails"
Examples
Email Operations
Check my unread emails in Outlook
Send an email to alex@example.com with subject "Project Update" and the following body: Here's the latest update on our project. We've completed phase 1 and are moving on to phase 2.
Send an HTML email to team@example.com with subject "Weekly Report" and attach the quarterly_results.pdf file
Search my emails for "budget meeting"
Calendar Operations
What events do I have today?
Create a calendar event for a team meeting tomorrow from 2pm to 3pm
Show me my upcoming events for the next 2 weeks
Contact Operations
List all my Outlook contacts
Search for contact information for Jane Smith
Local AI Assistant (Ollama) Operations
Make sure Ollama is running in the background before using these commands (e.g., run ollama serve and ollama run llama3).
Use the local assistant to summarize my unread emails
Search my emails for "project meeting" and use local Ollama to extract the action items
Use local Ollama to draft a reply to the unread project emails
Advanced Features
HTML Email Support
You can send rich HTML-formatted emails by setting the isHtml parameter to true:
Send an HTML email to john@example.com with the subject "Project Update" and body "<h1>Project Update</h1><p>We've made <b>significant progress</b> on the project.</p>"
File Attachments
You can attach files to your emails by providing the file paths in the attachments parameter:
Send an email to jane@example.com with subject "Monthly Report" and attach the reports/march_2025.pdf file
For best results with attachments:
- Use absolute file paths when possible
- Make sure the files are accessible to the process running the MCP tool
- Attachments will automatically be handled with robust error detection
Troubleshooting
If you encounter issues with attachments:
- Check if the file exists and is readable
- Use absolute file paths instead of relative paths
- Make sure the user running the process has permission to read the file
If you encounter the error Cannot find module '@modelcontextprotocol/sdk/server/index.js':
- Make sure you've run
bun installto install all dependencies - Try installing the MCP SDK explicitly:
bun add @modelcontextprotocol/sdk@^1.5.0 - Check if the module exists in your node_modules directory:
ls -la node_modules/@modelcontextprotocol/sdk/server/
If the error persists, try creating a new project with Bun:
mkdir -p ~/yourpath/outlook-mcp
cd ~/yourpath/outlook-mcp
bun init -y
Then copy the package.json and index.ts files to the new directory and run:
bun install
bun run index.ts
Update your MCP client configuration to point to the new location.
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.