Skip to main content
Glama
SunCreation

MCP Notion Server (@suncreation)

by SunCreation

notion_retrieve_page

Retrieve Notion pages in JSON or Markdown format using page IDs to access content for reading or modification.

Instructions

Retrieve a page from Notion

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
page_idYesThe ID of the page to retrieve.It should be a 32-character string (excluding hyphens) formatted as 8-4-4-4-12 with hyphens (-).
formatNoSpecify the response format. 'json' returns the original data structure, 'markdown' returns a more readable format. Use 'markdown' when the user only needs to read the page and isn't planning to write or modify it. Use 'json' when the user needs to read the page with the intention of writing to or modifying it.markdown

Implementation Reference

  • The actual implementation of retrievePage method that makes a GET request to Notion's /pages/{page_id} endpoint to retrieve page data
    async retrievePage(page_id: string): Promise<PageResponse> { const response = await fetch(`${this.baseUrl}/pages/${page_id}`, { method: "GET", headers: this.headers, }); return response.json(); }
  • The request handler case for 'notion_retrieve_page' that validates the page_id argument and calls the client's retrievePage method
    case "notion_retrieve_page": { const args = request.params .arguments as unknown as args.RetrievePageArgs; if (!args.page_id) { throw new Error("Missing required argument: page_id"); } response = await notionClient.retrievePage(args.page_id); break; }
  • The MCP tool schema definition for 'notion_retrieve_page' specifying the input parameters (page_id, format) and description
    export const retrievePageTool: Tool = { name: "notion_retrieve_page", description: "Retrieve a page from Notion", inputSchema: { type: "object", properties: { page_id: { type: "string", description: "The ID of the page to retrieve." + commonIdDescription, }, format: formatParameter, }, required: ["page_id"], }, };
  • TypeScript interface defining the arguments type for the retrievePage tool (page_id and optional format parameter)
    export interface RetrievePageArgs { page_id: string; format?: "json" | "markdown"; }
  • Registration of the retrievePageTool in the allTools array that gets returned by the ListToolsRequestSchema handler
    schemas.createPageTool, schemas.retrievePageTool,

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/SunCreation/mcp-notion-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server