OneNote MCP
An MCP server for Microsoft OneNote that supports personal notebooks and caches credentials for authentication.
Forked 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"
}
}
}
}
Related Servers
icd10-cpt-crosswalk
MCP server for converting ICD-10 diagnosis codes to CPT procedure codes for medical billing
hyperliquid-mcp
Control your Hyperliquid perps from Claude (or any MCP client) using natural language.
cookiy
AI-powered user research MCP server for creating studies, generating discussion guides, running AI interviews, recruiting participants, and sharing insight reports.
Browser MCP
An MCP server that allows AI applications to control your browser.
Jira Thing
An example MCP server for interacting with Jira, deployable on Cloudflare Workers.
GSuite
Interact with Google products, including Gmail and Calendar.
Google Docs & Drive
Interact with Google Docs and Google Drive for document creation, editing, and file management, with support for shared drives.
Spreadsheet MCP Server
An MCP server for Google Spreadsheet integration, connecting via a Google Apps Script Web App.
Clanki - Claude's Anki Integration
Enables AI assistants to interact with Anki flashcard decks via the AnkiConnect plugin.
MCP Server for Bring! Shopping
Interact with the Bring! shopping list API via a local MCP server.