notion-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| NOTION_TOKEN | Yes | Your Notion integration secret (required) | |
| DEFAULT_PRIVACY | No | Default privacy for new pages: private or public | private |
| DEFAULT_PARENT_PAGE_ID | No | Default parent page ID for new pages |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_notionC | Search Notion for pages and databases by keyword. |
| check_connectionB | Verify Notion integration is working. |
| get_pageB | Read a Notion page's full content as markdown. |
| create_pageC | Create a new Notion page with markdown content. |
| append_to_pageC | Append markdown content to an existing page. |
| update_page_titleC | Rename a Notion page. |
| archive_pageB | Archive (soft-delete) a Notion page. |
| restore_pageB | Restore an archived page. |
| duplicate_pageC | Duplicate a page (creates a copy with same content). |
| list_databasesA | List all Notion databases accessible to the integration. |
| get_database_schemaB | Get the schema (columns/properties) of a database. Use this BEFORE adding/updating rows to know property names and types. |
| query_databaseC | Query a database with filters and sorting. Filter examples: {"Status": "Learning"} {"Priority": "🔥 Critical", "Category": "ML"} {"Progress": {"greater_than": 50}} |
| add_database_rowC | Add a new row to a database. |
| update_database_rowC | Update properties of an existing database row. |
| bulk_add_rowsC | Add multiple rows to a database at once. |
| get_block_childrenC | Get all children blocks of a block (page or container). |
| update_blockC | Update a single block's text content (for edits). |
| delete_blockC | Delete a single block from a page. |
| add_commentC | Add a comment to a Notion page. |
| get_commentsC | Get all comments on a page. |
| quick_noteB | Save a quick note to your default parent page. Requires DEFAULT_PARENT_PAGE_ID in .env. |
| daily_journalA | Add a timestamped entry to today's journal. Auto-finds a page with 'journal' in the title. |
| add_taskC | Quick-add a task to your Tasks database (auto-detected). Date format: 'YYYY-MM-DD' |
| get_today_tasksA | Get all tasks due today or overdue. |
| complete_taskB | Mark a task as complete by name or ID. |
| get_recent_pagesC | Get recently edited pages. |
| learning_dashboardA | Get a dashboard view of your AI/ML learning progress. Shows topics by status, category, priority, and average progress. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/KuldeepJha5176/notion-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server