OneNoteMcpServer 0.0.5

{
  "servers": {
    "OneNoteMcpServer": {
      "type": "stdio",
      "command": "dnx",
      "args": ["OneNoteMcpServer@0.0.5", "--yes"]
    }
  }
}
                    
This package contains an MCP Server. The server can be used in VS Code by copying the generated JSON to your VS Code workspace's .vscode/mcp.json settings file.
dotnet tool install --global OneNoteMcpServer --version 0.0.5
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local OneNoteMcpServer --version 0.0.5
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=OneNoteMcpServer&version=0.0.5
                    
nuke :add-package OneNoteMcpServer --version 0.0.5
                    

Nokia.MCP.Servers.OneNote.Local

Name

Nokia.MCP.Servers.OneNote.Local

Purpose

This MCP server exposes Microsoft OneNote capabilities to MCP clients over stdio. It authenticates to Microsoft Graph using Entra ID and provides tools for reading notebook, section, and page information, as well as creating and updating OneNote content when write access is enabled.

The server is designed for local MCP usage and is built around the shared OneNote tool set in the Nokia.MCP.Servers.Tools.OneNote namespace.

Configurations

The following environment variables are used by the server:

  • ONENOTE_MCP_ALLOW_WRITES – set to 1 to enable write-capable tools such as createPage, appendToPage, and deletePage.
  • ONENOTE_MCP_AUTH_MODE – set to device_code to prefer device code authentication in SSH or headless environments.
  • ONENOTE_MCP_PERSIST_TOKEN – set to 1, true, yes, or on to persist the MSAL token cache between server runs. When unset or set to 0, false, no, or off, the server clears any previously persisted cache at startup.
  • ONENOTE_MCP_CLIENT_ID – required Microsoft Entra public client ID used for authentication.
  • ONENOTE_MCP_TENANT_ID – required Microsoft Entra tenant ID used for authentication.
  • ONENOTE_MCP_SCOPES – optional override for the Graph scopes, space-delimited.

Tools

The server exposes the following tools from the OneNote tool namespace:

Authentication

  • signIn – starts or confirms interactive sign-in for the current server session.
  • signOut – clears the current in-memory authentication session.

Notebook and page discovery

  • listNotebooks – lists the signed-in user’s notebooks.
  • listSections – lists sections, optionally scoped to a notebook.
  • listPagesInSection – lists pages in a given OneNote section.
  • searchPages – searches pages by title within the user’s notebooks.
  • getPageContentText – extracts plain text from a OneNote page’s HTML content.

Write operations

These tools are only registered when ONENOTE_MCP_ALLOW_WRITES=1.

  • createPage – creates a new page in a OneNote section.
  • appendToPage – appends HTML content to the end of a page.
  • deletePage – deletes a OneNote page by id.

Notes

  • The server listens over stdio and writes logs to stderr to keep stdout reserved for MCP JSON-RPC traffic.
  • Authentication is performed against Microsoft Graph using the OneNote permissions required for notebook and page access.
Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
0.0.5 115 9/9/2026
0.0.4 116 9/9/2026