Microsoft 365

Connect AI Agents to
Microsoft 365

Automate workflows and connect AI agents to Microsoft 365. Metorial is built for developers. Handling OAuth, compliance, observability, and more.

Microsoft 365 on Metorial

The Microsoft 365 integration lets you access and manage your emails, calendar events, files, and documents across Outlook, OneDrive, and SharePoint directly from your workflow.

Deploy on Metorial

Combine Microsoft 365 with other tools

Metorial has 600+ integrations available. Here are some related ones you might find interesting.

Slack

Slack

The Slack integration lets you read channels, send messages, and search conversations directly from your AI assistant, enabling seamless team communication and information retrieval without leaving your workflow.

Google Calendar

Google Calendar

The Google Calendar integration lets you view, create, update, and manage calendar events directly from your workflow, enabling seamless scheduling and calendar management without switching applications.

GitHub

GitHub

The GitHub integration lets you search and view repositories, manage issues and pull requests, read file contents, and interact with your GitHub account directly from your workspace.

Google Drive

Google Drive

The Google Drive integration lets you search, read, and manage files and folders in your Google Drive directly through Claude. Use it to access documents, create new files, organize content, and collaborate on shared resources without leaving your conversation.

Gmail

Gmail

The Gmail integration lets you read, search, send, and manage your email messages directly through AI conversations, enabling automated email workflows and intelligent inbox management.

Linear

Linear

The Linear integration lets you manage issues, projects, and teams directly from your workflow, enabling you to create, update, search, and track work items without leaving your current context.

WhatsApp

WhatsApp

The WhatsApp integration lets you send and receive messages, manage chats, and access conversation history directly through your AI assistant, enabling automated messaging workflows and seamless communication management.

Microsoft 365

Microsoft 365

The Microsoft 365 integration lets you access and manage your emails, calendar events, files, and documents across Outlook, OneDrive, and SharePoint directly from your workflow.

Firecrawl

Firecrawl

The Firecrawl integration lets you scrape and convert websites into LLM-ready markdown directly within your workflow, enabling you to extract clean, structured content from any URL for analysis, summarization, or knowledge base building.

Connect anything. Anywhere.

Supported tools and capabilities

Metorial helps you connect AI agents to Microsoft 365 with various tools and resources. Tools allow you to interact with perform specific actions, while resources provide read-only access to data and information.

Help & Documentation

Find guides and articles to help you get started with Microsoft 365 on Metorial.

More about Microsoft 365

Microsoft 365 MCP Server

A comprehensive Model Context Protocol (MCP) server that provides seamless integration with Microsoft 365 services. This server enables AI assistants and applications to interact with Outlook, Calendar, OneDrive, SharePoint, OneNote, Microsoft To Do, and Teams through a unified interface. With over 45 specialized tools, it allows you to manage emails, schedule meetings, organize files, collaborate on documents, and communicate with your team—all through natural language interactions.

Overview

The Microsoft 365 MCP Server acts as a bridge between AI applications and the Microsoft 365 ecosystem, leveraging Microsoft Graph API to provide comprehensive access to your organization's productivity tools. Whether you need to triage your inbox, schedule a team meeting, find a document in SharePoint, or send a message in Teams, this server provides the capabilities to accomplish these tasks programmatically.

This server is designed for users who want to enhance their productivity workflows by integrating AI-powered automation with their existing Microsoft 365 environment. It's particularly valuable for professionals who manage multiple communication channels, coordinate across teams, and need quick access to organizational information.

Features and Capabilities

User Management

Access and search organizational user profiles to find colleagues, retrieve contact information, and understand your organization's directory structure. These capabilities make it easy to discover who's who in your organization and retrieve accurate contact details.

Email Management

Comprehensive email functionality including reading, searching, composing, and organizing messages. You can list emails from different folders, apply filters to find specific messages, send new emails with various options (CC, BCC, importance levels), create drafts for later review, reply to existing messages, move emails between folders, and delete unwanted messages. The email tools support HTML formatting and provide fine-grained control over message properties.

Calendar and Meeting Management

Full calendar integration allowing you to view your schedule, create meetings, update events, and manage invitations. You can list events within specific time ranges, create detailed calendar entries with attendees and online meeting options, respond to meeting invitations (accept, tentatively accept, or decline), and manage your time zone preferences. This makes it effortless to coordinate schedules and maintain your calendar without switching between applications.

Contact Management

Organize and maintain your professional network with contact management tools. You can list all contacts, retrieve specific contact details, create new contact entries with comprehensive information including multiple email addresses and phone numbers, and remove outdated contacts from your address book.

OneDrive File Management

Complete file and folder management capabilities for OneDrive. Browse your file structure, search for documents across your drive, create new folders to organize content, retrieve detailed metadata about files and folders, delete items you no longer need, and generate sharing links with configurable permissions. These tools make it simple to manage your cloud storage and collaborate on files.

SharePoint Integration

Access your organization's SharePoint sites to collaborate on team content. You can list all sites you have access to, retrieve detailed information about specific sites, browse lists and libraries within sites, and view site pages. This integration helps you discover and access shared organizational resources.

