LabStore
← All labs

Notion

by docker ✓ verified ✓ Packaged by Docker

Official Notion MCP Server.

MCP server installable needs setup network: on runtime: sysbox

Project Management MCP Servers

Notion MCP Server

Official Notion MCP Server.

What is an MCP Server?

MCP Info

Attribute Details
Docker Image mcp/notion
Author makenotion
Repository https://github.com/makenotion/notion-mcp-server

Image Building Info

Attribute Details
Dockerfile https://github.com/makenotion/notion-mcp-server/blob/d7e3bbd62890f9efca2cd54449ac072f3bd1a4ba/Dockerfile
Commit d7e3bbd62890f9efca2cd54449ac072f3bd1a4ba
Docker Image built by Docker Inc.
Docker Scout Health Score Docker Scout Health Score
Verify Signature COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/notion --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pub
Licence MIT License

Available Tools (24)

Tools provided by this Server Short Description
API-create-a-comment Create A Comment
API-create-a-data-source Create A Data Source
API-delete-a-block Delete A Block
API-get-block-children Get Block Children
API-get-self Get Self
API-get-user Get User
API-get-users Get Users
API-list-data-source-templates List Data Source Templates
API-move-page Move Page
API-patch-block-children Patch Block Children
API-patch-page Patch Page
API-post-page Post Page
API-post-search Post Search
API-query-data-source Query Data Source
API-retrieve-a-block Retrieve A Block
API-retrieve-a-comment Retrieve A Comment
API-retrieve-a-data-source Retrieve A Data Source
API-retrieve-a-database Retrieve A Database
API-retrieve-a-page Retrieve A Page
API-retrieve-a-page-property Retrieve A Page Property
API-retrieve-page-markdown Retrieve Page Markdown
API-update-a-block Update A Block
API-update-a-data-source Update A Data Source
API-update-page-markdown Update Page Markdown

Tools Details

Tool: API-create-a-comment

Notion | Create comment Error Responses: 400: Bad request

Parameters Type Description
parent string
rich_text array

This tool may perform destructive updates.


Tool: API-create-a-data-source

Notion | Create a data source Error Responses: 400: Bad request

Parameters Type Description
parent string
properties string
title array optional

This tool may perform destructive updates.


Tool: API-delete-a-block

Notion | Delete a block Error Responses: 400: Bad request

Parameters Type Description
block_id string Identifier for a Notion block

This tool may perform destructive updates.


Tool: API-get-block-children

Notion | Retrieve block children Error Responses: 400: Bad request

Parameters Type Description
block_id string Identifier for a block
page_size integer optional The number of items from the full list desired in the response. Maximum: 100
start_cursor string optional If supplied, this endpoint will return a page of results starting after the cursor provided. If not supplied, this endpoint will return the first page of results.

This tool is read-only. It does not modify its environment.


Tool: API-get-self

Notion | Retrieve your token's bot user Error Responses: 400: Bad request

Tool: API-get-user

Notion | Retrieve a user Error Responses: 400: 400

Parameters Type Description
user_id string

This tool is read-only. It does not modify its environment.


Tool: API-get-users

Notion | List all users Error Responses: 400: 400

Parameters Type Description
page_size integer optional The number of items from the full list desired in the response. Maximum: 100
start_cursor string optional If supplied, this endpoint will return a page of results starting after the cursor provided. If not supplied, this endpoint will return the first page of results.

This tool is read-only. It does not modify its environment.


Tool: API-list-data-source-templates

Notion | List templates in a data source Error Responses: 400: Bad request

Parameters Type Description
data_source_id string Identifier for a Notion data source
page_size integer optional
start_cursor string optional

This tool is read-only. It does not modify its environment.


Tool: API-move-page

Notion | Move a page Error Responses: 400: Bad request

Parameters Type Description
page_id string Identifier for a Notion page
parent string

This tool may perform destructive updates.


Tool: API-patch-block-children

Notion | Append block children Error Responses: 400: Bad request

Parameters Type Description
block_id string Identifier for a block. Also accepts a page ID.
children array Child content to append to a container block as an array of block objects
after string optional The ID of the existing block that the new block should be appended after.

This tool may perform destructive updates.


Tool: API-patch-page

Notion | Update page properties Error Responses: 400: Bad request

Parameters Type Description
page_id string The identifier for the Notion page to be updated.
archived boolean optional
cover string optional
icon string optional
in_trash boolean optional Set to true to delete a block. Set to false to restore a block.
properties string optional

This tool may perform destructive updates.


Tool: API-post-page

Notion | Create a page Error Responses: 400: Bad request

Parameters Type Description
parent string
properties string
children array optional The content to be rendered on the new page, represented as an array of block objects.
cover string optional The cover image of the new page, represented as a file object.
icon string optional The icon of the new page. Either an emoji object or an external file object..

