Microsoft 365 remote MCP server
by usedrobot
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | Port to listen on, default '3000' | 3000 |
| M365_ORG_NAME | No | Your organization's name, used in the server instructions | |
| M365_CLIENT_ID | Yes | Client id of your delegated Entra app | |
| M365_READ_ONLY | No | 'true' disables every write tool | |
| M365_TENANT_ID | Yes | Tenant GUID. 'common'/'organizations' are rejected at startup. | |
| M365_DEFAULT_TZ | No | IANA zone, default 'America/New_York' | America/New_York |
| M365_PUBLIC_URL | Yes | Public HTTPS origin Claude reaches, no trailing slash | |
| M365_REDACT_PII | No | 'true' scrubs tokens, secrets, and email addresses from logs | |
| M365_CORS_ORIGIN | No | CORS origin allowed to call this server, default 'https://claude.ai' | https://claude.ai |
| M365_TRUST_PROXY | No | Default off. Set to '1' (or an Express hop count) only when running behind a reverse proxy you control, so X-Forwarded-For is trusted. | false |
| M365_CLIENT_SECRET | Yes | Confidential-client secret (required by OBO) | |
| M365_GRAPH_TIMEOUT_MS | No | Microsoft Graph request timeout in milliseconds, default '30000' | 30000 |
| M365_EXTRA_INSTRUCTIONS | No | House-style notes appended to the server instructions (tone, signatures, place names) | |
| M365_EVENTS_LIBRARY_PATH | No | SharePoint library the default file-search scope narrows to; unset searches the whole tenant | |
| M365_ALLOWED_REDIRECT_URIS | No | Comma-separated exact /authorize redirect_uri allowlist. Defaults to 'https://claude.ai/api/mcp/auth_callback'; set this only if a different client connects. | https://claude.ai/api/mcp/auth_callback |
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
No tools | |
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/usedrobot/m365-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server