OneNote Integration

Work with your digital notebooks through comprehensive OneNote support. Browse your notebook hierarchy, list sections within notebooks, view pages within sections, and retrieve the full HTML content of specific pages. This allows you to reference your notes and capture information without leaving your workflow.

Microsoft To Do Task Management

Manage your tasks and to-do lists programmatically. You can view all your task lists, list tasks within specific lists with filtering options, create new tasks with due dates and reminders, and update existing tasks to track progress and modify details. This integration helps you stay organized and manage your workload effectively.

Microsoft Teams Communication

Interact with your Teams workspace to stay connected with colleagues. List all teams you're a member of, browse channels within teams, read channel messages to catch up on conversations, and send new messages to channels. This enables seamless communication and collaboration with your team.

Tools

User Profile Tools

get_my_profile - Get the current user's profile information. This tool retrieves your own profile details from Microsoft 365, including your display name, email, job title, and other profile attributes.

get_user - Get a specific user's profile information.

  • userIdOrPrincipalName (required, string): User ID or user principal name (email)

search_users - Search for users in the organization.

  • searchTerm (required, string): Search term (name or email)
  • top (optional, number): Number of results to return (default: 25)

Email Tools

list_messages - List email messages from mailbox.

  • folderId (optional, string): Folder ID or well-known name (inbox, sentitems, drafts)
  • top (optional, number): Number of messages to return (default: 25)
  • filter (optional, string): OData filter (e.g., "from/emailAddress/address eq 'user@example.com'")
  • search (optional, string): Search query
  • orderBy (optional, string): Order by field (default: receivedDateTime desc)

get_message - Get a specific email message.

  • messageId (required, string): Message ID

send_email - Send an email message.

  • to (required, array of strings): Recipient email addresses
  • subject (required, string): Email subject
  • body (required, string): Email body (HTML or plain text)
  • cc (optional, array of strings): CC email addresses
  • bcc (optional, array of strings): BCC email addresses
  • bodyType (optional, string): Body content type - "Text" or "HTML" (default: HTML)
  • importance (optional, string): Email importance - "Low", "Normal", or "High"
  • saveToSentItems (optional, boolean): Save to sent items (default: true)

create_draft - Create a draft email message.

  • subject (optional, string): Email subject
  • to (optional, array of strings): Recipient email addresses
  • body (optional, string): Email body
  • bodyType (optional, string): Body content type - "Text" or "HTML" (default: HTML)

reply_to_message - Reply to an email message.

  • messageId (required, string): Message ID to reply to
  • comment (required, string): Reply message body

delete_message - Delete an email message.

  • messageId (required, string): Message ID to delete

move_message - Move a message to a different folder.

  • messageId (required, string): Message ID to move
  • destinationFolderId (required, string): Destination folder ID or well-known name

Calendar Tools

list_calendars - List all calendars. This tool retrieves all calendars associated with your account.

list_events - List calendar events.

  • calendarId (optional, string): Calendar ID (default: primary calendar)
  • startDateTime (optional, string): Start date/time filter (ISO 8601)
  • endDateTime (optional, string): End date/time filter (ISO 8601)
  • top (optional, number): Number of events to return (default: 25)

get_event - Get a specific calendar event.

  • eventId (required, string): Event ID

create_event - Create a new calendar event.

  • subject (required, string): Event subject/title
  • startDateTime (required, string): Start date/time (ISO 8601 format)
  • endDateTime (required, string): End date/time (ISO 8601 format)
  • body (optional, string): Event description
  • location (optional, string): Event location
  • attendees (optional, array of strings): Attendee email addresses
  • timeZone (optional, string): Time zone (e.g., "Pacific Standard Time", default: UTC)
  • isOnlineMeeting (optional, boolean): Create as online meeting
  • reminderMinutesBeforeStart (optional, number): Reminder minutes before start

update_event - Update an existing calendar event.

  • eventId (required, string): Event ID to update
  • subject (optional, string): Event subject/title
  • startDateTime (optional, string): Start date/time (ISO 8601)
  • endDateTime (optional, string): End date/time (ISO 8601)
  • body (optional, string): Event description
  • location (optional, string): Event location

delete_event - Delete a calendar event.

  • eventId (required, string): Event ID to delete

respond_to_event - Accept, tentatively accept, or decline a meeting invitation.

  • eventId (required, string): Event ID
  • response (required, string): Response type - "accept", "tentativelyAccept", or "decline"
  • comment (optional, string): Optional comment with response

Contact Tools

list_contacts - List contacts from the user's contact folders.

  • top (optional, number): Number of contacts to return (default: 50)
  • orderBy (optional, string): Order by field (default: displayName)

get_contact - Get a specific contact.

  • contactId (required, string): Contact ID

create_contact - Create a new contact.

  • givenName (optional, string): First name
  • surname (optional, string): Last name
  • emailAddresses (optional, array of strings): Email addresses
  • businessPhones (optional, array of strings): Business phone numbers
  • mobilePhone (optional, string): Mobile phone
  • jobTitle (optional, string): Job title
  • companyName (optional, string): Company name

