Outlook MCP Server

outlook

Come funziona

Quando colleghi questo connettore a un agente, l’agente non impara gli strumenti a memoria: se li fa dire, e li usa quando servono. Per questo un connettore aggiornato porta strumenti nuovi senza che l’agente vada rifatto.

Durante una conversazione il giro e’ sempre lo stesso: l’agente capisce dalla tua richiesta quale strumento serve e con quali valori usarlo, il gateway lo esegue e restituisce il risultato, e l’agente te lo racconta a parole. Chi compie l’operazione resti tu: l’accesso avviene con credenziali verificate, cosi’ il connettore puo’ distinguere cosa e’ permesso a te da cosa e’ permesso a un altro.

Il giro completo, con questo connettore

  1. Chiedi all’agente qualcosa che ha bisogno di Outlook MCP Server — per esempio una delle richieste qui sopra.
  2. L’agente si fa dare l’elenco degli strumenti e vi trova, fra gli altri, categories-listlabel-addlabel-delete.
  3. Sceglie quello adatto e lo esegue, riempiendo i valori con quello che gli hai detto (o chiedendoteli, se gli mancano):
    {
      "tool": "label-add",
      "parameters": {
        "id": "<string>",
        "labels": "<array>"
      }
    }
  4. Il gateway esegue lo strumento e restituisce il risultato: l’agente non te lo mostra grezzo, te lo racconta — e se serve incatena piu’ strumenti di fila per arrivare a quello che hai chiesto.

Gli strumenti di questo connettore

23 strumenti. Non li chiami tu: li sceglie l’agente in base a quello che gli chiedi. Servono a farti capire cosa puoi aspettarti e quali informazioni ti verranno chieste. L’elenco effettivo puo’ variare con la configurazione del collegamento.

categories-list

List Outlook categories with colors and names.

La chiamata che parte
{
  "tool": "categories-list",
  "parameters": {}
}
label-add

Add a label/category or move message to a folder in Outlook

Gli serve: idstring labelsarray

La chiamata che parte
{
  "tool": "label-add",
  "parameters": {
    "id": "<string>",
    "labels": "<array>"
  }
}
label-delete

Delete Outlook categories permanently (irreversible). Categories organize messages by color and name.

Gli serve: idsarray

La chiamata che parte
{
  "tool": "label-delete",
  "parameters": {
    "ids": "<array>"
  }
}
labels-list

List Outlook categories for label: query syntax. Case-sensitive.

La chiamata che parte
{
  "tool": "labels-list",
  "parameters": {}
}
message-get

Get an Outlook message by ID with flexible field selection

Gli serve: idstring

Puo’ usare: fields contentType excludeThreadHistory

La chiamata che parte
{
  "tool": "message-get",
  "parameters": {
    "id": "<string>"
  }
}
message-mark-read

Mark an Outlook message as read

Gli serve: idstring

La chiamata che parte
{
  "tool": "message-mark-read",
  "parameters": {
    "id": "<string>"
  }
}
message-move-to-trash

Move Outlook messages to trash (recoverable).

Gli serve: idsarray

La chiamata che parte
{
  "tool": "message-move-to-trash",
  "parameters": {
    "ids": "<array>"
  }
}
message-respond

Reply to an Outlook message

Gli serve: idstring bodystring

Puo’ usare: contentType

La chiamata che parte
{
  "tool": "message-respond",
  "parameters": {
    "id": "<string>",
    "body": "<string>"
  }
}
message-search

Search Outlook messages using structured query objects with flexible field selection.

Puo’ usare: query fields pageSize pageToken shape contentType excludeThreadHistory

La chiamata che parte
{
  "tool": "message-search",
  "parameters": {
    "query": "<string>",
    "fields": "<string>",
    "pageSize": "<integer>"
  }
}
message-send

Send an email message through Outlook

Gli serve: tostring bodystring

Puo’ usare: cc bcc subject contentType

La chiamata che parte
{
  "tool": "message-send",
  "parameters": {
    "to": "<string>",
    "body": "<string>"
  }
}
mailbox-get-profile

Returns the profile of the Outlook mailbox currently linked to this session (email, userPrincipalName, tenant). Use this when the user asks "which mailbox am I using?" or to obtain the implicit sender for "send to myself".

La chiamata che parte
{
  "tool": "mailbox-get-profile",
  "parameters": {}
}
mailbox-logout

Disconnects the Outlook mailbox currently linked to this session/user from this MCP agent. The user will need to log in again before using any Outlook tool. Use this when the user asks to "logout", "scollegare la casella", "disconnect outlook", "remove access". No parameters required.

La chiamata che parte
{
  "tool": "mailbox-logout",
  "parameters": {}
}
mailbox-list-attachments

List the attachments of an Outlook message by Graph messageId. Returns metadata only (id, name, contentType, size, isInline) - the actual binary or text content is fetched separately via mailbox-read-attachment. Use this when the user asks "what attachments are in this email" or before reading/analy…

Gli serve: messageIdstring

La chiamata che parte
{
  "tool": "mailbox-list-attachments",
  "parameters": {
    "messageId": "<string>"
  }
}
mailbox-read-attachment

