pages
Create, read, update, archive, duplicate, or move individual Notion pages and database rows. Supports properties, markdown content, icons, and covers.
Instructions
Page CRUD for individual pages and database rows.
Actions (required params -> optional):
create (parent_id -> title, content, properties, icon, cover)
get (page_id): returns markdown content
get_property (page_id, property_id)
update (page_id -> title, content, append_content, properties, icon, cover, archived)
move (page_id, parent_id)
archive (page_id) / restore (page_id)
duplicate (page_id -> parent_id)
Use databases instead for querying or bulk row operations. Property format: simple values auto-convert -- string for title/rich_text/select/status, number for number, boolean for checkbox, string[] for multi_select, ISO date "2025-01-15" for date. Example: properties: {"Name": "My Page", "Status": "In Progress", "Tags": ["tag1", "tag2"], "Due": "2025-06-01", "Count": 42, "Done": true}.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| icon | No | Icon: emoji (e.g. "(icon)"), external URL (https://...), or built-in shorthand (name:color, e.g. "document:gray") | |
| cover | No | Cover image: URL or built-in shorthand (gradient_1..11, solid_red/yellow/blue/beige, nasa_*, met_*, rijksmuseum_*, woodcuts_*) | |
| title | No | Page title | |
| action | Yes | Action to perform | |
| content | No | Markdown content | |
| page_id | No | Page ID (required for most actions) | |
| archived | No | Archive status | |
| page_ids | No | Multiple page IDs for batch operations | |
| parent_id | No | Parent page or database ID | |
| properties | No | Page properties (for database pages). Use simple values -- auto-converted to Notion format. String: title/rich_text/select/status. Number: number. Boolean: checkbox. String[]: multi_select. ISO date string: date. Object with Notion structure: pass through as-is. | |
| property_id | No | Property ID (for get_property action) | |
| append_content | No | Markdown to append |