Notion
Service domainDOCUMENTS
Arcade Optimized
Arcade.dev LLM tools for Notion
10tools
Arcade's Notion toolkit connects LLMs to a user's Notion workspace via OAuth, enabling agents to read, navigate, and write pages and databases without manual API wiring.
Capabilities
- Content access: Retrieve full page content as Markdown by ID or title; search across pages and databases by title.
- Navigation & structure: Walk the workspace tree (up to 100 recently edited objects), resolve breadcrumb paths for any page or database, and list direct children of any parent object with cursor-based pagination.
- Metadata & discovery: Fetch object metadata (ID, timestamps, properties, URL) by exact title or ID; locate objects whose position in the tree is ambiguous or cursor-truncated.
- Write operations: Create new pages under a named parent; append Markdown content to the end of an existing page by ID or title.
- Identity: Retrieve the authenticated user's profile, workspace context, and integration details.
OAuth
This toolkit uses OAuth 2.0 via the Notion provider. Arcade handles token acquisition and refresh automatically. See the Notion auth provider docs for setup details, required scopes, and configuration options.
Available tools(10)
10 of 10 tools
Operations
Behavior
| Tool name | Description | Secrets | |
|---|---|---|---|
Append markdown content to the end of a Notion page by its ID or title | |||
Create a new Notion page by the title of the new page's parent. | |||
Find the breadcrumb path for one page or database.
A `complete` path starts at a workspace root. An incomplete path is still the real prefix
of the object's location: `stop_reason` says what ended the walk, and for a rate limit
`retry_after_seconds` carries Notion's own backoff. | |||
Get the metadata of a Notion object (page or database) from its title or ID.
One of `object_title` or `object_id` MUST be provided, but both cannot be provided.
Prefer `object_id` for exact lookup; use `object_title` (with optional `object_type`)
when only a name is known. The title is case-insensitive and outer whitespace is ignored.
Returns all exact title matches in a bounded search window, or a one-item list by ID.
Object metadata includes its ID, timestamps, properties, URL, and more. | |||
Get the content of a Notion page as markdown with the page's ID | |||
Get the content of a Notion page as markdown with the page's title | |||
Get up to 100 recently edited pages and databases as a tree.
The 100 counts pages and databases only: database rows are skipped (they are not sidebar
structure) and reported as omitted_database_rows. This is a recency-limited sample, not a
complete listing: a specific object you are looking for may not appear here at all — search
for it by name and get its location instead. A truncated response means more workspace
objects exist. When sampled_objects is 0 while omitted_database_rows is high, the workspace
is busy with database row edits rather than empty — search by title instead of concluding
the workspace has no content. Unplaced objects are not transitively reachable from a
workspace root in this sample — for example block-nested objects, objects whose parent was
omitted from the sample, or descendants of those. They are not attached under a possibly
incorrect workspace root. Navigate an unplaced object by passing its own `id` (not
`parent_id` or `containing_block_id`) to GetObjectLocation or ListChildObjects. | |||
List direct child pages and databases without counting an entire subtree.
Page children of the requested object come first, then children nested inside its
containers (toggles, columns, callouts). Continue by passing `next_cursor` back; when
`next_cursor` is null there is nothing further to fetch.
`truncated` means the walk stopped before enumerating everything, with `stop_reason` saying
why. If `next_cursor` is also set, continue from it. If `next_cursor` is null, more windows
cannot recover what was missed — every call re-walks the same bounded budget — so do not
keep paging: call this tool again on a narrower parent (a specific child page), or use
GetObjectLocation for one object you already know about. For a rate limit, wait
`retry_after_seconds` before retrying. | |||
Search for similar titles of pages, databases, or both within the user's workspace.
Does not include content. | |||
Get information about the current user and their Notion workspace.
This tool provides detailed information about the authenticated user's
Notion workspace including workspace statistics, user context, and
integration details. |
Last updated on