This MCP server enables Claude to interact with Microsoft Outlook for macOS, allowing access to emails, calendar events, and contacts directly through conversational prompts in the Claude desktop app.
git clone https://github.com/syedazharmbnr1/claude-outlook-mcp.git
cd claude-outlook-mcp
bun install
chmod +x index.ts
Edit your claude_desktop_config.json
file located at:
~/Library/Application Support/Claude/claude_desktop_config.json
Add the following configuration:
{
"mcpServers": {
"outlook-mcp": {
"command": "/Users/YOURUSERNAME/.bun/bin/bun",
"args": ["run", "/path/to/claude-outlook-mcp/index.ts"]
}
}
}
Note: Replace YOURUSERNAME
with your actual macOS username and adjust the path to where you cloned the repository.
Once installed, interact with Outlook through Claude by using natural language prompts.
Ask Claude to:
Check unread emails:
Can you check my unread emails in Outlook?
Send a basic email:
Send an email to [email protected] 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.
Search emails:
Search my emails for "budget meeting"
Ask Claude to:
View today's events:
What events do I have today?
Create a calendar event:
Create a calendar event for a team meeting tomorrow from 2pm to 3pm
Show upcoming events:
Show me my upcoming events for the next 2 weeks
Ask Claude to:
List contacts:
List all my Outlook contacts
Search for a contact:
Search for contact information for Jane Smith
Send rich HTML-formatted emails by specifying HTML content:
Send an HTML email to [email protected] with the subject "Project Update" and body "<h1>Project Update</h1><p>We've made <b>significant progress</b> on the project.</p>"
Attach files to emails by specifying file paths:
Send an email to [email protected] with subject "Monthly Report" and attach the reports/march_2025.pdf file
Best practices for attachments:
If you encounter problems with attachments:
If you see Cannot find module '@modelcontextprotocol/sdk/server/index.js'
:
bun install
bun add @modelcontextprotocol/sdk@^1.5.0
ls -la node_modules/@modelcontextprotocol/sdk/server/
If issues persist, try creating a new project:
mkdir -p ~/yourpath/claude-outlook-mcp
cd ~/yourpath/claude-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 claude_desktop_config.json to point to the new location.
There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json
file so that it is available in all of your projects.
If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json
file.
To add a global MCP server go to Cursor Settings > MCP and click "Add new global MCP server".
When you click that button the ~/.cursor/mcp.json
file will be opened and you can add your server like this:
{
"mcpServers": {
"cursor-rules-mcp": {
"command": "npx",
"args": [
"-y",
"cursor-rules-mcp"
]
}
}
}
To add an MCP server to a project you can create a new .cursor/mcp.json
file or add it to the existing one. This will look exactly the same as the global MCP server example above.
Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.
The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.
You can also explictly ask the agent to use the tool by mentioning the tool name and describing what the function does.