> This page is for Workforce.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.merge.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.merge.dev/_mcp/server.

# Outlook

**Authentication:** OAuth or access token. See [Magic Link](/merge-agent-handler/features/magic-link) for the runtime auth flow, or [Application credentials](/merge-agent-handler/admin-setup/add-oauth-credentials) to bring your own OAuth app.

## Sample use cases

* Find every email from contacts at our top-10 accounts in the last 7 days I haven't replied to.
* Draft a follow-up reply to the latest message from `customer@acme.com`.
* Search for emails with `invoice` from this month and forward to accounting\@.

## Available Tools

#### list_message_attachments

List all attachments for a specific email message with pagination support.

#### get_message_attachment

Get a specific attachment from an email message by ID.

#### get_message_attachments_metadata

Get metadata for all attachments in an email message without downloading content. Returns only essential fields (id, name, size, contentType) with pagination support.

#### get_events

Retrieve calendar events within a time range with pagination support.

#### get_event

Get a specific calendar event by ID

#### create_event

Create a calendar event (one-time or recurring). Use recurrence parameter for recurring events.

#### update_event

Update a calendar event.

#### delete_event

Delete a calendar event

#### get_today_events

Get today's calendar events

#### get_upcoming_events

Get upcoming calendar events

#### get_past_events

Get past calendar events from previous days

#### create_meeting

Create a meeting with attendees (one-time or recurring)

#### create_teams_meeting

Create a Teams meeting with enhanced online meeting support

#### search_events

Search for calendar events with pagination support

#### get_user_schedule

Get free/busy schedule information for users, distribution lists, or resources for a specified time period

#### find_meeting_times

Find optimal meeting times based on attendee availability, suggesting times that work for required participants

#### get_contacts

Retrieve contacts from a folder with pagination support

#### get_contact

Get a specific contact by ID

#### create_contact

Create a new contact

#### update_contact

Update a contact

#### delete_contact

Delete a contact

#### search_contacts

Search for contacts with pagination support

#### find_contacts_by_email

Find contacts by email address with pagination support

#### find_contacts_by_company

Find contacts by company name with pagination support

#### get_mail_folders

Get all mail folders with pagination support

#### get_mail_folder

Get a specific mail folder by ID

#### create_mail_folder

Create a new mail folder

#### update_mail_folder

Update a mail folder

#### delete_mail_folder

Delete a mail folder

#### copy_mail_folder

Copy a mail folder

#### move_mail_folder

Move a mail folder

#### get_child_folders

Get child folders of a parent folder with pagination support

#### get_well_known_folder

Get a well-known folder by name

#### get_folder_message_count

Get message counts for a folder

#### get_messages

Retrieve messages from a mailbox folder with pagination support

#### get_message

Get a specific message by ID

#### create_draft_message

Create a draft message

#### send_message

Send an email message

#### update_message

Update a message

#### delete_message

Delete a message

#### mark_message_as_read

Mark a message as read

#### mark_message_as_unread

Mark a message as unread

#### get_unread_messages

Get unread messages from a folder with pagination support

#### search_messages

Search for messages with pagination support. Returns message IDs that are 150+ characters long. ⚠️ CRITICAL: Copy the ENTIRE 'id' field exactly - do NOT truncate or reconstruct IDs.

#### list_users

List users in the organization with pagination support, filtering, ordering

#### search_users

Search for users by name, email with pagination support and full-text search

#### get_user_by_email

Get detailed user information by email address (userPrincipalName)