Skip to main content
Glama

Notion MCP Server

A server that connects to the Notion API and exposes functionality through Claude's Machine Context Protocol (MCP).

Features

  • Search Notion pages by title or content

  • Retrieve page details and content

  • Query Notion databases

  • Create new pages in Notion

Related MCP server: Notion MCP Server

Setup

  1. Clone this repository:

git clone https://github.com/yourusername/notion-mcp-server.git cd notion-mcp-server
  1. Install dependencies:

npm install
  1. Create a .env file in the root directory with the following content:

NOTION_API_KEY=your_notion_api_key_here PORT=3000 # Optional: if you want to query a specific database by default NOTION_DATABASE_ID=your_notion_database_id_here
  1. Get your Notion API key:

  2. Connect your Notion integration to your workspace:

    • Go to a page or database in your Notion workspace

    • Click the "..." menu in the top right

    • Select "Add connections"

    • Find and add your integration

Running the Server

Start the server in development mode:

npm run dev

Or in production mode:

npm start

The server will run on the port specified in your .env file (default: 3000).

API Endpoints

Regular HTTP Endpoints

  • POST /api/notion/search

    • Search for pages in Notion

    • Body: { "query": "search term" }

  • POST /api/notion/page

    • Get a page by ID

    • Body: { "page_id": "page-id-here" }

  • POST /api/notion/database/query

    • Query a database

    • Body: { "database_id": "database-id-here", "filter": {}, "sorts": [] }

  • POST /api/notion/page/create

    • Create a new page

    • Body: { "parent": {}, "properties": {}, "children": [] }

MCP Integration

The server exposes an MCP manifest at /mcp/manifest.json which describes the available functions.

To invoke an MCP function, send a POST request to /api/notion/mcp/invoke with the following structure:

{ "function_name": "search_pages", "parameters": { "query": "search term" } }

Available MCP Functions

  • search_pages - Search Notion pages by title or content

  • get_page - Get a Notion page by ID

  • query_database - Query a Notion database

  • create_page - Create a new page in Notion

License

MIT

-
security - not tested
F
license - not found
-
quality - not tested

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

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