How to integrate Microsoft OneNote MCP with Codex

Connect Codex to Microsoft OneNote MCP. Create meeting notes in work notebook, find pages mentioning quarterly planning, and more using natural language, with authentication handled for you.

Microsoft OneNote logoMicrosoft OneNote
Oauth2

Microsoft OneNote is a digital notebook for capturing notes, drawings, research, and web clippings. It keeps notebooks, sections, and pages organized across devices so ideas stay easy to find.

83 Tools

Introduction

Codex is one of the most popular coding harnesses out there. And MCP makes the experience even better. With Microsoft OneNote MCP integration, you can draft, triage, summarise emails, and much more, all without leaving the terminal or the app, whichever you prefer.

Also integrate Microsoft OneNote with

Why use Composio?

Apart from a managed and hosted MCP server, you will get:

  • CodeAct: A dedicated workbench that allows GPT to write its code to handle complex tool chaining. Reduces to-and-fro with LLMs for frequent tool calling.
  • Large tool responses: Handle them to minimise context rot.
  • Dynamic just-in-time access to 20,000 tools across 1500+ other Apps for cross-app workflows. It loads the tools you need, so GPTs aren't overwhelmed by tools you don't need.

How to install Microsoft OneNote MCP in Codex

Run the setup command

Run this command in your terminal to add the Composio MCP server to Codex.

Terminal

It will initiate the authentication in a browser window, authorize Codex to access your Composio account.

Composio authentication page

(Optional) Authenticate with OAuth

To authenticate manually, run the login command to open a browser window and authorize Codex to access your Composio account.

bash
codex mcp login composio

Verify the connection

Run codex mcp list to confirm Composio appears as a registered MCP server.

bash
codex mcp list

Codex App

Codex App follows the same approach as VS Code.

  1. Click ⚙️ on the bottom left → MCP Servers → + Add servers → Streamable HTTP:
  2. Fill the header and Key fields with { "x-consumer-api-key" = "ck_*******" }.
  3. The Key is the Composio API key, that you can find on dashboard.composio.dev
  4. Click on Authenticate and authorize Codex to your Composio account and you're all set.
Codex App MCP setup
  1. Restart and verify if it's there in .codex/config.toml
bash
[mcp_servers.composio]
url = "https://connect.composio.dev/mcp"
http_headers = { "x-consumer-api-key" = "ck_*******" }

What is the Microsoft OneNote MCP server, and what's possible with it?

The Microsoft OneNote MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Microsoft OneNote account. It provides structured and secure access to your notebooks, sections, and pages, so your agent can create pages, find notebooks, retrieve page details, update sections, and delete pages on your behalf.

  • Personal notebook organization: Have your agent list your recent notebooks, browse notebook sections, and find pages within a chosen section.
  • Page creation and retrieval: Direct your agent to create a new page in a specific section or retrieve the details of an existing page.
  • Microsoft 365 group notes: Let the agent list group notebooks, sections, and pages, create group pages, or remove pages that are no longer needed.
  • SharePoint notebook management: Instruct your agent to find SharePoint sites, list their notebooks and section groups, retrieve specific sections or pages, and update sections.
  • Notebook copying and cleanup: Have your agent copy group notebooks into a destination document library, copy notebooks within SharePoint sites, or delete selected pages.

Conclusion

You've successfully integrated Microsoft OneNote with Codex using Composio's MCP server. Now you can interact with Microsoft OneNote directly from your terminal, VS Code, or the Codex App using natural language commands.

Key benefits of this setup:

  • Seamless integration across CLI, VS Code, and standalone app
  • Natural language commands for Microsoft OneNote operations
  • Managed authentication through Composio
  • Access to 20,000+ tools across 1500+ apps for cross-app workflows
  • CodeAct workbench for complex tool chaining

Next steps:

  • Try asking Codex to perform various Microsoft OneNote operations
  • Explore cross-app workflows by connecting more toolkits
  • Build automation scripts that leverage Codex's AI capabilities
TOOLS

Supported Tools

Every Microsoft OneNote action and event your agent gets out of the box.

