# How to connect OneNote to OpenClaw (paste one key, 62 tools)

> Connect OneNote to OpenClaw with ClawLink: paste your OneNote key once and 62 tools work from chat. No MCP server to run, nothing stored on your machine.

Web version: https://claw-link.dev/openclaw/onenote

The usual route to OneNote access for OpenClaw is an MCP server you configure and keep running, plus your own OAuth app or API keys. ClawLink gives OpenClaw a more practical OneNote setup: install one ClawHub skill, connect OneNote in the browser, and OpenClaw can call real OneNote actions from any chat surface with no auth, token refresh, or tool wiring to build yourself.

## Setup

It takes three steps to connect OpenClaw to OneNote.

1. **Install ClawLink** — add the plugin to OpenClaw once.
2. **Connect OneNote** — one-click OAuth in the ClawLink dashboard.
3. **Use it from chat** — ask OpenClaw in plain English.

**Paste this into OpenClaw to set up ClawLink:**

> I want to connect my apps to OpenClaw through ClawLink.
> Please install the ClawLink plugin from ClawHub and enable it: `openclaw plugins install clawhub:clawlink-plugin`
> When it is installed, tell me and stop. After I reply, give me the ClawLink pairing link. Setup notes, if you need them: https://claw-link.dev/skill.md

**Alternative for any agent (no plugin needed):** if the OpenClaw plugin route isn't available or doesn't work, any AI agent with shell access can use the ClawLink CLI instead:

```bash
npx -y @useclawlink/cli login          # sign in via browser — no API key to paste
npx -y @useclawlink/cli connect onenote  # connect OneNote (browser OAuth)
npx -y @useclawlink/cli actions onenote  # list available actions
npx -y @useclawlink/cli run onenote <action> --input '<json>'  # execute (add --confirm for writes)
```

### Install by command

The setup prompt above does all of this in one paste. By hand, it is one install command plus a browser approval:

```bash
openclaw plugins install clawhub:clawlink-plugin
```

