Overview
What is OneNoteMCP?
OneNoteMCP is a Model Context Protocol server that connects AI assistants like Claude Desktop to Microsoft OneNote. It enables reading and listing OneNote notebooks and pages via the Microsoft Graph API, including personal (Microsoft account) notebooks.
How to use OneNoteMCP?
Configure your Azure app registration and create a .env file with AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, and AUTH_CACHE_DIR. Run the server manually first to generate cached credentials, then add it to your Claude Desktop MCP configuration as a node command pointing to the compiled dist/index.js with the same environment variables.
Key features of OneNoteMCP
- Fixed
getPageContentusing ReadableStream for reliable page retrieval - Successfully calls Microsoft Graph API against personal notebooks
- Uses disk caching for authentication credentials to reduce re-authentication
- Updated to the latest MCP API and simplified codebase
- Supports
Notes.Read,Notes.Read.All, and optional write permissions - Provides tools such as
listNotebooksfor interacting with OneNote
Use cases of OneNoteMCP
- Let an AI assistant browse your OneNote notebooks and read page content
- Automate note retrieval and summarization from personal notebooks
- Query notes across notebooks without opening the OneNote app
- Integrate OneNote data into AI-powered workflows and automation
FAQ from OneNoteMCP
What does OneNoteMCP do that alternatives don’t?
OneNoteMCP is specifically built for the MCP protocol, works with personal Microsoft accounts (not just work/school), and caches authentication tokens locally to reduce log‑in prompts.
What runtime or dependencies are required?
The server runs on Node.js and requires an Azure App Registration with Microsoft Graph API permissions (at least Notes.Read) and a client secret.
Where does my OneNote data live?
All notebook data stays in Microsoft OneNote (cloud via Graph API). The server only requests and caches OAuth tokens and fetched content temporarily for the AI assistant.
Does it support write operations?
You can optionally add write permissions (e.g., Notes.ReadWrite) in Azure, but the README warns that there is a risk of losing your notes.
How are credentials and transport handled?
Authentication uses OAuth 2.0 with a client secret; tokens are cached on disk. The server communicates via standard input/output (stdio) as an MCP tool server.