> ## Documentation Index
> Fetch the complete documentation index at: https://docs.consile.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Outlook

> Read access to the connected user's own Outlook mailbox and calendar: folders, messages, search, whole threads, attachments, calendars and events. Lookups happen live at Microsoft, and Consile stores none of the content.

*[Læs siden på dansk](https://docs.consile.ai/connectors/outlook.md)*

The Outlook connector gives your AI read access to one Microsoft 365 user's own
mailbox and calendar. Your AI can see the folders, list and search messages, read a
message or a whole thread, fetch the content of an attachment, and read calendars
and events with attendees and meeting link. You connect with a Microsoft work or
school account, and your AI never sees the access itself.

> [!NOTE]
>
> The connector only reads the connected user's own mailbox and own calendars.
> Shared mailboxes and colleagues' mailboxes are not included. Contacts are not
> included either.

> [card] Access
>
> Read-only, also at Microsoft

> [card] Authentication
>
> Microsoft work account

> [card] Data
>
> Live lookups · hosted in the EU, Frankfurt

* **Price:** 299 DKK/month excl. VAT. No lock-in, cancel at any time. The price
  covers 1 user and 1 agreement (one connected mailbox). Each extra user and each
  extra agreement costs 149.50 DKK/month excl. VAT. In EUR the price is €39/month
  excl. VAT and €19.50 per extra user or agreement. Also included in
  [the Consile Studio membership](https://docs.consile.ai/en/portal/membership.md) and
  [the free edition](https://docs.consile.ai/en/portal/free-edition.md). See [Pricing](https://docs.consile.ai/en/portal/pricing.md).
* **Users:** whoever buys Outlook automatically gets the included access. If more
  colleagues need Outlook in their AI, an administrator gives them access under
  **Team** in the portal (choose **All tools** next to Outlook on the person's
  page). An extra user is billed pro rata from the day access is given. A colleague
  without access can still see the tools in their AI, but every lookup is refused
  with a message to ask an administrator for access. If you have
  [the Consile Studio membership](https://docs.consile.ai/en/portal/membership.md), an administrator instead
  gives one membership licence per person, and it also covers Outlook. See
  [Team](https://docs.consile.ai/en/portal/team.md). Read
  [Who can read the mailbox?](#who-can-read-the-mailbox) before you give colleagues
  access.
* **Several mailboxes:** the portal calls each connection to the system an
  agreement, and one agreement is one mailbox. If your AI should read several
  mailboxes, an administrator clicks **Add agreement** on the **Connections** card
  on the connector's page in the portal, and the agreement is connected with the
  next user's Microsoft account. Each agreement gets its own address, for example
  `https://mcp.consile.ai/outlook-2/mcp`, which you add as a separate connector in
  your AI. Under
  [the Consile Studio membership](https://docs.consile.ai/en/portal/membership.md#one-more-agreement-in-a-system)
  and in [the free edition](https://docs.consile.ai/en/portal/free-edition.md), other rules apply to adding an agreement. See
  [Connect Outlook](https://docs.consile.ai/en/connect/connect-outlook.md#several-mailboxes).
* **Endpoint:** `https://mcp.consile.ai/outlook/mcp` (your own named connector in
  your AI).

## What does it require?

* **A Microsoft work or school account.** You log in with an account in your
  organization at Microsoft. A personal Microsoft account (for example Outlook.com
  or Hotmail) cannot be used.
* **A mailbox in Microsoft 365.** The user must have their mailbox and calendar in
  Exchange Online, that is, in Microsoft 365.
* **Possibly an administrator's approval.** Many organizations do not let users
  approve on their own that an app reads mail and calendars. Then a Microsoft
  administrator must approve Consile first. See
  [Connect Outlook](https://docs.consile.ai/en/connect/connect-outlook.md#if-microsoft-asks-for-administrator-approval).

## Prerequisites

**1. Subscription**

The connector must be bought in the [portal](https://app.consile.ai). See
[Buy a connector](https://docs.consile.ai/en/portal/buy-a-connector.md).

**2. Microsoft approved**

The user whose mailbox your AI should read logs in with their Microsoft work
account and approves Consile at Microsoft. See
[Connect Outlook](https://docs.consile.ai/en/connect/connect-outlook.md).

**3. Access for your user**

If there are several users on the account, an administrator must assign you
Outlook under **Team** in the portal. Whoever bought the connector has access
from the start. If you have created your own Consile account, but belong to a
company that already has Outlook, ask your administrator for an invitation to
the team instead of buying again. See [Team](https://docs.consile.ai/en/portal/team.md).

**4. Your AI connected**

Each user adds the connector in their own AI and logs in with their own
Consile login. See [Connect Claude](https://docs.consile.ai/en/connect/connect-claude.md) or
[Connect ChatGPT](https://docs.consile.ai/en/connect/connect-chatgpt.md).

## Who can read the mailbox?

An agreement always reads the mailbox that was connected, no matter who on your team
asks. It is not each user's own Consile login that decides which mailbox is read.

> [!WARNING]
>
> Everyone in your Consile account who has access to Outlook can use every Outlook
> agreement. If three colleagues each connect their own mailbox on their own
> agreement, each of them can also read the other two's mail and calendars by adding
> the other agreements' addresses in their AI. Access is given per system, not per
> agreement. So only give Outlook access to people who may read all the mailboxes
> you have connected.

If only one person uses Outlook, or the people with access may read each other's
mail anyway, this is not a problem. Otherwise, only connect mailboxes that everyone
with Outlook access in your Consile account may read.

## What happens to your data?

The Outlook connector is built for live lookups. Consile does not store your
messages, attachments or calendar events:

* **No copy at Consile.** When your AI calls a tool, Consile fetches the answer from
  Microsoft at that moment and passes it straight on to your AI. Consile makes no
  copy, no search index and no cache of the content.
* **No content in the log.** Consile logs technical events, for example which tool
  was called, when, how long it took and whether it succeeded. Search terms,
  messages, attachments and events are not logged.
* **What Consile stores:** the access to Microsoft, encrypted with a key that
  applies only to your account, and the name and email address of the connected
  Microsoft user, which the portal uses as the agreement's name. Both are deleted
  when an administrator disconnects.
* **Your AI service.** What your AI is shown is then processed by the AI service you
  connected yourself (for example Claude or ChatGPT), under its own rules, for
  example about chat history. Only ask about what you are comfortable sending
  there.

See also [Security & data](https://docs.consile.ai/en/essentials/security-and-data.md).

## Read-only

The Outlook connector can only read, and that already applies at Microsoft. When
you connect, you approve these permissions:

| Permission | What it gives |
| - | - |
| `Mail.Read` | Read the user's own mail |
| `Calendars.Read` | Read the user's own calendars |
| `User.Read` | Read the user's profile (name and email address), which gives the agreement its name |
| `offline_access` | Keep the connection alive, so you do not have to log in again |

These are pure read permissions. An access with them cannot send, reply to, move or
delete messages and cannot create or change events, not even outside Consile. The
connector has no write tools, and Consile only sends read requests to Microsoft.
Your AI reading a message does not mark it as read.

## What can it do? (tools)

You do not need to know the tool names. You ask in natural language, and your AI
picks the right one itself. The connector has 10 tools, all of which only read.
When your AI calls them, they are called `outlook__<tool>` (for example
`outlook__search_messages`).

**Mail**

| Tool | What it does |
| - | - |
| `list_mail_folders` | The mailbox's top-level folders (for example Inbox, Sent Items, Archive and the user's own folders) with unread and total counts. Subfolders are not shown, but a folder shows that it has some |
| `list_messages` | Messages in one folder, newest first: subject, sender, recipients, dates, read state, importance, whether there are attachments, and a short preview. The inbox if no folder is named. Can filter, for example only unread or from a specific sender |
| `search_messages` | Full-text search in the whole mailbox or one folder, in subject and content, and for example by sender, subject, date or attachments. Results come in relevance order |
| `get_message` | One message in full with the body as plain text, all recipients and the list of attachments |
| `get_conversation` | A whole mail thread in one call, oldest first, with each message's body as plain text |
| `download_attachment` | The content of one attachment. Text files (for example txt, csv, json and html) as text, other files (for example PDF, Word and images) as encoded data (base64) with the file type. At most 5 MB |

**Calendar**

| Tool | What it does |
| - | - |
| `list_calendars` | The user's calendars. The default calendar is marked |
| `list_events` | Events in a calendar between two points in time, at most 92 days, sorted by start. Recurring meetings show as their individual occurrences. With location, organizer, attendees and their responses, free/busy and meeting link |
| `get_event` | One event in full, including the invitation text |
| `list_upcoming_events` | Events in the default calendar from now and a number of days ahead (7 by default, at most 31) |

Event times are shown in Danish time by default. Your AI can ask for another time
zone.

> [card] [Building on top yourself? See the API reference](https://docs.consile.ai/developers/tools/outlook.md)
>
> Full reference with the 10 tools, arguments, filters, search, pages, limits and
> error messages.

## Try asking

> [accordion] The inbox
>
> > *"What unread mail did I get today, and which of it needs a reply?"*
>
> > *"Find mail from \<name> about the quote in October, and summarize what we agreed."*

> [accordion] Threads and attachments
>
> > *"Summarize the thread about the delivery to \<company name>, and list the open questions."*
>
> > *"Fetch the attached CSV file in the latest mail from \<name>@example.com, and add up the figures per month."*

> [accordion] Calendar
>
> > *"What is in my calendar for the next three days, and who has not responded to the invitation?"*
>
> > *"How many hours was I in meetings last month?"*

> [!TIP]
>
> Mention a sender, a subject or a period in your question. Then your AI can search
> precisely instead of reading through many messages.

## Limitations

* **Only the user's own mailbox and calendar:** shared mailboxes, colleagues'
  mailboxes and contacts are not included. Calendars that others have shared with
  the user can appear in the list of calendars, but the connector only has
  Microsoft's permission for the user's own calendars, so events in them cannot be
  expected to be readable.
* **Subfolders:** `list_mail_folders` only shows the top-level folders. Messages in
  a subfolder are found with a search of the whole mailbox.
* **Read-only:** the connector cannot send, reply to, move or delete messages and
  cannot create or change events.
* **Only work and school accounts:** personal Microsoft accounts are not supported.
* **Long texts are cut:** a message or an event gives at most 20,000 characters of
  body text, and a whole thread at most 5,000 characters per message. The answer
  shows when the text was cut, so your AI can read that message on its own.
* **Attachments:** files over 5 MB are refused. An attached Outlook message or
  invitation and a link to a file in OneDrive or SharePoint have no file content to
  fetch. Your AI is told so.
* **Periods:** `list_events` takes at most 92 days at a time and
  `list_upcoming_events` at most 31 days ahead. Your AI can split a longer period.
* **Large lists are split up:** a page is 50 rows by default and at most 500. Your
  AI can page on to the next page.
* **Microsoft's call limit:** Microsoft limits how many calls can be made in a short
  time. If a lookup hits the limit, your AI is told to wait a little and ask for
  fewer rows.
* **Response time:** if Microsoft does not answer in time, the lookup fails with the
  general error "Tool invocation failed."
* **Explanatory errors, but not always:** for the common errors, the connector gives
  your AI an explanation: an access that must be connected again, missing access, a
  message or event that does not exist, a file that is too large, and a request
  Microsoft refuses. Other errors, for example a timeout or an error at Microsoft,
  only give the general error "Tool invocation failed."
* **The access is renewed automatically, but can stop:** if the renewal fails, or
  Consile is removed in your Microsoft organization, your AI is told that the
  connection must be set up again from the Consile portal. The portal can still
  show **Connected**, because the stored access is still there. Only an
  administrator can reconnect: if the agreement says **Access revoked**, click
  **Reconnect**. Otherwise the administrator chooses **Disconnect** in the menu
  next to the agreement and then clicks **Connect**. You can also ask your AI for
  a new connection link in the connector that belongs to the agreement (for
  example `outlook-2`). See
  [Connect Outlook](https://docs.consile.ai/en/connect/connect-outlook.md#the-access-is-renewed-but-the-connection-can-stop).

Is something not working as expected? See [Troubleshooting](https://docs.consile.ai/en/troubleshooting.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.