delete_contact - Delete a contact.

  • contactId (required, string): Contact ID to delete

OneDrive Tools

list_drive_items - List files and folders in OneDrive.

  • folderId (optional, string): Folder ID (default: root folder)
  • top (optional, number): Number of items to return (default: 50)

get_drive_item - Get metadata for a specific file or folder.

  • itemId (required, string): Item ID

search_drive_items - Search for files and folders in OneDrive.

  • query (required, string): Search query
  • top (optional, number): Number of results (default: 25)

create_folder - Create a new folder in OneDrive.

  • name (required, string): Folder name
  • parentFolderId (optional, string): Parent folder ID (default: root)

delete_drive_item - Delete a file or folder.

  • itemId (required, string): Item ID to delete

share_drive_item - Create a sharing link for a file or folder.

  • itemId (required, string): Item ID to share
  • type (required, string): Link type - "view" or "edit"
  • scope (optional, string): Link scope - "anonymous" or "organization" (default: organization)

SharePoint Tools

list_sharepoint_sites - List SharePoint sites the user has access to.

  • search (optional, string): Search query
  • top (optional, number): Number of sites to return (default: 25)

get_site - Get a specific SharePoint site.

  • siteId (required, string): Site ID

list_site_lists - List all lists in a SharePoint site.

  • siteId (required, string): Site ID

list_site_pages - List pages in a SharePoint site.

  • siteId (required, string): Site ID

OneNote Tools

list_notebooks - List all OneNote notebooks. This tool retrieves all notebooks accessible to your account.

list_sections - List sections in a notebook.

  • notebookId (optional, string): Notebook ID (omit to list all sections)

list_pages - List pages in a section.

  • sectionId (required, string): Section ID

get_page_content - Get the HTML content of a OneNote page.

  • pageId (required, string): Page ID

Microsoft To Do Tools

list_todo_lists - List all Microsoft To Do task lists. This tool retrieves all your task lists.

list_tasks - List tasks in a To Do list.

  • listId (required, string): Task list ID
  • filter (optional, string): OData filter (e.g., "status ne 'completed'")

create_task - Create a new task in Microsoft To Do.

  • listId (required, string): Task list ID
  • title (required, string): Task title
  • body (optional, string): Task description
  • dueDateTime (optional, string): Due date/time (ISO 8601)
  • reminderDateTime (optional, string): Reminder date/time (ISO 8601)
  • importance (optional, string): Task importance - "low", "normal", or "high"

update_task - Update an existing task.

  • listId (required, string): Task list ID
  • taskId (required, string): Task ID
  • title (optional, string): Task title
  • status (optional, string): Task status - "notStarted", "inProgress", or "completed"
  • importance (optional, string): Task importance - "low", "normal", or "high"

Microsoft Teams Tools

list_teams - List all teams the user is a member of. This tool retrieves all Teams you belong to.

list_channels - List channels in a team.

  • teamId (required, string): Team ID

list_channel_messages - List messages in a team channel.

  • teamId (required, string): Team ID
  • channelId (required, string): Channel ID
  • top (optional, number): Number of messages to return (default: 50)

send_channel_message - Send a message to a Teams channel.

  • teamId (required, string): Team ID
  • channelId (required, string): Channel ID
  • content (required, string): Message content (HTML)

Use Cases

This MCP server enables a wide range of productivity scenarios:

  • Email Automation: Automatically triage and respond to emails, filter messages by sender or content, and organize your inbox intelligently.
  • Meeting Coordination: Schedule meetings with multiple attendees, check availability across calendars, and manage meeting responses.
  • Document Discovery: Quickly locate files across OneDrive and SharePoint using natural language search queries.
  • Task Management: Create and track tasks based on email threads, meeting notes, or verbal instructions.
  • Team Communication: Stay updated on Teams channels, send notifications, and coordinate with team members.
  • Contact Organization: Maintain an up-to-date contact database with information pulled from various sources.
  • Note Taking: Access and reference OneNote content during conversations or while working on related tasks.

The server provides a consistent interface across all Microsoft 365 services, making it easy to build complex workflows that span multiple applications within the ecosystem.

Ready to build with Metorial?

Let's take your AI-powered applications to the next level, together.

About Metorial

Metorial provides developers with instant access to 600+ MCP servers for building AI agents that can interact with real-world tools and services. Built on MCP, Metorial simplifies agent tool integration by offering pre-configured connections to popular platforms like Google Drive, Slack, GitHub, Notion, and hundreds of other APIs. Our platform supports all major AI agent frameworks—including LangChain, AutoGen, CrewAI, and LangGraph—enabling developers to add tool calling capabilities to their agents in just a few lines of code. By eliminating the need for custom integration code, Metorial helps AI developers move from prototype to production faster while maintaining security and reliability. Whether you're building autonomous research agents, customer service bots, or workflow automation tools, Metorial's MCP server library provides the integrations you need to connect your agents to the real world.

Star us on GitHub