OneNote MCP Server
An MCP server that enables AI assistants to programmatically browse and interact with OneNote notebooks shared via web links through browser automation.
hwillGIT
README
OneNote MCP Server
An MCP (Model Context Protocol) server for browsing and interacting with OneNote web app using browser automation. This server enables AI assistants and other MCP-compatible clients to programmatically browse and interact with OneNote notebooks that are shared via web links.
Features
- Navigate OneNote's hierarchical structure (notebooks, sections, pages)
- Read page content from OneNote
- Add new content to existing pages
- Create new pages
- Search within OneNote
- Take screenshots of the current view
- Maintain state across the session
Requirements
- Python 3.10 or higher
- browser-use 0.1.40 or higher
- MCP SDK 1.2.0 or higher
- Playwright
- Internet connection
- A shared OneNote notebook URL (must be accessible without authentication)
Installation
# Clone the repository or create the project structure
# Then navigate to the project directory
cd onenote-mcp
# Install the package and dependencies
pip install -e .
# Install Playwright browsers
playwright install
Usage
Standalone Mode
You can run the server directly with:
python -m onenote_mcp
Integration with Claude Desktop or other MCP hosts
- Configure your Claude Desktop to use the OneNote MCP server by editing the configuration file:
{
"mcpServers": {
"onenote": {
"command": "python",
"args": ["-m", "onenote_mcp"]
}
}
}
- Launch Claude Desktop, which will automatically start the OneNote MCP server
- Use the available tools in your chat with Claude:
Can you help me navigate my OneNote notebook at https://example.com/my-shared-notebook?
First, please launch OneNote with this URL and tell me what notebooks are available.
Available Tools
launch_onenote(shared_url)
: Launch the OneNote web app with a shared notebook URLget_all_notebooks()
: List all available notebooksget_all_sections()
: List all sections in the current notebookget_all_pages()
: List all pages in the current sectionnavigate_to_notebook_by_name(notebook_name)
: Go to a specific notebooknavigate_to_section_by_name(section_name)
: Go to a specific sectionnavigate_to_page_by_name(page_name)
: Go to a specific pageget_current_page_content()
: Get the content of the current pageadd_content_to_page(content)
: Add content to the current pagecreate_new_page_with_name(page_name)
: Create a new pagesearch_in_onenote(search_term)
: Search OneNote for specific termstake_screenshot()
: Take a screenshot of the current viewget_onenote_state()
: Get the current state informationclose_onenote()
: Close the OneNote session and clean up resources
How It Works
This MCP server uses browser-use, a browser automation framework, to interact with the OneNote web interface. It creates a bridge between MCP-compatible AI assistants and the OneNote web application, enabling programmatic control of OneNote functions.
Limitations
- Only works with OneNote notebooks that are shared with a public link (no authentication)
- The server may need adjustments if the OneNote web interface changes
- Browser automation can be somewhat fragile and dependent on the UI structure
- Performance may vary based on network conditions and OneNote's responsiveness
Troubleshooting
- If the server fails to connect to OneNote, ensure the shared link is accessible without login
- If selectors fail, the OneNote UI may have changed - check the server code
- For other issues, check the server logs for error details
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Playwright MCP Server
Provides a server utilizing Model Context Protocol to enable human-like browser automation with Playwright, allowing control over browser actions such as navigation, element interaction, and scrolling.
@kazuph/mcp-fetch
Model Context Protocol server for fetching web content and processing images. This allows Claude Desktop (or any MCP client) to fetch web content and handle images appropriately.
DuckDuckGo MCP Server
A Model Context Protocol (MCP) server that provides web search capabilities through DuckDuckGo, with additional features for content fetching and parsing.
YouTube Transcript MCP Server
This server retrieves transcripts for given YouTube video URLs, enabling integration with Goose CLI or Goose Desktop for transcript extraction and processing.
serper-search-scrape-mcp-server
This Serper MCP Server supports search and webpage scraping, and all the most recent parameters introduced by the Serper API, like location.
The Verge News MCP Server
Provides tools to fetch and search news from The Verge's RSS feed, allowing users to get today's news, retrieve random articles from the past week, and search for specific keywords in recent Verge content.
Tavily MCP Server
Provides AI-powered web search capabilities using Tavily's search API, enabling LLMs to perform sophisticated web searches, get direct answers to questions, and search recent news articles.
mcp-pinterest
A Pinterest Model Context Protocol (MCP) server for image search and information retrieval

Crawlab MCP Server