Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PORTNoHTTP server port for OAuth/HTTP transport.3333
NOTION_TOKENNoNotion API integration token used for Stdio mode.
OAUTH_REDIRECT_URINoOAuth callback URL.http://localhost:{PORT}/callback
NOTION_ROOT_PAGE_IDNoDefault parent page ID.
NOTION_TRUST_CONTENTNoSkip content notice on read_page responses.false
NOTION_OAUTH_CLIENT_IDNoNotion public integration OAuth client ID.
NOTION_OAUTH_CLIENT_SECRETNoNotion public integration OAuth client secret.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
create_pageA

Create a new Notion page from markdown content. Supported markdown syntax:

  • Headings: # H1, ## H2, ### H3

  • Inline: bold, italic, strikethrough, code, links

  • Images: alt

  • Lists: - bullet, 1. numbered, - [ ] task, - [x] checked task

  • Tables: | col | col | with header row and --- separator

  • Code blocks: triple backtick with optional language

  • Blockquotes: > text

  • Callouts: > [!NOTE]\n> content, > [!TIP]\n> content, > [!WARNING]\n> content, > [!IMPORTANT]\n> content, > [!INFO]\n> content, > [!SUCCESS]\n> content, > [!ERROR]\n> content → styled callout blocks with emoji

  • Dividers: ---

  • Toggle blocks: +++ Title\ncontent\n+++ (collapsible sections)

  • Column layouts: ::: columns\n::: column\nleft\n:::\n::: column\nright\n:::\n:::

  • Bookmarks: bare URL on its own line (not wrapped in ) → rich preview card

  • Equations: $$expression$$ or multi-line $$\nexpression\n$$ → equation block

  • Table of contents: [toc] → table of contents block

  • Embeds: embed → embed block

  • File uploads: alt → uploads and creates image block Link syntax: name → uploads and creates file/audio/video block (by extension) Max 20 MB per file.

append_contentB

Append markdown content to an existing page. Supports the same markdown syntax as create_page (headings, tables, callouts, toggles, columns, bookmarks, etc.).

replace_contentA

Replace all page content with the provided markdown. Deletes existing blocks and writes new ones. Supports the same markdown syntax as create_page (headings, tables, callouts, toggles, columns, bookmarks, etc.).

update_sectionA

Update a section of a page by heading name. Finds the heading, replaces everything from that heading to the next section boundary. For H1 headings, the section extends to the next heading of any level. For H2/H3 headings, it extends to the next heading of the same or higher level. Include the heading itself in the markdown. More efficient than replace_content for editing one section of a large page.

find_replaceA

Find and replace text on a page. Preserves uploaded files and blocks that aren't touched. More efficient than replace_content for targeted text changes like fixing typos, updating URLs, or renaming terms.

read_pageA

Read a page and return its metadata plus markdown content. Recursively fetches nested blocks. Output uses the same conventions as input: toggles as +++ blocks, columns as ::: blocks, callouts as > [!NOTE], tables as | pipes |. The markdown round-trips cleanly — read a page, modify the markdown, replace_content to update.

duplicate_pageC

Duplicate a page. Reads all blocks from the source and creates a new page with the same content.

update_pageC

Update page title, icon, or cover. Cover accepts an image URL or a file:// path (which will be uploaded to Notion).

archive_pageC

Archive a page in Notion.

searchA

Search Notion pages or databases. Use filter: 'databases' to find databases by name, then get_database for schema details.

list_pagesC

List child pages under a parent page.

share_pageC

Return the page URL that can be shared from Notion.

create_databaseC

Create a database under a parent page. Supported property types: title, text, number, select, multi_select, date, checkbox, url, email, phone, status.

get_databaseA

Get a database's schema — property names, types, and select/status options. Call this before query_database or add_database_entry to know the exact property names and valid values.

list_databasesA

List all databases the integration can access. Returns database names and IDs — use get_database on any result to see its schema.

query_databaseA

Query a database with optional filters, sorts, or text search. Use text for simple keyword search across all text fields. For advanced filtering, use the filter parameter with Notion filter syntax:

  • Text contains: { "property": "Name", "title": { "contains": "keyword" } }

  • Select equals: { "property": "Status", "status": { "equals": "Done" } }

  • Checkbox: { "property": "Urgent", "checkbox": { "equals": true } }

  • Date after: { "property": "Due", "date": { "after": "2025-01-01" } }

  • Combine: { "and": [...] } or { "or": [...] } Call get_database first to see available properties and valid options.

add_database_entryA

Create a new entry in a database. Pass properties as simple key-value pairs — the server converts using the database schema. Example: { "Name": "Buy groceries", "Status": "Todo", "Priority": "High", "Due": "2025-03-20", "Tags": ["Personal"] }. Call get_database to see available property names and valid select/status options.

add_database_entriesA

Create multiple entries in a database in one call. Each entry uses the same simple key-value format as add_database_entry. Returns per-entry results — partial failures don't block the batch.

update_database_entryA

Update an existing database entry. Pass only the properties you want to change — omitted properties are left unchanged. Uses the same simple key-value format as add_database_entry. Call get_database to see valid property names and options.

list_commentsC

List comments on a page.

add_commentC

Add a comment to a page.

move_pageC

Move a page to a new parent page.

restore_pageC

Restore an archived page.

delete_database_entryC

Delete (archive) a database entry.

list_usersB

List workspace users.

get_meB

Get the current bot user.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

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/Grey-Iris/easy-notion-mcp'

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