Read or analyze the content of an Outlook attachment. mode="auto" (default) extracts textual content for PDF (text only, no OCR), DOCX, XLSX/CSV, HTML, plain text; for non-textual binaries returns a signed downloadUrl (TTL 1h). mode="vision" (image/* only) delegates visual analysis to the SAME memor…

Gli serve: messageIdstring attachmentIdstring

Puo’ usare: mode visionPrompt

La chiamata che parte
{
  "tool": "mailbox-read-attachment",
  "parameters": {
    "messageId": "<string>",
    "attachmentId": "<string>"
  }
}
mailbox-send-with-attachments

Send an email WITH attachments from the connected Outlook mailbox. Use this instead of message-send when the email needs one or more attachments. Each attachment is provided via exactly one of: `url` (gateway downloads it - works with the download_url of files generated by the Excel/Word MCP, the fi…

Gli serve: toarray attachmentsarray

Puo’ usare: cc bcc subject body contentType saveToSentItems

La chiamata che parte
{
  "tool": "mailbox-send-with-attachments",
  "parameters": {
    "to": "<array>",
    "attachments": "<array>"
  }
}
calendar-get-schedule

Read free/busy availability and working hours for up to 20 people or rooms in the same Microsoft 365 organization. Returns availabilityView (0=free, 1=tentative, 2=busy, 3=out of office, 4=working elsewhere) without exposing private event details. Use this when the user asks when colleagues are avai…

Gli serve: schedulesarray startstring endstring

Puo’ usare: timeZone intervalMinutes

La chiamata che parte
{
  "tool": "calendar-get-schedule",
  "parameters": {
    "schedules": "<array>",
    "start": "<string>",
    "end": "<string>"
  }
}
calendar-find-meeting-times

Ask Microsoft Graph to suggest the best common meeting times by crossing the organizer calendar with colleagues or rooms. Use this before creating an appointment when multiple attendees are involved.

Gli serve: attendeesarray startstring endstring

Puo’ usare: timeZone durationMinutes minimumAttendeePercentage activityDomain

La chiamata che parte
{
  "tool": "calendar-find-meeting-times",
  "parameters": {
    "attendees": "<array>",
    "start": "<string>",
    "end": "<string>"
  }
}
calendar-create-event

Create an Outlook calendar event in the connected organizer mailbox. When attendees are provided, Microsoft sends meeting invitations. Confirm the selected slot with the user before calling this tool.

Gli serve: subjectstring startstring endstring

Puo’ usare: timeZone attendees optionalAttendees body contentType location isOnlineMeeting transactionId

La chiamata che parte
{
  "tool": "calendar-create-event",
  "parameters": {
    "subject": "<string>",
    "start": "<string>",
    "end": "<string>"
  }
}
shared-mailbox-list-messages

List or search messages in a SHARED Outlook mailbox (not the personal mailbox of the logged-in user). Requires the user to have Exchange FullAccess delegation on that mailbox. Returns message metadata (id, subject, from, receivedDateTime, bodyPreview); use shared-mailbox-get-message to read the full…

Gli serve: mailboxstring

Puo’ usare: query folder top

La chiamata che parte
{
  "tool": "shared-mailbox-list-messages",
  "parameters": {
    "mailbox": "<string>"
  }
}
shared-mailbox-get-message

Read a message (with full body) from a SHARED Outlook mailbox. messageId is the Graph id returned by shared-mailbox-list-messages.

Gli serve: mailboxstring messageIdstring

La chiamata che parte
{
  "tool": "shared-mailbox-get-message",
  "parameters": {
    "mailbox": "<string>",
    "messageId": "<string>"
  }
}
shared-mailbox-list-attachments

List the attachments (metadata only: id, name, contentType, size) of a message in a SHARED Outlook mailbox. Use shared-mailbox-read-attachment to read the actual content.

Gli serve: mailboxstring messageIdstring

La chiamata che parte
{
  "tool": "shared-mailbox-list-attachments",
  "parameters": {
    "mailbox": "<string>",
    "messageId": "<string>"
  }
}
shared-mailbox-read-attachment

Read or analyze the content of an attachment from a SHARED Outlook mailbox. Same behaviour as mailbox-read-attachment: mode="auto" (default) extracts textual content for PDF (text only, no OCR), DOCX, XLSX/CSV, HTML, plain text — for non-textual binaries returns a signed downloadUrl (TTL 1h); mode="…

Gli serve: mailboxstring messageIdstring attachmentIdstring

Puo’ usare: mode visionPrompt

La chiamata che parte
{
  "tool": "shared-mailbox-read-attachment",
  "parameters": {
    "mailbox": "<string>",
    "messageId": "<string>",
    "attachmentId": "<string>"
  }
}
shared-mailbox-send

Send an email AS a SHARED Outlook mailbox (the from will be the shared mailbox, not the personal one). Requires the user to have SendAs or SendOnBehalf delegation on that mailbox. Supports small inline attachments: for text files you generate yourself (e.g. .ics calendar invites) pass `contentText`…

Gli serve: mailboxstring toarray bodystring

Puo’ usare: cc subject contentType attachments

La chiamata che parte
{
  "tool": "shared-mailbox-send",
  "parameters": {
    "mailbox": "<string>",
    "to": "<array>",
    "body": "<string>"
  }
}

Elenco rilevato il 11/08/2026.

Guida all'uso del connettore MCP «Outlook MCP Server» su AIsuru. Tutti i connettori.