About OneNoteMCP
OneNoteMCP is an MCP server for accessing OneNote, including personal notebooks. It updates the MCP API, fixes page-content retrieval, and caches authentication credentials on disk.
Key features
- 01Access personal OneNote notebooks
- 02Retrieve page content
- 03Cache authentication credentials on disk
- 04Use the latest MCP API
Use cases
- 01Access personal notebooks through an MCP server
- 02Retrieve OneNote page content
- 03Reuse cached authentication credentials
MCP support
Exposes OneNote access through MCP tools, including `listNotebooks` and page-content retrieval.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEForked from ZubeidHendricks/azure-onenote-mcp-server see that page for the original README.md
About
An MCP for OneNote. Forked and revised extensively, now works with personal notebooks. Updated to the latest MCP API. Supports caching credentials.
Improvements
Functionality
- Fixed
getPageContentfunctionality by implementing ReadableStream - Successfully implemented API calls against personal notebooks
- Updated index and tools to use the latest MCP version
Code Architecture
- Simplified codebase by removing classes that weren't necessary
- Many unnecessary files removed
Authentication & Performance
- Implemented disk caching for authentication credentials
- Updated package dependencies
- Added dotenv support for direct testing capabilities
Azure App Registration
- Go to Azure Portal and navigate to App registrations
- Create a new registration for OneNoteMCP
- Add Microsoft Graph API permissions:
- Notes.Read
- Notes.Read.All
- (optionally add Notes.Write permissions, but there is a risk of losing your notes)
- Create a client secret
- Copy the client ID/secret for configuration
- In the manifest set
signInAudiencetoAzureADandPersonalMicrosoftAccount
MCP Server setup
Put the client ID/secret n your .env file locally as well as in Claude desktop.
The AUTH_CACHE_DIR should be the directory where you want the generated API access token to be stored.
AZURE_CLIENT_ID=\
AZURE_CLIENT_SECRET=
AUTH_CACHE_DIR="C:\\git\\azure-onenote-mcp-server\\.cache"
Run server manually first to generate the credentials that will be cached and used by Claude desktop when it runs the server later on.
npm install
npm build
npm run
You can test the API works by running this command directly once the server starts up and logs in.
{"jsonrpc": "2.0", "id": 3, "method": "tools/call", "params": {"name": "listNotebooks", "arguments": {}}}
Claude MCP config
{
"mcpServers": {
"onenote": {
"command": "node",
"args": ["C:\\git\\azure-onenote-mcp-server\\dist\\index.js"],
"env": {
"AZURE_CLIENT_ID": "...",
"AZURE_CLIENT_SECRET": "...",
"AUTH_CACHE_DIR": "C:\\git\\azure-onenote-mcp-server\\.cache"
}
}
}
}
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.