Copy notebook in group

Copies a OneNote notebook to the Notebooks folder in the destination Documents library.

Copy notebook in site

Copies a OneNote notebook within a SharePoint site.

Copy section to notebook (site context)

Copy a site-hosted OneNote section to a notebook natively.

Copy section to notebook (user)

Copies a OneNote section to a specific notebook for a specified user.

Copy group section to section group

Copies a OneNote section from a Microsoft 365 group's notebook into another section group.

Copy section to section group (user)

Copies a OneNote section to a specific section group for a specified user.

Copy site page to section

Copy a site-hosted OneNote page to a section natively.

Copy user notebook

Start an asynchronous copy of a user OneNote notebook.

Copy user page to section

Copy a OneNote page from a user's notebook to a specified section.

Count user section group sections

Gets the provider-reported count of OneNote sections directly within a user's section group.

Count site section group sections

Gets the provider-reported count of sections directly within a SharePoint site's OneNote section group.

Create group nested section group

Create a section group inside another group OneNote section group.

Create group notebook

Creates a new OneNote notebook within a Microsoft 365 group.

Create group OneNote page

Creates a new OneNote page in the default section of the default notebook for a Microsoft 365 group.

Create section in section group

Creates a new OneNote section within a specified section group of a Microsoft 365 group.

Create user notebook

Creates a new OneNote notebook for the signed-in user.

Create section in user's section group

Creates a new OneNote section within a specified section group of a notebook for the signed-in user.

Create OneNote page in section

Creates a new OneNote page in a specific section for the signed-in user.

Create section group in group notebook

Creates a new section group within a OneNote notebook that belongs to a Microsoft 365 group.

Create site nested section group

Create a section group inside another site OneNote section group.

Create site notebook

Create a OneNote notebook in a SharePoint site.

Create section in site notebook

Creates a new OneNote section within a specified notebook in a SharePoint site.

Create user nested section group

Create a section group inside another user OneNote section group.

Create section in user notebook

Creates a new OneNote section within a specified notebook for a specific user.

Create user OneNote page

Creates a new OneNote page in the default section of the default notebook for a specific user.

Create section in user section group

Creates a new OneNote section within a specified section group for a specific user.

Create user section page

Creates a new OneNote page in a specific section of a user's notebook.

Delete group section page

Deletes a OneNote page within a Microsoft 365 group's OneNote workspace.

Delete OneNote page from section

Delete a specific OneNote page from a section within a notebook in a group.

Delete OneNote page from site

Deletes a OneNote page from a SharePoint site.

Delete user OneNote page from section

Deletes a OneNote page from a section within a section group in a user's notebook.

Delete OneNote page for user

Deletes a OneNote page from a user's OneNote workspace.

Get a OneNote section from a group

Retrieves a specific OneNote section from a Microsoft 365 group.

Get OneNote resource content by ID

Retrieves the binary content of a specific OneNote resource using its ID.

Get OneNote page content from section

Retrieves the HTML content of a specific OneNote page from a section for the signed-in user.

Get notebook from web URL

Retrieves a OneNote notebook by using its web URL path.

Get notebook section group

Retrieves a specific section group from a OneNote notebook within a Microsoft 365 group.

Get group OneNote operation status

Retrieves the status of a long-running OneNote operation for a group.

Get a OneNote page from a group

Retrieves OneNote page metadata directly by page ID in a Microsoft 365 group.

Get site OneNote operation status

Retrieves the status of a long-running OneNote operation for a SharePoint site.

Get OneNote page content for user

Gets the HTML content of a specific OneNote page for a user.

Get a OneNote page

Retrieves metadata and properties of a specific OneNote page from the authenticated user's notebooks.

Get recent notebooks

Retrieves a list of recently accessed OneNote notebooks for the signed-in user.

Get a OneNote section by ID

Retrieves a specific OneNote section by its ID from the current user's OneNote.

Get OneNote page from site

Retrieves a specific OneNote page from a SharePoint site.

Get site notebook page preview

