Connect your AI Agents to OneNote in minutes

Available tools
list_notebooks
List the user's OneNote notebooks. Supports pagination with top/skip, sorting with orderby, and OData filtering. Expand 'sections' or 'sectionGroups' to include children.
get_notebook
Get a specific OneNote notebook by ID. Use list_notebooks to find valid notebook IDs. Expand 'sections' or 'sectionGroups' to include children.
create_notebook
Create a new OneNote notebook with the given display name. The name must be unique across the user's notebooks. Max 128 characters.
copy_notebook
Copy a OneNote notebook. This is an async operation - returns an operation URL to poll for status. Use list_notebooks to find valid notebook IDs.
get_recent_notebooks
Get a list of recently accessed OneNote notebooks, including notebooks from other users shared with the current user.
get_default_notebook
Get the user's default OneNote notebook. Returns the notebook marked as default, or the first notebook if none is marked as default.
list_pages
List OneNote pages in a specific section. Always requires section_id for performance (global page listing can fail). Use list_sections to find valid section IDs.
get_page
Get OneNote page metadata by ID (title, dates, links). Does NOT include content - use get_page_content for HTML body. Use list_pages to find valid page IDs.
get_page_content
Get the HTML content of a OneNote page. Set include_ids=true to get data-id attributes needed for PATCH updates. Use list_pages to find valid page IDs.
create_page
Create a new OneNote page in a section. Provide HTML content (e.g. 'Hello'). The title becomes the page heading. Use list_sections to find valid section IDs.
update_page
Update a OneNote page using PATCH operations. Each operation needs: target ('body' or element ID), action ('append','replace','prepend','insert'), content (HTML). Use get_page_content with include_ids=true to find element IDs.
delete_page
Delete a OneNote page permanently. This action cannot be undone. Use list_pages to find valid page IDs.

How to set up Merge Agent Handler
In an mcp.json file, add the configuration below, and restart Cursor.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "url": "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
5 "headers": {
6 "Authorization": "Bearer yMt*****"
7 }
8 }
9 }
10}
11Open your Claude Desktop configuration file and add the server configuration below. You'll also need to restart the application for the changes to take effect.
Make sure Claude is using the Node v20+.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "command": "npx",
5 "args": [
6 "-y",
7 "mcp-remote@latest",
8 "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
9 "--header",
10 "Authorization: Bearer ${AUTH_TOKEN}"
11 ],
12 "env": {
13 "AUTH_TOKEN": "yMt*****"
14 }
15 }
16 }
17}Open your Windsurf MCP configuration file and add the server configuration below.
Click on the refresh button in the top right of the Manage MCP server page or in the top right of the chat box in the box icon.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "command": "npx",
5 "args": [
6 "-y",
7 "mcp-remote@latest",
8 "https://ah-api.merge.dev/api/v1/tool-packs/<tool-pack-id>/registered-users/<registered-user-id>/mcp",
9 "--header",
10 "Authorization: Bearer ${AUTH_TOKEN}"
11 ],
12 "env": {
13 "AUTH_TOKEN": "<ah-production-access-key>"
14 }
15 }
16 }
17 }In Command Palette (Cmd+Shift+P on macOS, Ctrl+Shift+P on Windows), run "MCP: Open User Configuration".
You can then add the configuration below and press "start" right under servers. Enter the auth token when prompted.
Learn more in the official documentation ↗
1{
2 "inputs": [
3 {
4 "type": "promptString",
5 "id": "agent-handler-auth",
6 "description": "Agent Handler AUTH_TOKEN", // "yMt*****" when prompt
7 "password": true
8 }
9 ],
10 "servers": {
11 "agent-handler": {
12 "type": "stdio",
13 "command": "npx",
14 "args": [
15 "-y",
16 "mcp-remote@latest",
17 "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
18 "--header",
19 "Authorization: Bearer ${input:agent-handler-auth}"
20 ]
21 }
22 }
23}FAQs on using Merge's OneNote MCP server
FAQs on using Merge's OneNote MCP server
Explore other MCP servers built and managed by Merge





























Ready to try it out?
Whether you're an engineer experimenting with agents or a product manager looking to add tools, you can get started for free now

