Notion MCP server for Claude, ChatGPT, Claude Code and Cursor
Access, query, and manage content, pages, blocks, and databases within a Notion workspace.
Examples of what your AI apps can do in Notion. You'll see the exact list of tools after you connect it.
append_block_children
ToolAppends complex blocks with full notion block structure to a parent block or page. use for advanced scenarios requiring precise control: code blocks, tables, embeds, nested children within blocks, or when working with pre-built notion block objects. requires full notion api block schema - use add multiple page content for simpler content creation.
update_page
ToolTool to update the properties, icon, cover, or archive status of a page. use when you need to modify existing page attributes.
add_multiple_page_content
ToolEfficiently adds multiple standard content blocks to a notion page in a single api call with automatic markdown parsing. the 'content' field in notionrichtext blocks now automatically detects and parses markdown formatting including headers (# ## ###), bold (**text**), italic (*text*), strikethrough (~~text~~), inline code (`code`), links ([text](url)), and more. ideal for bulk content creation, ai agents, and replacing multiple individual add page content calls. supports automatic text formatting, content splitting, and up to 100 blocks per request.
create_comment
ToolAdds a comment to a notion page (via `parent page id`) or to an existing discussion thread (via `discussion id`); cannot create new discussion threads on specific blocks (inline comments).
create_database
ToolCreates a new notion database as a subpage under a specified parent page with a defined properties schema; use this action exclusively for creating new databases.
create_notion_page
ToolCreates a new empty page in a notion workspace.
delete_block
ToolArchives a notion block, page, or database using its id, which sets its 'archived' property to true (like moving to "trash" in the ui) and allows it to be restored later.
fetch_block_contents
ToolRetrieves a paginated list of direct, first-level child block objects along with contents for a given parent notion block or page id; use block ids from the response for subsequent calls to access deeply nested content.
fetch_comments
ToolFetches unresolved comments for a specified notion block or page id.
fetch_database
ToolFetches a notion database's structural metadata (properties, title, etc.) via its `database id`, not the data entries; `database id` must reference an existing database.
fetch_row
ToolRetrieves a notion database row's properties and metadata; use fetch block contents for page content blocks.
get_about_me
ToolRetrieves the user object for the bot associated with the current notion integration token, typically to obtain the bot's user id for other api operations.
get_about_user
ToolRetrieves detailed information about a specific notion user, such as their name, avatar, and email, based on their unique user id.
insert_row_database
ToolCreates a new page (row) in a specified notion database.
list_users
ToolRetrieves a paginated list of users (excluding guests) from the notion workspace; the number of users returned per page may be less than the requested `page size`.
query_database
ToolQueries a notion database for pages (rows), where rows are pages and columns are properties; ensure sort property names correspond to existing database properties.
retrieve_comment
ToolTool to retrieve a specific comment by its id. use when you have a comment id and need to fetch its details.
retrieve_database_property
ToolTool to retrieve a specific property object of a notion database. use when you need to get details about a single database column/property.
search_notion_page
ToolSearches notion pages and databases by title; an empty query lists all accessible items, useful for discovering ids or as a fallback when a specific query yields no results.
update_row_database
ToolUpdates or archives an existing notion database row (page) using its `row id`, allowing modification of its icon, cover, and/or properties; ensure the target page is accessible and property details (names/ids and values) align with the database schema and specified formats.
update_schema_database
ToolUpdates an existing notion database's title, description, and/or properties; at least one of these attributes must be provided to effect a change.
archive_notion_page
ToolArchives (moves to trash) or unarchives (restores from trash) a specified notion page.
duplicate_page
ToolDuplicates a notion page, including all its content, properties, and nested blocks, under a specified parent page or workspace.
fetch_block_metadata
ToolFetches metadata for a notion block (or page, as pages are blocks) using its valid uuid; if the block has children, use fetch block contents to fetch their contents.
fetch_data
ToolFetches notion items (pages and/or databases) from the notion workspace, use this to get minimal data about the items in the workspace with a query or list all items in the workspace with minimal data
get_page_property_action
ToolCall this to get a specific property from a notion page when you have a valid `page id` and `property id`; handles pagination for properties returning multiple items.
update_block
ToolUpdates an existing notion block's textual content or type-specific properties (e.g., 'checked' status, 'color'), using its `block id` and the specified `block type`.
Free. No card needed.
How to connect Notion
- 1Create your free ContextGate account.
- 2Go to Connections → Add Connection, search for Notion and sign in to Notion.
- 3Add ContextGate to Claude, Cursor or ChatGPT (the Setup page shows you how), then ask it to use Notion.
What you get with Notion and ContextGate
- Your AI apps can use Notion Claude, Cursor, ChatGPT and other AI apps reach Notion through the one ContextGate connection you add to them.
- You choose which tools they can use Switch off any Notion tool you don't want used. It's hidden from your AI apps and refused if called.
- Every call is checked and recorded Your policies check each call (for example, personal data is hidden and secrets are blocked), and Activity keeps a record of it.
ContextGate sees only the tool calls that go through it, not your AI app's built-in tools or your chats.
Select a tool on the left to see its parameters
What you get with Notion and ContextGate
- Your AI apps can use Notion: Claude, Cursor, ChatGPT and other AI apps reach Notion through the one ContextGate connection you add to them.
- You choose which tools they can use: Switch off any Notion tool you don't want used. It's hidden from your AI apps and refused if called.
- Every call is checked and recorded: Your policies check each call (for example, personal data is hidden and secrets are blocked), and Activity keeps a record of it.
ContextGate sees only the tool calls that go through it, not your AI app's built-in tools or your chats.
Free. No card needed.
How to connect Notion
- Create your free ContextGate account.
- Go to Connections → Add Connection, search for Notion and sign in to Notion.
- Add ContextGate to Claude, Cursor or ChatGPT (the Setup page shows you how), then ask it to use Notion.