This tool may perform destructive updates.


Tool: API-post-search

Notion | Search by title Error Responses: 400: Bad request

Parameters Type Description
filter string optional
page_size integer optional The number of items from the full list to include in the response. Maximum: 100.
query string optional The text that the API compares page and database titles against.
sort string optional
start_cursor string optional A cursor value returned in a previous response that If supplied, limits the response to results starting after the cursor. If not supplied, then the first page of results is returned. Refer to pagination for more details.

This tool may perform destructive updates.


Tool: API-query-data-source

Notion | Query a data source Error Responses: 400: Bad request

Parameters Type Description
data_source_id string Identifier for a Notion data source (database)
archived boolean optional
filter string optional
filter_properties array optional A list of page property value IDs to limit the response
in_trash boolean optional
page_size integer optional
sorts array optional
start_cursor string optional

This tool may perform destructive updates.


Tool: API-retrieve-a-block

Notion | Retrieve a block Error Responses: 400: Bad request

Parameters Type Description
block_id string Identifier for a Notion block

This tool is read-only. It does not modify its environment.


Tool: API-retrieve-a-comment

Notion | Retrieve comments Error Responses: 400: Bad request

Parameters Type Description
block_id string Identifier for a Notion block or page
page_size integer optional The number of items from the full list desired in the response. Maximum: 100
start_cursor string optional If supplied, this endpoint will return a page of results starting after the cursor provided. If not supplied, this endpoint will return the first page of results.

This tool is read-only. It does not modify its environment.


Tool: API-retrieve-a-data-source

Notion | Retrieve a data source Error Responses: 400: Bad request

Parameters Type Description
data_source_id string Identifier for a Notion data source

This tool is read-only. It does not modify its environment.


Tool: API-retrieve-a-database

Notion | Retrieve a database Error Responses: 400: Bad request

Parameters Type Description
database_id string Identifier for a Notion database

This tool is read-only. It does not modify its environment.


Tool: API-retrieve-a-page

Notion | Retrieve a page Error Responses: 400: Bad request

Parameters Type Description
page_id string Identifier for a Notion page
filter_properties string optional A list of page property value IDs associated with the page. Use this param to limit the response to a specific page property value or values. To retrieve multiple properties, specify each page property ID. For example: ?filter_properties=iAk8&filter_properties=b7dh.

This tool is read-only. It does not modify its environment.


Tool: API-retrieve-a-page-property

Notion | Retrieve a page property item Error Responses: 400: Bad request

Parameters Type Description
page_id string Identifier for a Notion page
property_id string Identifier for a page property
page_size integer optional For paginated properties. The max number of property item objects on a page. The default size is 100
start_cursor string optional For paginated properties.

This tool is read-only. It does not modify its environment.


Tool: API-retrieve-page-markdown

Notion | Retrieve a page as Markdown Error Responses: 400: Bad request 403: The integration lacks the read/update content capability required for this page. 404: Page not found or not shared with the integration. 429: Rate limited.

Parameters Type Description
page_id string Identifier for a Notion page (or block) to read or update as markdown.
include_transcript boolean optional Whether to include meeting note transcripts. When false (default), a placeholder with the meeting note URL is shown instead of the full transcript.

This tool is read-only. It does not modify its environment.


Tool: API-update-a-block

Notion | Update a block Error Responses: 400: Bad request

Parameters Type Description
block_id string Identifier for a Notion block
archived boolean optional Set to true to archive (delete) a block. Set to false to un-archive (restore) a block.
type string optional

This tool may perform destructive updates.


Tool: API-update-a-data-source

Notion | Update a data source Error Responses: 400: Bad request

Parameters Type Description
data_source_id string Identifier for a Notion data source
description array optional
properties string optional
title array optional

This tool may perform destructive updates.


Tool: API-update-page-markdown

Notion | Update a page's content as Markdown Error Responses: 400: Bad request 403: The integration lacks the read/update content capability required for this page. 404: Page not found or not shared with the integration. 409: Conflict (e.g. row limit exceeded). 429: Rate limited.

Parameters Type Description
page_id string Identifier for a Notion page (or block) to read or update as markdown.
type string The kind of edit to apply. Prefer replace_content (overwrite the whole page) or update_content (targeted find-and-replace). insert_content and replace_content_range are deprecated.
insert_content string optional
replace_content string optional
replace_content_range string optional
update_content string optional

This tool may perform destructive updates.


Use this MCP Server

{
  "mcpServers": {
    "notion": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "INTERNAL_INTEGRATION_TOKEN",
        "mcp/notion"
      ],
      "env": {
        "INTERNAL_INTEGRATION_TOKEN": "ntn_****"
      }
    }
  }
}

Why is it safer to run MCP Servers with Docker?