Notion for AI agents
Notion centralizes notes, docs, wikis, and tasks in a unified workspace, letting teams build custom workflows for collaboration and knowledge management. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.
What agents do in Notion.
Add a row to a database
Create a new entry in a Notion database, such as a task or a tracked item.
Fetch a page's content
Read a page's blocks and content to answer a question, without changing it.
Approve before archiving a page
Require approval before archiving a page, since it removes it from active views for the whole team.
57 Notion actions, graded by risk.
Every Notion action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.
read
22Look things up. Allowed by default.
- notion.list_usersList users
- notion.list_viewsList Notion views
- notion.get_about_meGet About Me (Deprecated)
- notion.get_about_userGet about user
- notion.query_databaseQuery database
- notion.get_page_markdownGet page markdown
- notion.list_file_uploadsList Notion file uploads
- notion.query_data_sourceQuery data source
- notion.search_notion_pageSearch Notion pages and databases
- notion.get_view_query_resultsGet Notion view query results
- notion.get_page_property_actionGet page property
- notion.list_data_source_templatesList data source templates
- notion.query_database_with_filterQuery database with filter
- notion.fetch_rowFetch database row
- notion.fetch_dataFetch Notion Data
- notion.retrieve_pageRetrieve page
write
26Create and change things. Allow, or ask the user first.
- notion.create_viewCreate Notion view
- notion.update_pageUpdate Page
- notion.update_viewUpdate Notion view
- notion.create_commentCreate comment
- notion.create_databaseCreate Notion Database
- notion.add_page_contentAdd single content block to Notion page (Deprecated)
- notion.send_file_uploadSend file upload
- notion.create_view_queryCreate Notion view query
- notion.create_file_uploadCreate Notion file upload
- notion.create_notion_pageCreate Notion page
- notion.update_row_databaseUpdate Database Row (Page)
- notion.update_schema_databaseUpdate database schema
- notion.add_multiple_page_contentAdd multiple content blocks (bulk, user-friendly)
- notion.who_am_iWho Am I
- notion.move_pageMove Page
- notion.duplicate_pageDuplicate page
destructive
9Delete, cancel or archive. Ask first, or deny outright.
- notion.delete_viewDelete Notion view
- notion.delete_blockDelete a block
- notion.delete_view_queryDelete Notion view query
- notion.archive_notion_pageArchive Notion Page
- notion.update_blockUpdate block
- notion.fetch_block_contentsFetch Notion Block Children
- notion.fetch_block_metadataFetch Notion block metadata
- notion.append_block_childrenAppend raw Notion blocks (advanced API)
- notion.fetch_all_block_contentsFetch All Notion Block Contents
Notion in three steps.
- 01Your users connect NotionThey sign in to Notion on Arc0 Connect, under your brand, and approve the access you ask for.
- 02You set the rulesReads run, writes like “create Notion view” can wait for the user, and “delete Notion view” can be denied outright.
- 03Any agent can actYour agent calls Notion through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
await arc0.policies.set('notion', { read: 'allow', write: 'ask', // create_view destructive: 'deny', // delete_view }) # Claude Code: the same connection, one URL $ claude mcp add --transport http arc0 \ https://mcp.arc0.ai/u/u_8f2
How Notion connects.
Users sign in to Notion on Arc0 Connect and approve the scopes you request. Build with Arc0’s Notion OAuth app, or bring your own so the Notion consent screen names you. Tokens refresh automatically, and you can export them whenever you want.
The same Notion connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →
- AUTH
- API key · OAuth 2.0
- CREDENTIALS
- Per-tenant encrypted vault
- MODEL SEES
- Results only, never credentials
- AUDIT LOG
- Every call, on every plan
Use Notion from any agent.
Notion and Arc0, answered.
Can I use Notion with Claude, ChatGPT or Cursor?
Yes. Connect Notion to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the Notion actions you allow.
How do users connect Notion?
Users sign in to Notion on Arc0 Connect and approve the scopes you request. Build with Arc0’s Notion OAuth app, or bring your own so the Notion consent screen names you. Tokens refresh automatically, and you can export them whenever you want.
Which Notion actions can my agent take?
57 in total: 22 read, 26 write and 9 destructive, such as “create Notion view”. Your policies decide which of them each agent may call.
Can I stop my agent from deleting things in Notion?
Yes. Actions like “delete Notion view” are graded destructive. Set destructive actions to deny, or to ask so the user approves each one, and blocked calls still show up on the audit log.
Can my own backend call Notion too?
Yes. The same Notion connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.
Plug Notion into your agent.
Your users connect Notion once, under your brand. Your agent gets 57 actions behind your policies, with every call on the record.
Free to build · MCP + REST · Audit log on every plan