m365-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| M365_ACCOUNT | No | The account name to use. If not set, the default account is used. | |
| M365_TIMEZONE | No | Timezone for calendar tools. Example: America/Chicago. | |
| M365_MCP_AUTH_DIR | No | Directory where OAuth tokens are stored. Defaults to ~/.m365-mcp/auth. | |
| M365_MCP_READ_ONLY | No | Set to 'true' to run in read-only mode. Must be set before authentication to request read-only scopes. Mutating tools are disabled. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| m365_mail_listC | List emails from your mailbox with optional folder, filter, and search |
| m365_mail_readA | Read a specific email by ID, including full body |
| m365_mail_sendB | Send an email from your account |
| m365_mail_replyC | Reply to an email |
| m365_mail_searchA | Search emails across all folders |
| m365_mail_moveA | Move an email to a different folder |
| m365_mail_deleteA | Delete an email (moves to Deleted Items) |
| m365_mail_mark_readA | Mark an email as read or unread |
| m365_mail_foldersA | List all mail folders with counts |
| m365_calendar_listA | List calendar events in a date range (or upcoming if no range) |
| m365_calendar_todayA | Show today's calendar events |
| m365_calendar_weekA | Show this week's calendar events grouped by day |
| m365_calendar_createB | Create a calendar event (with optional Teams meeting) |
| m365_calendar_updateC | Update an existing calendar event |
| m365_calendar_deleteB | Cancel/delete a calendar event |
| m365_calendar_availabilityB | Check free/busy availability for users |
| m365_contacts_listA | List contacts, optionally within a folder and filtered by one or more exact category names |
| m365_contacts_searchA | Search contacts by name, email, or company, optionally within a folder and filtered by exact categories |
| m365_contacts_readB | Read a contact's full details |
| m365_contacts_createA | Create a contact with names, multiple emails and phones, categories, addresses, and work or personal details |
| m365_contacts_updateA | Update or clear contact fields; use empty strings or arrays to clear supported values |
| m365_contacts_deleteA | Move a contact to Deleted Items |
| m365_contacts_categories_listA | List unique category names assigned to contacts in the default or selected folder, with usage counts |
| m365_contacts_folders_listA | List top-level contact folders or the direct children of one folder |
| m365_contacts_folder_createA | Create a child contact folder under an existing contact folder |
| m365_contacts_folder_updateB | Rename or move a top-level or direct-child contact folder |
| m365_contacts_folder_deleteA | Delete a non-default top-level or direct-child contact folder |
| m365_contacts_people_listA | Find relevance-ranked people for recipient selection using mailbox signals, the organization directory, or both; does not expose private Outlook Contact Lists |
| m365_files_listA | List files and folders in your OneDrive |
| m365_files_searchB | Search for files in your OneDrive |
| m365_files_readA | Read a file's content (text files only, max 50KB by default) |
| m365_files_infoA | Get file or folder metadata |
| m365_files_create_folderB | Create a new folder in OneDrive |
| m365_teams_chatsA | List your Teams chats |
| m365_teams_messagesA | Get messages from a Teams chat |
| m365_teams_sendB | Send a message to a Teams chat |
| m365_tasks_listsA | List your Microsoft To Do task lists |
| m365_tasks_listA | List tasks in a task list |
| m365_tasks_createB | Create a new task |
| m365_tasks_updateC | Update an existing task |
| m365_tasks_deleteC | Delete a task |
| m365_users_listA | List users in your organization (requires User.Read.All — may need admin consent) |
| m365_users_profileA | Get a user's profile (or your own if no user specified) |
| m365_users_managerA | Get a user's manager (or your own) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/sam2kb/m365-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server