{
  "info": {
    "name": "Notion — mcp.ai",
    "description": "REST API for the Notion MCP. Set {{apiKey}} to a workspace key (sk_live_…) created at https://mcp.ai/settings/api-keys.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.mcp.ai/api/notion",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "sk_live_...",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "notion_add_multiple_page_content",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/add/multiple/page/content",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "add",
            "multiple",
            "page",
            "content"
          ]
        },
        "description": "Efficiently 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 pars",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"after\": \"\",\n  \"content_blocks\": \"\",\n  \"parent_block_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_add_page_content",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/add/page/content",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "add",
            "page",
            "content"
          ]
        },
        "description": "Deprecated: appends a single content block to a notion page or a parent block (must be page, toggle, to-do, bulleted/numbered list, callout, or quote); invoke repeatedly to add multiple blocks.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"after\": \"\",\n  \"content_block\": {},\n  \"parent_block_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_append_block_children",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/append/block/children",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "append",
            "block",
            "children"
          ]
        },
        "description": "Appends 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 ",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"after\": \"\",\n  \"block_id\": \"\",\n  \"children\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_archive_notion_page",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/archive/notion/page",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "archive",
            "notion",
            "page"
          ]
        },
        "description": "Archives (moves to trash) or unarchives (restores from trash) a specified notion page.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"archive\": false,\n  \"page_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_create_comment",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/comment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "comment"
          ]
        },
        "description": "Adds 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).",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"comment\": {},\n  \"discussion_id\": \"\",\n  \"parent_page_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_create_database",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/database",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "database"
          ]
        },
        "description": "Creates 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.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"title\": \"\",\n  \"parent_id\": \"\",\n  \"properties\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_create_notion_page",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/notion/page",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "notion",
            "page"
          ]
        },
        "description": "Creates a new empty page in a notion workspace.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"icon\": \"\",\n  \"cover\": \"\",\n  \"title\": \"\",\n  \"parent_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_delete_block",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/block",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "block"
          ]
        },
        "description": "Archives 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.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"block_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_duplicate_page",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/duplicate/page",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "duplicate",
            "page"
          ]
        },
        "description": "Duplicates a notion page, including all its content, properties, and nested blocks, under a specified parent page or workspace.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"title\": \"\",\n  \"page_id\": \"\",\n  \"parent_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_fetch_block_contents",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/fetch/block/contents",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "fetch",
            "block",
            "contents"
          ]
        },
        "description": "Retrieves 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 dee",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"block_id\": \"\",\n  \"page_size\": 0,\n  \"start_cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_fetch_block_metadata",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/fetch/block/metadata",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "fetch",
            "block",
            "metadata"
          ]
        },
        "description": "Fetches 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.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"block_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_fetch_comments",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/fetch/comments",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "fetch",
            "comments"
          ]
        },
        "description": "Fetches unresolved comments for a specified notion block or page id.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"block_id\": \"\",\n  \"page_size\": 0,\n  \"start_cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_fetch_data",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/fetch/data",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "fetch",
            "data"
          ]
        },
        "description": "Fetches 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",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"query\": \"\",\n  \"get_all\": false,\n  \"get_pages\": false,\n  \"page_size\": 0,\n  \"get_databases\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_fetch_database",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/fetch/database",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "fetch",
            "database"
          ]
        },
        "description": "Fetches a notion database's structural metadata (properties, title, etc.) via its `database id`, not the data entries; `database id` must reference an existing database.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"database_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_fetch_row",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/fetch/row",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "fetch",
            "row"
          ]
        },
        "description": "Retrieves a notion database row's properties and metadata; use fetch block contents for page content blocks.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"page_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_get_about_me",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/about/me",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "about",
            "me"
          ]
        },
        "description": "Retrieves 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.",
        "body": {
          "mode": "raw",
          "raw": "{}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_get_about_user",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/about/user",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "about",
            "user"
          ]
        },
        "description": "Retrieves detailed information about a specific notion user, such as their name, avatar, and email, based on their unique user id.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"user_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_get_page_property_action",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/page/property/action",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "page",
            "property",
            "action"
          ]
        },
        "description": "Call 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.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"page_id\": \"\",\n  \"page_size\": 0,\n  \"property_id\": \"\",\n  \"start_cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_insert_row_database",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/insert/row/database",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "insert",
            "row",
            "database"
          ]
        },
        "description": "Creates a new page (row) in a specified notion database.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"icon\": \"\",\n  \"cover\": \"\",\n  \"properties\": \"\",\n  \"database_id\": \"\",\n  \"child_blocks\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_list_users",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/users",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "users"
          ]
        },
        "description": "Retrieves 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`.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"page_size\": 0,\n  \"start_cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_query_database",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/query/database",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "query",
            "database"
          ]
        },
        "description": "Queries a notion database for pages (rows), where rows are pages and columns are properties; ensure sort property names correspond to existing database properties.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"sorts\": \"\",\n  \"page_size\": 0,\n  \"database_id\": \"\",\n  \"start_cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_retrieve_comment",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/retrieve/comment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "retrieve",
            "comment"
          ]
        },
        "description": "Tool to retrieve a specific comment by its id. use when you have a comment id and need to fetch its details.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"comment_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_retrieve_database_property",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/retrieve/database/property",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "retrieve",
            "database",
            "property"
          ]
        },
        "description": "Tool to retrieve a specific property object of a notion database. use when you need to get details about a single database column/property.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"database_id\": \"\",\n  \"property_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_search_notion_page",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/search/notion/page",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "search",
            "notion",
            "page"
          ]
        },
        "description": "Searches 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.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"query\": \"\",\n  \"direction\": \"\",\n  \"page_size\": 0,\n  \"timestamp\": \"\",\n  \"filter_value\": \"\",\n  \"start_cursor\": \"\",\n  \"filter_property\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_update_block",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/block",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "block"
          ]
        },
        "description": "Updates 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`.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"content\": \"\",\n  \"block_id\": \"\",\n  \"block_type\": \"\",\n  \"additional_properties\": {}\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_update_page",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/page",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "page"
          ]
        },
        "description": "Tool to update the properties, icon, cover, or archive status of a page. use when you need to modify existing page attributes.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"icon\": {},\n  \"cover\": {},\n  \"page_id\": \"\",\n  \"archived\": false,\n  \"properties\": {}\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_update_row_database",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/row/database",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "row",
            "database"
          ]
        },
        "description": "Updates 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 (n",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"icon\": \"\",\n  \"cover\": \"\",\n  \"row_id\": \"\",\n  \"delete_row\": false,\n  \"properties\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "notion_update_schema_database",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/schema/database",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "schema",
            "database"
          ]
        },
        "description": "Updates an existing notion database's title, description, and/or properties; at least one of these attributes must be provided to effect a change.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"title\": \"\",\n  \"properties\": \"\",\n  \"database_id\": \"\",\n  \"description\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    }
  ]
}