onenote-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@onenote-mcpsearch my OneNote notebooks for "launch plan" and show me where it appears"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
onenote-mcp
A local MCP server that lets Claude read your OneNote notebooks, including the pictures you pasted into them.
It talks to the OneNote desktop application through its COM interface. There is no Azure app registration and no tenant consent. Nothing leaves the machine.
Why this exists
The Microsoft 365 connector does not support OneNote. It refuses with
mime type 'application/msonenote' is not allowed. Every Graph API route needs
an Entra app registration with Notes.ReadWrite.All, which on a corporate
tenant means an IT request. The desktop COM API needs neither.
Related MCP server: notebooklm-claude-integration
What it can do
Search every open notebook, including the text inside pasted screenshots, because OneNote's own index covers OCR.
Read a page as text, with a list of the images on it.
Return those images as pictures, downscaled to fit sensibly in a transcript.
It is read-only. It cannot change, create or delete anything.
Requirements
Windows, with the OneNote desktop application installed. The OneNote app from the Microsoft Store is a different program and has no COM interface.
Python 3.11 or later. Bitness does not matter.
Install
python -m venv .venv
.venv\Scripts\python.exe -m pip install -e .Register
.mcp.json in this folder registers the server for this project. To use it
everywhere:
claude mcp add onenote -s user -- C:\path\to\onenote_COM_mcp\.venv\Scripts\python.exe -m onenote_mcp.serverThe same command works for Claude Desktop and the VS Code extension.
Tools
Tool | What it gives you |
| Open notebooks and their sections, and whether each notebook is personal or on a shared team site |
| The pages under a notebook, section group or section |
| Pages matching a query, across everything or under one scope |
| One page as text, plus a manifest of its images. No pixels |
| The pictures, by index, downscaled to |
get_page and get_page_images are deliberately separate. A page can hold a
dozen full-size screenshots, and reading its text should not drag all of them
into the conversation.
Ask get_page for include_ocr when you want the text OneNote recognised
inside an image. It is often enough to answer a question without fetching the
picture at all.
The first call is slow
The server does not contact OneNote until the first tool call. That call starts OneNote if it is closed, which can take a while. Later calls are fast: a ten-page section reads in about two seconds.
Development
.venv\Scripts\python.exe -m pytest # no OneNote needed
.venv\Scripts\python.exe tools\smoke.py # live check, needs OneNoteRead CLAUDE.md before changing com.py. The COM interface has two traps that
cost a day to find, and one of them kills the OneNote process.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseAqualityDmaintenanceEnables Claude to read and write to local Microsoft OneNote notebooks by parsing backup files and utilizing the OneNote COM API. It allows for searching notes, creating pages, and appending content without requiring Azure registration or API keys.103
- AlicenseNot gradedqualityCmaintenanceEnables querying Google NotebookLM notebooks directly from Claude Desktop (MCP) and Claude Code (CLI), providing citation-backed answers from Gemini.MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to read, search, write, and update Microsoft OneNote pages through the Model Context Protocol.25MIT
- FlicenseAqualityFmaintenanceEnables AI agents to read, create, and analyze Microsoft OneNote notebooks, sections, and pages, including automatic image text extraction via Claude Vision.71
Related MCP Connectors
Connect Claude to Fathom meeting recordings, transcripts, and summaries
Read and write your Fresh Jots notes from Claude, Cursor, and any MCP client.
Search, read, and write your Apple Notes from ChatGPT/Claude via a local Mac agent + MCP relay.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ChristianCruger/onenote-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server