Then ask OpenClaw to set up ClawLink. It starts browser pairing and prints an approval link — open it, approve the device, return to the chat, and say `done`. Finally, connect OneNote in the [ClawLink dashboard](https://claw-link.dev/dashboard) — enter your OneNote account details once.

Verify the connection by asking OpenClaw:

> Use OneNote to copy onenote group notebook and walk me through the result in plain English.

### Using a different agent?

The OpenClaw plugin is one client of ClawLink's MCP server. Claude Code, Cursor, Codex, or any agent that can run a shell command pairs with the same ClawLink account through the CLI:

```bash
npx -y @useclawlink/cli login
```

`login` opens the same browser approval and stores a credential locally. Once OneNote is connected in the dashboard, that agent calls the same 62 OneNote tools over MCP. Full setup for MCP clients and shell agents: [connect apps to any AI agent](https://claw-link.dev/learn/connect-apps-to-any-ai-agent).

## OneNote MCP for OpenClaw

Looking for a OneNote MCP server for OpenClaw? ClawLink connects OneNote to OpenClaw and exposes 62 OneNote tools your agent can call over [MCP](https://claw-link.dev/learn/what-is-an-mcp-server), with [hosted auth](https://claw-link.dev/learn/oauth-for-ai-agents) and nothing to run or maintain yourself. Using Hermes instead? The [Hermes OneNote integration](https://claw-link.dev/hermes/onenote) works the same way.

## What the OpenClaw OneNote integration can do

62 OneNote tools are ready for OpenClaw once the account is connected. The 30 below are the ones people reach for most; your agent can call all 62.

### 30 of 62 OneNote tools for OpenClaw

| Tool | What it does |
|---|---|
| **Copy onenote group notebook** `onenote_copy_onenote_group_notebook` | Copies a OneNote notebook to the Notebooks folder in the destination Documents library. The notebook is copied asynchronously. |
| **Copy onenote site notebook** `onenote_copy_onenote_site_notebook` | Copies a OneNote notebook to the destination site in the SharePoint documents library. |
| **Copy section to notebook for user2** `onenote_copy_section_to_notebook_for_user2` | Copies a OneNote section to a specific notebook for a specified user. Use this action when you need to duplicate an existing OneNote section into a different notebook under a specific user's account. |
| **Copy section to notebook2** `onenote_copy_section_to_notebook2` | Copies a OneNote section to a specific notebook within a SharePoint site. |
| **Copy section to section group** `onenote_copy_section_to_section_group` | Copies a OneNote section from a Microsoft 365 group's notebook into another section group. |
| **Copy section to section group for user** `onenote_copy_section_to_section_group_for_user` | Copies a OneNote section to a specific section group for a specified user. |
| **Copy site page to section3** `onenote_copy_site_page_to_section3` | Copies a OneNote page from a SharePoint site to a destination section. |
| **Copy user page to section** `onenote_copy_user_page_to_section` | Copy a OneNote page from a user's notebook to a specified section. Use this action when you need to duplicate a OneNote page into a different section within a user's Microsoft 365 account. |
| **Count notebooks section groups sections** `onenote_count_notebooks_section_groups_sections` | Gets the count of OneNote sections within a section group in a user's notebook. |
| **Count site notebook section groups sections** `onenote_count_site_notebook_section_groups_sections` | Gets the count of sections within a OneNote section group in a SharePoint site notebook. |
| **Create group notebook** `onenote_create_group_notebook` | Creates a new OneNote notebook within a Microsoft 365 group. Use this action when you need to create a new notebook for storing notes within a specific Microsoft 365 group. |
| **Create group pages** `onenote_create_group_pages` | Creates a new OneNote page in the default section of the default notebook for a Microsoft 365 group. Use this action when you need to programmatically create a new page in a group's OneNote notebook. |
| **Get group sections** `onenote_get_group_sections` | Retrieves a specific OneNote section from a Microsoft 365 group |
| **Get me onenote resources value** `onenote_get_me_onenote_resources_value` | Retrieves the binary content of a specific OneNote resource using its ID |
| **Get me section page content** `onenote_get_me_section_page_content` | Retrieves the HTML content of a specific OneNote page from a section for the signed-in user |
| **Get notebook from web URL** `onenote_get_notebook_from_web_url` | Retrieves a OneNote notebook by using its web URL path |
| **Get notebook section group** `onenote_get_notebook_section_group` | Retrieves a specific section group from a OneNote notebook within a Microsoft 365 group |
| **Get onenote group operations** `onenote_get_onenote_group_operations` | Retrieves the status of a long-running OneNote operation for a group |
| **Get onenote group sections pages** `onenote_get_onenote_group_sections_pages` | Retrieves a specific OneNote page from a section within a section group in a Microsoft 365 |
| **Get onenote site operations** `onenote_get_onenote_site_operations` | Retrieves the status of a long-running OneNote operation for a SharePoint site |
| **Get onenote user page content** `onenote_get_onenote_user_page_content` | Gets the HTML content of a specific OneNote page for a user |
| **Get site onenote pages** `onenote_get_site_onenote_pages` | Retrieves a specific OneNote page from a SharePoint site |
| **Get site pages preview** `onenote_get_site_pages_preview` | Retrieves a text preview of a specific OneNote page from a section within a section group in a |
| **Get site sections** `onenote_get_site_sections` | Retrieves a specific OneNote section from a SharePoint site |
| **Get site sections pages** `onenote_get_site_sections_pages` | Retrieves a specific OneNote page from a section within a section group in a SharePoint site |
| **Get user notebook** `onenote_get_user_notebook` | Retrieves the properties and relationships of a OneNote notebook by ID for a specific user |
| **Get user pages** `onenote_get_user_pages` | Retrieves a specific OneNote page from a user's OneNote notebooks |
| **Get user parent section group2** `onenote_get_user_parent_section_group2` | Retrieves the parent section group of a OneNote section within a user's notebook |
| **List group notebook section groups** `onenote_list_group_notebook_section_groups` | Retrieves a list of section groups from the specified notebook within a Microsoft 365 group |
| **List group notebook section pages** `onenote_list_group_notebook_section_pages` | Lists all OneNote pages from a specific section within a notebook in a Microsoft 365 group |

## Example prompts

**Copy Onenote Group Notebook**

> Use OneNote to copy onenote group notebook and walk me through the result in plain English.

**Copy Onenote Site Notebook**

> Use OneNote to copy onenote site notebook and walk me through the result in plain English.

**Copy Section To Notebook For User2**

> Use OneNote to copy section to notebook for user2 and walk me through the result in plain English.

**Copy Section To Notebook2**

> Use OneNote to copy section to notebook2 and walk me through the result in plain English.

## ClawLink vs. building it yourself

The alternative to ClawLink is usually manual integration setup plus your own token handling, permission troubleshooting, and tool plumbing for OpenClaw. That is fine if you want to build and maintain the integration yourself. Most teams just want OneNote working from chat.

| | Manual | ClawLink |
|---|---|---|
| **Setup flow** | Collect and store the right OneNote credentials yourself, then keep the account mapping and request format correct. | ClawLink keeps the setup in one hosted flow so non-technical users can link OneNote without custom integration screens. |
| **Ongoing maintenance** | You own refresh logic, permission debugging, environment config, and every provider-specific edge case for OneNote. | ClawLink handles the repetitive integration plumbing so your team can focus on the workflow instead of the infrastructure. |
| **Agent usability** | You still need to expose the right OneNote actions to the runtime in a format your agent can reliably use. | 62 tools for OneNote are already exposed through ClawLink, so the agent can read and act from chat immediately. |

## ClawLink vs. Composio

Composio also exposes OneNote to AI agents. It is developer infrastructure: Python and TypeScript SDKs, an MCP server, and a catalog past 1,000 apps, aimed at teams shipping agent products. ClawLink is built for OpenClaw users instead. You install the plugin once, connect OneNote in the browser, and the 62 tools above work from chat. There is no SDK and no config file, and the OneNote key you paste at setup is stored server-side rather than kept in your environment. Choosing between them? Read the full [Composio alternatives](https://claw-link.dev/hub/composio-alternatives) comparison.

### OpenClaw installed the OneNote skill but can't call the tools
The ClawHub skill teaches OpenClaw about OneNote, but the calls run through the ClawLink plugin and your connected account. Make sure OneNote is connected in the dashboard, then start a fresh chat so OpenClaw reloads the tool catalog. If OpenClaw runs as a persistent gateway, restart it so the new tools register.

### Connection succeeds but no tools appear
Reconnect OneNote from the dashboard, then start a fresh chat if the runtime still has the old tool catalog loaded.

### "Tool schema not loaded yet" error when calling OneNote tools
OneNote tool schemas load on demand the first time a tool runs and are cached after that, so this error usually clears on its own: wait a few seconds and retry the same request. If every OneNote call keeps failing with it in a fresh chat, reconnect from the dashboard, and contact support if it still persists — that pattern points to a configuration problem on our side, not something you can fix by reconnecting again.

### OneNote returns 403 or "permission denied" on one action while others work
Two usual causes. The connected account may not have access to the specific workspace, inbox, store, or project in the request — check that first. If access looks right, the agent may have sent a placeholder value (like "YOUR_ID" or an example id from documentation) instead of a real one: ask it to run a list or search tool first, then retry the action with a real id from those results. Most failures at this stage are one of these two, not ClawLink bugs.

### The setup form accepts credentials but calls still fail
Re-enter the credentials carefully and verify the account-level permissions for OneNote. Basic and token-based integrations tend to fail on formatting mistakes or limited account roles.

### Is there a OpenClaw OneNote integration?
Yes. ClawLink is the fastest way to connect OpenClaw to OneNote: link your OneNote account once in the browser and OpenClaw can call the OneNote API through 62 ready-made tools — no custom code or token handling.

### How do I add OneNote to OpenClaw with ClawLink?
Paste the setup prompt from this page into OpenClaw. It installs the ClawLink OneNote skill from ClawHub, then you click Connect in the dashboard to authorize OneNote. OpenClaw calls the tools from the next message — no config files, and the OneNote key you paste is stored server-side instead of in your environment.

### How long does it take to connect OneNote to OpenClaw?
About two minutes. Sign in, click Connect next to OneNote in the dashboard, authenticate, and OpenClaw can use it from the next chat message.

### Why use ClawLink instead of wiring OneNote up myself?
The alternative to ClawLink is usually manual integration setup plus your own token handling, permission troubleshooting, and tool plumbing for OpenClaw. That is fine if you want to build and maintain the integration yourself. Most teams just want OneNote working from chat.

### OpenClaw installed the OneNote skill but can't call the tools
The ClawHub skill teaches OpenClaw about OneNote, but the calls run through the ClawLink plugin and your connected account. Make sure OneNote is connected in the dashboard, then start a fresh chat so OpenClaw reloads the tool catalog. If OpenClaw runs as a persistent gateway, restart it so the new tools register.

## Related

- [Outlook](https://claw-link.dev/openclaw/outlook) — Read mail, manage calendar, and browse contacts
- [OpenClaw Microsoft Teams integration](https://claw-link.dev/openclaw/microsoft-teams) — Chat, meetings, and team collaboration
- [Power BI](https://claw-link.dev/openclaw/power-bi) — Query datasets and manage reports, dashboards, and workspaces
