The Microsoft 365 connector is an Anthropic-hosted integration that enables Claude to securely access Microsoft 365 services (Outlook, SharePoint, OneDrive, Teams) through user-delegated permissions. Anthropic has completed Microsoft's publisher verification process, associating our verified Microsoft Partner Network account with this application to confirm our organizational identity.
The Microsoft 365 connector is available on all Claude plans: Free, Pro, Max, Team, and Enterprise.
The connector operates as a secure proxy, and your Microsoft 365 documents, emails, and files remain in your tenant. The connector only retrieves data on-demand during active queries and doesn’t cache file content. Credentials are encrypted and managed by Anthropic's backend infrastructure. The MCP server itself doesn’t store or manage these credentials. Microsoft's Azure SDK handles the On-Behalf-Of token exchange and caching on a per-user basis for accessing the Graph API.
Access restriction
Access can be fully restricted
The connector provides multiple layers of access control to address your security requirements. For detailed information on administration of the Microsoft 365 connector, see Set up the Microsoft 365 connector.
1. Microsoft Entra tenant requirement
All people using the connector—regardless of Claude plan—must authenticate with a Microsoft 365 account tied to a Microsoft Entra tenant. Personal Microsoft accounts (@outlook.com, @hotmail.com) can't be used. A Microsoft Entra Global Administrator must complete a one-time consent process before anyone in the tenant can connect.
2. Organization-level gating (Team and Enterprise plans)
On Team and Enterprise plans, access to the connector requires a two-step approval process. First, Owners must explicitly enable the Microsoft 365 connector in Claude organization settings by navigating to Organization settings > Connectors > Browse connectors > Add "Microsoft 365." Until this approval is granted, team members have no access.
Second, after the Owner enables the connector, a Microsoft Entra Global Administrator must complete individual authentication and grant consent on behalf of the whole organization before any team members can connect.
3. Granular permission revocation
You can selectively disable specific capabilities via Microsoft Entra Admin Center. For example:
To restrict | Action | Effect |
All access | Disable connector in Claude organization settings | Complete shutdown |
SharePoint only | Revoke Sites.Read.All permission in Entra | Blocks SharePoint |
Email access | Revoke Mail.Read permission in Entra | Blocks Outlook |
Teams chat | Revoke Chat.Read permission in Entra | Blocks Teams |
Teams messaging (write) | Revoke ChatMessage.Send, ChannelMessage.Send, and Chat.Create in Entra | Blocks Claude from sending Teams messages |
OneDrive files | Revoke Files.Read and/or Files.Read.All | Blocks reading files from OneDrive |
Changes take effect immediately for all people in your organization. People can also choose to disable capabilities during a chat by selectively toggling off the connector's tools.
4. Microsoft Conditional Access
Your Conditional Access policies apply to the connector, but not always in the way they apply to a user working directly in Microsoft 365. When a user connects, Entra evaluates your policies against their sign-in. Every later request is made by Claude's servers. In our testing, Entra evaluates those requests as coming from Anthropic's IP range (160.79.104.0/21), identifying the member and carrying the device recorded when they connected, rather than the member's current device or network. What that means for each kind of policy:
Group-based access: Supported. Scope your policy to specific security groups, or set Assignment required on both Claude applications as described in Set up the Microsoft 365 connector.
Multi-factor authentication (MFA): Supported. MFA is enforced when the member signs in to connect. If your MFA policy doesn't apply to the connector sign-in, for example because it targets specific applications, or has conditions that can skip MFA there, create a separate policy with no conditions that requires MFA for the two Claude applications.
Device compliance: Supported, with a difference in when it's checked. In our testing, the policy is evaluated against the device the member connects from. A device that doesn't meet the policy isn't stopped at the connect screen; its requests fail from the first tool call afterwards. The connection then carries that device record, and ongoing access is checked against the record rather than the device currently in use, until the member next reconnects. Each member's most recent connection is the one that counts. The record is only created if the member's browser can prove the device to Entra, so a compliant device used with a browser profile that isn't signed in to your organization is treated as not compliant. Members who are blocked (
AADSTS53000) fix it by reconnecting from a device that meets the policy, in a browser signed in to your organization. Keep the policy assigned to the Claude applications; excluding them removes the check.Location and network restrictions: Not supported. In our testing, the server-side requests always appear to come from Anthropic's IP range, wherever the member is, so a policy that limits sign-ins to your network or VPN blocks the connector for every member. The same applies to sign-in frequency policies. Learn how to exclude Anthropic's IP range in Set up the Microsoft 365 connector.
Warning: Don't change a device policy to require a compliant device or multi-factor authentication as a workaround. In our testing the MFA proof carries through the stored connection in the same way, so the policy can end up satisfied for every member and the device requirement stops doing anything reliable.
To stop members from connecting a work Microsoft 365 account to a Claude account outside your organization, turn on Restrict verified-domain connectors to your enterprise.
5. User-level permissions
The Microsoft 365 Connector uses delegated permissions.
Users can only access Microsoft 365 data they already have permission for
SharePoint search requires Sites.Read.All permission. Site-specific permissioning (using *.Selected permissions) is not supported because the underlying search is tenant-wide.
Users cannot bypass SharePoint sharing settings or folder permissions.
Users can't access other users' private files or emails. Users can search shared mailboxes they've been granted delegate access to in Microsoft 365, including full access and folder-level delegation. Shared mailbox access remains read-only, via the
Mail.Read.Sharedpermission. Email search doesn't reach a user's separate Online Archive (In-Place Archive) mailbox.Delegated permissions inherently respect Microsoft 365 data loss prevention (DLP) policies.
6. Token management
Refresh tokens expire after 90 days of inactivity by default, requiring re-authentication. This can be customized in Microsoft Entra ID using a token lifetime policy.
Access tokens typically expire within 60-90 minutes per Microsoft Entra ID defaults and are automatically refreshed.
Admins or users can revoke access anytime via Microsoft Entra ID.
The Microsoft 365 Connector never sees or stores passwords.
Security architecture summary
Authentication flow
OAuth 2.0 On-Behalf-Of (OBO): Industry-standard delegated authentication
PKCE protection: Public client uses Proof Key for Code Exchange to prevent authorization code interception
Two-stage token exchange: User authenticates to obtain access token for MCP server, then MCP server exchanges it for Graph API access using OBO flow with confidential client credentials. In this flow, not even the user or their Claude client has access to the OBO tokens. Only the MCP server can access and use tokens with access to the user’s data via the Microsoft Graph API.
No credential storage: Users never share Microsoft passwords with Anthropic
Encrypted token storage: Access and refresh tokens are encrypted while cached by the Claude backend
Data flow
Documents and other content are retrieved only during active queries
Tool call results from the connector that are part of stored chats are retained
The user who requested the Claude chat can see the tool call results and Claude’s response incorporating the data
Other users shared on the chat can only see Claude’s response incorporating the result of the tool call
Each request creates a fresh data flow which is cleaned up after the response is returned
Multi-tenant isolation
Microsoft Entra tenants are cryptographically separated from each other using a common-scoped multi-tenant configuration
Multi-tenant isolation is cryptographically enforced through digitally signed access tokens that bind each user to their organization’s tenant
Available capabilities
Read and search tools
The connector provides read-only access to:
Tool | Description | Required permission |
| Search SharePoint documents and pages | Sites.Read.All |
| Find SharePoint folders by name | Sites.Read.All |
| Search email with sender/date filters | Mail.Read |
| Search calendar events | Calendars.Read |
| Find available meeting times | Calendars.Read |
| Search Teams chat messages | Chat.Read |
| Read files, emails, or chat by URI | Varies by resource type |
Write tools
Tool | Description | Required permission |
| Send an email as the user | Mail.Send |
| Forward an existing message | Mail.Send |
| Send an existing draft | Mail.Send |
| Move a conversation to Deleted Items | Mail.ReadWrite |
| Restore a conversation from Deleted Items | Mail.ReadWrite |
| Move multiple messages to Deleted Items | Mail.ReadWrite |
| Create a draft email | Mail.ReadWrite |
| Create a reply draft on a message | Mail.ReadWrite |
| Create a reply-all draft on a message | Mail.ReadWrite |
| Update an existing draft | Mail.ReadWrite |
| Move a draft to Deleted Items | Mail.ReadWrite |
| Create a category in the master list | MailboxSettings.ReadWrite |
| Rename or recolor a category | MailboxSettings.ReadWrite |
| Remove a category from the master list | MailboxSettings.ReadWrite |
| Add/remove categories on one message | Mail.ReadWrite |
| Add/remove categories across a thread | Mail.ReadWrite |
| Add/remove categories on multiple messages | Mail.ReadWrite |
| Create a calendar event | Calendars.ReadWrite |
| Update an existing event | Calendars.ReadWrite |
| Delete a calendar event | Calendars.ReadWrite |
| Accept, decline, or tentatively accept an invitation | Calendars.ReadWrite |
| Set the automatic-reply (out-of-office) message | MailboxSettings.ReadWrite |
| Create an inbox rule | MailboxSettings.ReadWrite |
| Delete an inbox rule | MailboxSettings.ReadWrite |
| Create a new file in a library or folder | Files.ReadWrite.All |
| Replace an existing file's content | Files.ReadWrite.All |
| Create a new folder | Files.ReadWrite.All |
|
