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. |
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 | {} |
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