Retrieves a text preview of a specific OneNote page from a SharePoint site or the signed-in user's OneNote.

Get a OneNote section from a site

Retrieves a specific OneNote section from a SharePoint site.

Get OneNote page from site (compatibility alias)

Compatibility alias for retrieving OneNote page metadata directly by page ID in a SharePoint site.

Get user notebook

Retrieves the properties and relationships of a OneNote notebook by ID for a specific user.

Get user OneNote operation

Poll the status of a user's asynchronous OneNote operation.

Get a OneNote page from user

Retrieves a specific OneNote page from a user's OneNote notebooks.

Get parent section group from user section

Retrieves the parent section group of a OneNote section within a user's notebook.

List group notebooks

List OneNote notebooks owned by a Microsoft 365 group or Teams team.

List notebook section groups

Retrieves a list of section groups from the specified notebook within a Microsoft 365 group.

List pages from a group notebook section

Compatibility alias for listing a page of OneNote pages from a specific section within a notebook in a Microsoft 365 group.

List group root section groups

List section groups at the root of a Microsoft 365 group's OneNote hierarchy.

List group root sections

List sections at the root of a Microsoft 365 group's OneNote hierarchy.

List section group sections

Lists a paginated collection of OneNote sections from a section group within a Microsoft 365 group's OneNote.

List joined teams

List Microsoft Teams that a user is a direct member of.

List pages in section

Retrieves a list of OneNote pages from a specific section for the current user.

List group OneNote pages

Lists a paginated collection of OneNote pages from a Microsoft 365 group.

List group section group section groups

Lists a paginated collection of nested section groups from a specified parent section group within a Microsoft 365 group's OneNote notebook.

List pages from a group section

Canonical action for listing a paginated collection of OneNote pages from a specific section in a Microsoft 365 group.

List site notebooks

List OneNote notebooks stored in a SharePoint site.

List site notebook section groups

Retrieves a list of section groups from the specified notebook within a SharePoint site.

Get OneNote page content from SharePoint site

Retrieves the HTML content of a specific OneNote page within a SharePoint site.

List site root section groups

List section groups at the root of a SharePoint site's OneNote hierarchy.

List site sections

Retrieves a list of OneNote sections from a SharePoint site.

List user notebooks

Lists a paginated collection of OneNote notebooks accessible by a specific user.

List user notebook sections

Lists a paginated collection of OneNote sections from a specified user notebook.

List user pages

List OneNote pages owned by a user, defaulting to the signed-in user.

List user root section groups

List root OneNote section groups for a user, defaulting to the signed-in user.

List user sections

List root OneNote sections for a user, defaulting to the signed-in user.

Resolve SharePoint site by URL

Resolve a SharePoint site URL or hostname and path to a Microsoft Graph site resource.

Search SharePoint sites

Search SharePoint sites available through Microsoft Graph.

Update my OneNote page content

Update the content of a OneNote page for the signed-in user.

Update my OneNote section

Updates the navigation property sections in me.

Update OneNote page content

Update the content of a OneNote page within a Microsoft 365 group using HTML patch commands.

Update section in site notebook

Canonical action for updating a OneNote section in a SharePoint site.

Update site OneNote page content

Update the content of a OneNote page within a SharePoint site.

Update site section group section

Compatibility alias for updating a OneNote section in a SharePoint site.

Update section in user notebook

Updates a OneNote section within a user's notebook.

Validate OneNote credentials

Validates OneNote API credentials by attempting to access the user's notebooks.

FRAMEWORKS

How to build Microsoft OneNote MCP Agent with another framework

FAQ

Frequently asked questions

With a standalone Microsoft OneNote MCP server, the agents and LLMs can only access a fixed set of Microsoft OneNote tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Microsoft OneNote and many other apps based on the task at hand, all through a single MCP endpoint.

Yes, you can. Codex fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Microsoft OneNote tools.

Yes, absolutely. You can configure which Microsoft OneNote scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Microsoft OneNote data and credentials are handled as safely as possible.

Start with Microsoft OneNote.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Microsoft OneNote tool your agent needs.Free to start.

Start building