MCP HubMCP Hub
Ejb503

systemprompt-mcp-notion

by: Ejb503

This an Model Context Protocol (MCP) server that integrates Notion into your AI workflows. This server enables seamless access to Notion through MCP, allowing AI agents to interact with pages, databases, and comments.

16created 15/01/2025
Visit
Notion
AI

๐Ÿ“ŒOverview

Purpose: To provide a high-performance Model Context Protocol (MCP) server that integrates Notion into AI workflows for seamless interaction with Notion pages and databases.

Overview: The SystemPrompt MCP Notion Server facilitates communication between AI agents and Notion's data through a standardized protocol, enabling functionalities like creating, updating, and searching content within Notion.

Key Features:

  • ๐Ÿ“ Comprehensive Content Management:
    Supports creating and updating pages with rich text formatting and searching across the Notion workspace.

  • ๐Ÿ›  Developer-Friendly:
    Includes extensive test coverage utilizing Jest, TypeScript support, comprehensive error handling, and detailed logging for effective debugging.


systemprompt-mcp-notion

Website | Documentation

SystemPrompt MCP Notion Server

A high-performance Model Context Protocol (MCP) server that integrates Notion into AI workflows. It enables AI agents to interact with Notion pages and databases through a standardized protocol. Supports and requires MCP Sampling to create and update Notion pages.

A compatible MCP client is available here: https://github.com/Ejb503/multimodal-mcp-client

Server Capabilities

const serverCapabilities: { capabilities: ServerCapabilities } = {
  capabilities: {
    resources: {
      listChanged: true,
    },
    tools: {},
    prompts: {
      listChanged: true,
    },
    sampling: {},
  },
};

Key Features

  • ๐Ÿ“ Comprehensive Content Management

    • Create and update pages with rich text formatting
    • Search across your Notion workspace
  • ๐Ÿ›  Developer-Friendly

    • Extensive test coverage with Jest
    • TypeScript support
    • Comprehensive error handling
    • Detailed logging and debugging tools

Prerequisites

Before using this server, you'll need:

  1. Systemprompt API Key (Free)

  2. Notion Account and Workspace

    • Active Notion account
    • Workspace with content you want to access
  3. Notion Integration

  4. MCP-Compatible Client

Quick Start

  1. Installation

    Installing via Smithery

    To install systemprompt-mcp-notion for Claude Desktop automatically via Smithery:

    npx -y @smithery/cli install systemprompt-mcp-notion --client claude
    

    Or install via npm:

    npm install systemprompt-mcp-notion
    
  2. Configuration

    Create a .env file:

    SYSTEMPROMPT_API_KEY=your_systemprompt_api_key
    NOTION_API_KEY=your_notion_integration_token
    
  3. MCP Configuration

    Add the following to your MCP configuration JSON:

    {
      "mcpServers": {
        "notion": {
          "command": "npx",
          "args": ["systemprompt-mcp-notion"],
          "env": {
            "SYSTEMPROMPT_API_KEY": "your_systemprompt_api_key",
            "NOTION_API_KEY": "your_notion_integration_token"
          }
        }
      }
    }
    

    Alternatively, if installed locally:

    {
      "mcpServers": {
        "notion": {
          "command": "node",
          "args": ["./node_modules/systemprompt-mcp-notion/build/index.js"],
          "env": {
            "SYSTEMPROMPT_API_KEY": "your_systemprompt_api_key",
            "NOTION_API_KEY": "your_notion_integration_token"
          }
        }
      }
    }
    

Development

Setup

  1. Clone the repository:

    git clone https://github.com/systemprompt-io/systemprompt-mcp-notion.git
    cd systemprompt-mcp-notion
    
  2. Install dependencies:

    npm install
    
  3. Set up environment:

    cp .env.example .env
    # Edit .env with your API keys
    

Testing

We maintain high test coverage using Jest:

# Run all tests
npm test

# Watch mode for development
npm run test:watch

# Generate coverage report
npm run test:coverage

# Test Notion API connection
npm run test:notion