OneNote

Provides an MCP interface to Microsoft OneNote for notebooks, sections, and pages management via AI models.
  • javascript

20

GitHub Stars

javascript

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "zubeidhendricks-azure-onenote-mcp-server": {
      "command": "mcp-server-onenote",
      "args": [],
      "env": {
        "AZURE_CLIENT_ID": "YOUR_CLIENT_ID",
        "AZURE_TENANT_ID": "YOUR_TENANT_ID",
        "AZURE_CLIENT_SECRET": "YOUR_CLIENT_SECRET"
      }
    }
  }
}

You can run the OneNote MCP Server locally to enable AI language models to interact with OneNote notebooks, sections, and pages through a standardized interface. This server handles notebook, section, and page operations so you can automate notes, content retrieval, updates, and searches from your MCP-enabled clients.

How to use

Once the OneNote MCP Server is running, you can perform common operations from your MCP client. You can list all notebooks, create new notebooks, view details for a notebook, and delete notebooks. Within a notebook, you can list sections, create new sections, read section details, and delete sections. For content in OneNote pages, you can list pages in a section, create new pages with HTML content, read page content, update it, delete pages, and search across notebooks. These capabilities let you build workflows that generate, organize, and retrieve notes directly from your AI-enabled apps.

How to install

# Prerequisites: ensure you have Node.js and npm installed

# 1) Install the MCP OneNote server globally (recommended)
npm install -g mcp-server-onenote

# 2) Run the server
mcp-server-onenote

# Alternative: run via npx without a global install
npx mcp-server-onenote

# Optional: install via Smithery for CLI-based setup (Claude client example)
# This will install and configure for the Claude client
npx -y @smithery/cli install @modelcontextprotocol/server-onenote --client claude

# Optional: install from GitHub (Azure OneNote MCP server variant)
npm install -g github:ZubeidHendricks/azure-onenote-mcp-server

Configuration and security

Configure Azure credentials to enable access to OneNote through Microsoft Graph. You will register an Azure application and provide credentials to the MCP server.

Required environment variables

  • AZURE_TENANT_ID: Your Azure tenant ID
  • AZURE_CLIENT_ID: Your Azure application (client) ID
  • AZURE_CLIENT_SECRET: Your Azure client secret

Azure app registration steps you will follow in your Azure portal:

  • Go to App registrations and create a new registration
  • Add Microsoft Graph API permissions: Notes.ReadWrite.All and Notes.Read.All
  • Create a client secret and note the tenant ID, client ID, and client secret for configuration

Client configuration example for an MCP client (e.g., Claude Desktop) will include the server entry with the necessary environment variables when you launch the server.

Development and running locally

# Install dependencies for the local project (if you clone a repo instead of using the package)
npm install

# Run tests
npm test

# Build the project
npm run build

# Lint the code
npm run lint

# Start the server locally
mcp-server-onenote

Notes and troubleshooting

If you encounter authentication or permission issues, verify that your Azure app has the correct Microsoft Graph API permissions and that your client secret is valid. Ensure the environment variables are correctly exported in the shell or configured in your MCP client setup before starting the server.

Available tools

Notebook management

List notebooks, create notebooks, get notebook details, and delete notebooks.

Section management

List sections in a notebook, create sections, get section details, and delete sections.

Page management

List pages in a section, create pages with HTML content, read and update page content, delete pages, and search pages across notebooks.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational