mcp-outlook-lite
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DEBUG | No | Enable debug logging on stderr | |
| AZURE_CLIENT_ID | Yes | Application (client) ID from Azure | |
| AZURE_TENANT_ID | Yes | consumers for personal accounts, Directory (tenant) ID for work/school, or common for both | |
| MCP_OUTLOOK_WORK_DIR | No | Directory for large file downloads | |
| MCP_OUTLOOK_DEVICE_CODE | No | Set to 1 to force device code flow |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| prompts | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| outlook_list_emailsB | List emails from Outlook inbox or specified folder |
| outlook_send_emailB | Send an email through Outlook |
| outlook_get_emailC | Get detailed information about a specific email |
| outlook_search_emailsB | Search emails across all folders with advanced filters for analysis |
| outlook_create_draftA | Create an email draft without sending. When replyToMessageId is provided, creates a reply draft that preserves the thread/conversation context (to and subject are auto-populated from the original email). Use outlook_add_attachment afterward to attach files to the draft. |
| outlook_reply_to_emailB | Reply to an existing email |
| outlook_reply_allB | Reply to all recipients of an existing email |
| outlook_forward_emailB | Forward an existing email to new recipients |
| outlook_delete_emailA | Delete an email (move to Deleted Items or permanently delete) |
| outlook_move_emailB | Move an email to a different folder |
| outlook_mark_as_readA | Mark an email as read or unread |
| outlook_flag_emailA | Flag or unflag an email for follow-up |
| outlook_categorize_emailC | Apply categories to an email |
| outlook_archive_emailA | Archive an email (move to Archive folder) |
| outlook_batch_process_emailsC | Perform bulk operations on multiple emails |
| outlook_list_eventsC | List calendar events from Outlook |
| outlook_create_eventC | Create a new calendar event in Outlook with optional Teams meeting integration |
| outlook_get_eventC | Get a specific calendar event |
| outlook_update_eventB | Update an existing calendar event |
| outlook_delete_eventB | Delete a calendar event |
| outlook_respond_to_inviteB | Respond to a meeting invitation |
| outlook_validate_event_datetimesC | Validate event start and end times |
| outlook_create_recurring_eventC | Create a recurring calendar event |
| outlook_find_meeting_timesC | Find optimal meeting times for attendees |
| outlook_check_availabilityC | Check availability for users |
| outlook_schedule_online_meetingC | Schedule an online meeting (Teams/Skype) |
| outlook_list_calendarsC | List available calendars |
| outlook_get_calendar_viewC | Get a view of a calendar for a specific time range |
| outlook_get_busy_timesC | Get busy times for users |
| outlook_build_recurrence_patternC | Build a recurrence pattern object |
| outlook_create_recurrence_helperC | Helper to create a recurring event with simplified inputs |
| outlook_check_calendar_permissionsB | Check permissions for a calendar |
| outlook_list_foldersC | List all email folders |
| outlook_create_folderC | Create a new email folder |
| outlook_rename_folderB | Rename an existing email folder |
| outlook_get_folder_statsC | Get statistics for a specific folder |
| outlook_list_rulesB | List all inbox message rules |
| outlook_create_ruleC | Create an inbox message rule to automatically move emails matching sender criteria to a specified folder |
| outlook_delete_ruleB | Delete an inbox message rule by ID |
| outlook_list_attachmentsC | List all attachments for a specific email |
| outlook_download_attachmentC | Download a specific email attachment |
| outlook_add_attachmentB | Add an attachment to an email draft |
| outlook_scan_attachmentsC | Scan emails for large or suspicious attachments |
| outlook_get_sharepoint_fileA | Fetch a SharePoint file using the same authenticated session as Outlook. Handles sharing links from emails. Either sharePointUrl OR fileId must be provided. |
| outlook_list_sharepoint_filesB | List files in SharePoint sites or OneDrive folders using the same authenticated session |
| outlook_resolve_sharepoint_linkB | Resolve SharePoint sharing links from emails to get file metadata without downloading |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| check_recent_unread | Check unread emails from the last 36 hours, summarize them, and highlight action items |
| draft_reply | Draft a reply to a specific email with a specified tone |
| summarize_schedule | Summarize today's calendar events and schedule |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 46 tools
Tool purposes are mostly distinct, but several recurring-event and scheduling tools overlap: outlook_create_recurring_event, outlook_create_recurrence_helper, and outlook_build_recurrence_pattern have unclear boundaries about which to use. Similarly outlook_check_availability, outlook_get_busy_times, and outlook_find_meeting_times all address scheduling availability with subtle distinctions.
All 46 tools follow a consistent outlook_verb_noun snake_case pattern with no deviations. The prefix makes tool origins clear and names are uniformly readable.
With 46 tools, this is well beyond the typical 3-15 well-scoped range and suggests feature sprawl. While email plus calendar plus SharePoint integration is broad, several tools appear redundant (three recurrence builders, multiple availability tools), indicating over-proliferation for the stated scope.
The surface covers email CRUD, folders, rules, attachments, calendar events, scheduling, and SharePoint file access comprehensively with few obvious gaps. Minor omissions like calendar delete/permission-management tools are workable around.