Get API key

Microsoft 365

Give your members their Microsoft 365 mail, files and calendar in chat. Set up once for the organisation.

The Microsoft 365 connector lets each member bring their own Outlook mail, OneDrive and SharePoint files, and calendar into a conversation. Everyone signs in with their own Microsoft account, and everyone sees only what they could already see in Microsoft 365. There is no shared mailbox and no service account.

Setting it up takes two people. An org admin does it in PrivateMind, and a Microsoft Entra administrator approves it in your Microsoft tenant. They are often not the same person, so the page is built around that: you do your part, then send the approval links on.

Before you start

You need:

  1. Org admin access in PrivateMind. Setup lives under Organisation Settings. A regular member cannot see the page.
  2. Your Microsoft tenant ID. A Microsoft Entra administrator can read it from the Entra admin centre under Overview, where it is shown as the Tenant ID or Directory ID. It is a GUID, in the shape 00000000-0000-0000-0000-000000000000.
  3. A Microsoft Entra administrator who can approve applications for your tenant, usually a Global Administrator or Privileged Role Administrator.
  4. Connectors switched on for your organisation. Under Organisation Settings, both MCP Servers and Custom MCP Servers need to be on. Custom MCP Servers is off by default, and while it is off the Org Connectors entry does not appear in the sidebar at all.

Open Org Connectors in the settings sidebar (/settings/org/org-connectors). The Microsoft 365 card sits at the top with three steps.

Step 1: your tenant ID

Paste the tenant ID into the box and save. It is stored against your organisation, and it does one job: it decides which Microsoft tenant your members are allowed to connect from. Somebody signing in with an account from a different tenant is turned away, even if that account is perfectly valid.

Enter the GUID, not a domain. contoso.onmicrosoft.com is the tempting mistake: it looks like an identifier for your organisation, but it is not the value Microsoft sends when somebody signs in, so it would match nothing and refuse everyone. Saving a domain returns an error rather than storing it.

Once saved, the field empties and the value you saved appears underneath it. That is normal. The box is only ever for entering a new tenant ID, and what you see below it is what is currently in force.

Step 2: approval from your Entra administrator

Two buttons appear after you save the tenant ID:

  • Approve data access
  • Approve sign-in

Both are needed. They approve two different things, and approving only one leaves the connector in a state that is confusing to diagnose, because it appears to work for administrators and fails for everyone else. Administrators can approve applications for themselves as they sign in, so they get through a gap that stops an ordinary member.

If you are the Entra administrator, open both links and approve. If you are not, send both to whoever is, along with the section below.

For the Entra administrator

You are being asked to approve a PrivateMind connector that lets your colleagues use their own Microsoft 365 data inside PrivateMind conversations.

There are two applications to approve, and both are needed. One is the PrivateMind web application your colleagues sign into. The other is the service that talks to Microsoft Graph on their behalf. The two links you have been sent carry the right application for each, already filled in with your tenant.

Every permission is delegated, which means the connector acts as the signed-in person and can never see more than they can. There is no application permission, so it cannot read anything tenant-wide, and there is no service account.

What it asks for:

Permission What it allows
User.Read Read the signed-in person's basic profile
Mail.Read Read their mail
Calendars.Read Read their calendar
Files.Read.All Read files they already have access to
Sites.Read.All Read SharePoint sites they already have access to
Files.ReadWrite.AppFolder Write into a single folder in their own OneDrive

The only write permission is the last one. Files.ReadWrite.AppFolder confines every write to one folder in the person's own OneDrive, and Microsoft enforces that boundary rather than the application. Nothing can be written outside it. There is no permission to send mail and no permission to change a calendar.

After approving, both applications appear under Enterprise applications in your tenant, named PrivateMind-M365 and PrivateMind-M365-Web. Their Permissions view lists what was granted, and is worth checking against the table above.

Trimming a permission there does more than remove one feature. Microsoft fails the whole token exchange if any requested permission is missing, so removing Sites.Read.All also stops OneDrive working, and removing any single read stops search working entirely. Files.ReadWrite.AppFolder is the only one that can be removed cleanly, and doing so makes the connector read-only.

To limit who inside your tenant can use it, set Assignment required to Yes on the enterprise application and assign a group. That restricts use while leaving the consent in place, and is the posture we recommend.

To remove access later, delete the enterprise application in your tenant. That cuts it off immediately and needs nothing from PrivateMind.

Step 3: turn it on

The switch sits in the top right of the Microsoft 365 card, and stays disabled until a tenant ID is saved. Once you turn it on, Microsoft 365 (Graph) appears in the connector Library for everyone in your organisation.

You can turn it on before approval is finished, and you may want to if you are waiting on somebody. Members will see the connector but cannot complete sign-in until approval lands, so if your Entra administrator has not finished yet, it is usually kinder to wait.

Turning it off removes it for everyone, not just for people who have not connected yet. It disappears from the Library and from any conversation it was attached to. Members who had connected keep their stored Microsoft sign-in, so if you turn it back on they do not have to sign in again.

What your members do

Nothing on this page. Once the connector is on and approved, each member opens Connectors from the sidebar, finds Microsoft 365 (Graph) in the Library and clicks Connect. They sign in with their own Microsoft account once, and after that they can attach it to any conversation.

From then on they can ask things like "summarise my unread mail from this week", "find the deck I shared with the client last month", or "what does my Thursday look like".

The assistant can also save a file back to their OneDrive. Everything it writes goes to one folder, Apps/PrivateMind-M365, and Microsoft prevents it writing anywhere else. Because it can write at all, PrivateMind shows a confirmation the first time somebody connects it. That is expected: the connector can create and change files, inside that one folder and nowhere else.

Attaching it changes the conversation

Microsoft 365 carries a person's mail, files and calendar, so PrivateMind treats a conversation holding it as a private one. Attaching it turns web search off for that conversation and disconnects any connector that reaches the public internet.

This lasts for the life of the conversation. Detaching Microsoft 365 later does not bring web search back, because whatever it read is already in the history and reopening an outside channel would be a way to carry it out. To use web search again, start a new chat.

Connectors that stay inside your organisation are unaffected, so Microsoft 365 and an internal connector such as an issue tracker can be used in the same conversation.

One related limit: if your organisation has enabled a third-party model provider, Microsoft 365 will not attach on a conversation using one of those models. Its contents would otherwise be sent to that provider.

When something goes wrong

The errors here come from Microsoft, and they read as though the member did something wrong when usually the setup is simply incomplete. These are the ones worth recognising.

What the member sees What it means Who fixes it
Approval required, or AADSTS65001 The applications have not been approved for your tenant yet Entra administrator, step 2
A message that their account belongs to a different tenant They signed in with an account outside your organisation The member, by using their work account
A message that the organisation is not bound to a Microsoft tenant The tenant ID has not been saved Org admin, step 1
AADSTS50011 A redirect address is missing from the application registration PrivateMind support
Everything works for you but not for anyone else Only one of the two approvals was granted Entra administrator, step 2

That last row is the common one, and it is worth checking first. Approving as an administrator does not prove that ordinary members can sign in, so test with an account that has no admin role before telling everyone it is ready.

Where next

  • Connectors: how members browse, connect and use connectors in chat
  • Org connectors: register your organisation's own MCP servers and REST APIs
  • Org settings: the switches that control which connectors your organisation can use