Skip to main content
Glama
umangnine

OneNote MCP Server

by umangnine

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ONENOTE_BACKUP_DIRNoPath to the OneNote local backup directory used for offline reading. Defaults to %LOCALAPPDATA%\Microsoft\OneNote\16.0\Backup.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_notebooksA

List all locally available OneNote notebooks.

Shows notebook names and how many sections each one has.

list_sectionsC

List all sections in a specific notebook.

Args:
    notebook_name: The name of the notebook (from list_notebooks).
read_sectionA

Read all text content from a specific section of a notebook.

Args:
    notebook_name: The name of the notebook.
    section_name: The name of the section (from list_sections).
search_notesA

Search for text across ALL notebooks and sections.

Searches through the text content of every section for the given query.
Returns matching sections with a snippet of the matched text.

Args:
    query: The text to search for (case-insensitive).
list_all_sectionsA

List ALL sections across ALL notebooks.

Useful for getting a complete overview of everything in your OneNote.

get_notebook_summaryC

Get a summary of a notebook: its sections and a preview of each section's content.

Args:
    notebook_name: The name of the notebook.
list_live_notebooksA

List notebooks from the running OneNote app (live, not backup files).

This uses the OneNote COM API and shows the notebooks currently open in the OneNote desktop app, including their sections. Use this to find where to create new pages.

create_pageA

Create a new page in a OneNote notebook section.

The content is written as HTML with full rich-text support.
Supported tags: h1-h6 (headings with auto font sizing), p, ul/ol/li (lists
with bullets/numbers), b/strong (bold), i/em (italic), u (underline),
span (with style), a (links), hr (horizontal rule), br, table/tr/td/th.

Headings get automatic font sizes: h1=24pt, h2=18pt, h3=14pt, h4=13pt,
h5=12pt, h6=11pt. All body text is 11pt minimum.

Requires the OneNote desktop app to be installed.

Args:
    notebook_name: Name of the notebook (from list_live_notebooks).
    section_name: Name of the section within the notebook.
    title: Title for the new page.
    content: The page content as HTML.
list_live_pagesB

List pages in a section from the running OneNote app.

Use this to find page IDs for appending content to existing pages.

Args:
    notebook_name: Name of the notebook.
    section_name: Name of the section.
append_to_pageA

Append content to an existing OneNote page.

The content is added as a new outline block at the bottom of the page.
Supports full rich HTML formatting (h1-h6, p, ul/ol/li, b, i, u, span, hr, br).

Args:
    page_id: The page ID (from list_live_pages).
    content: The content to append as HTML.
update_page_contentB

Replace the body content of an existing OneNote page with new HTML formatting.

Args:
    page_id: The persistent OneNote page ID (from list_live_pages).
    content: The new page content as HTML.
read_live_pageA

Read full text, tables, and hierarchical sub-bullets from a live OneNote page as Markdown or raw XML.

Args:
    page_id: The persistent OneNote page ID (e.g. from list_live_pages).
    notebook_name: Optional notebook name if page_id is not provided.
    section_name: Optional section name if page_id is not provided.
    page_title: Optional substring of the page title to search for if page_id is not provided.
    raw_xml: If True, returns the raw OneNote page XML instead of Markdown.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.5/5.0

Scored across 12 tools

Disambiguation4/5

Most tools target distinct objects/actions, but there is overlap between local vs. live notebook/section/page listings, such as list_notebooks vs. list_live_notebooks and list_sections vs. list_all_sections. Descriptions clarify the live/local distinction, so an agent can usually choose correctly, but the boundaries are not perfectly crisp.

Naming Consistency4/5

The set mostly follows a consistent snake_case verb_noun pattern (list_notebooks, read_section, create_page, update_page_content). Minor inconsistency comes from inserting 'live' in some names (read_live_page, list_live_pages, list_live_notebooks) while other local counterparts omit it.

Tool Count5/5

Twelve tools is a well-scoped size for a OneNote server covering notebooks, sections, pages, reading, searching, and writing. Each tool has a plausible role, and the set is not bloated or too thin.

Completeness3/5

Core read/search/create/update page workflows are covered, but lifecycle operations are notably incomplete: there is no delete page/section/notebook, no rename or move/copy page, and no create notebook/section. These gaps will cause failures for common management requests.

Maintenance

ActivityMaintained
ResponsivenessNo issues