OneNote Integration
Manage OneNote notebooks, sections, pages, and section creation through Microsoft Graph
The OneNote integration provides access to manage OneNote notebooks, sections, pages, and section creation through Microsoft Graph through the Integrate MCP server.
Installation
The OneNote integration is included with the SDK:
import { onenoteIntegration } from "integrate-sdk/server";Setup
1. Create an OneNote OAuth App
- Go to Azure Portal — App Registrations
- Create a new OAuth application
- Configure your redirect URI
- Note your Client ID and Client Secret
2. Configure the Integration on Your Server
Add the OneNote integration to your server configuration. The integration automatically reads ONENOTE_CLIENT_ID and ONENOTE_CLIENT_SECRET from your environment variables:
import { createMCPServer, onenoteIntegration } from "integrate-sdk/server";
export const { client: serverClient } = createMCPServer({
apiKey: process.env.INTEGRATE_API_KEY,
integrations: [
onenoteIntegration({
scopes: ["offline_access", "User.Read", "Notes.ReadWrite.All"], // Optional
}),
],
});You can override the environment variables by passing explicit values:
onenoteIntegration({
clientId: process.env.CUSTOM_ONENOTE_ID,
clientSecret: process.env.CUSTOM_ONENOTE_SECRET,
scopes: ["offline_access", "User.Read", "Notes.ReadWrite.All"], // Optional
});3. Client-Side Usage
The default client automatically includes all integrations. You can use it directly:
import { client } from "integrate-sdk";
await client.authorize("onenote");
const result = await client.onenote.listNotebooks({});
console.log(result);If you're using a custom client, add the integration to the integrations array:
import { createMCPClient, onenoteIntegration } from "integrate-sdk";
const customClient = createMCPClient({
integrations: [onenoteIntegration()],
});Configuration Options
Prop
Type
Default Scopes
These defaults are applied unless you override scopes in the integration config:
offline_accessUser.ReadNotes.ReadWrite.All
Tools
onenote_list_notebooks
List notebooks
Prop
Type
onenote_get_notebook
Get notebook
Prop
Type
onenote_list_sections
List sections
Prop
Type
onenote_create_section
Create section
Prop
Type
onenote_list_pages
List pages
Prop
Type
onenote_get_page
Get page
Prop
Type
Notes
- Category: Productivity
- Authentication mode: OAuth