Notion MCP Server

by HariFatherKR
Integrations
  • Provides a REST API interface for interacting with Notion's API, allowing for searching, database operations (creation, querying, updating), page management, block manipulation, user information retrieval, and comment functionality.

  • Integrates Swagger UI to provide interactive API documentation, available at the /api-docs endpoint with OpenAPI schema accessible at /openapi.json.

Notion API 서버

레퍼런스 영상

노션 API를 간편하게 사용하기 위한 커스텀 서버입니다. Express.js를 사용하여 구현되었으며, Notion API의 다양한 기능을 REST API로 제공합니다.

설치 방법

  1. 필요한 패키지 설치:
npm install express cors @notionhq/client swagger-jsdoc swagger-ui-express
  1. 서버 실행:
node server.js
  1. 서버가 http://localhost:3000 에서 실행됩니다.

설정 방법

  1. server.js 파일의 NOTION_TOKEN 변수에 노션 API 토큰을 설정합니다:
const NOTION_TOKEN = '여기에_노션_API_토큰_입력';
  1. 필요한 경우 PORT 변수를 수정하여 다른 포트에서 실행할 수 있습니다.

API 기능

검색 API

  • POST /api/search: 노션 워크스페이스 내 페이지 및 데이터베이스 검색

데이터베이스 API

  • POST /api/databases: 데이터베이스 생성
  • GET /api/databases/:id: 데이터베이스 조회
  • PATCH /api/databases/:id: 데이터베이스 업데이트
  • POST /api/databases/:id/query: 데이터베이스 쿼리

페이지 API

  • POST /api/pages: 페이지 생성
  • GET /api/pages/:id: 페이지 정보 조회
  • PATCH /api/pages/:id: 페이지 업데이트
  • GET /api/pages/:page_id/properties/:property_id: 페이지 속성 조회

블록 API

  • GET /api/blocks/:id: 블록 조회
  • GET /api/blocks/:id/children: 블록 내용 조회
  • PATCH /api/blocks/:id: 블록 업데이트
  • PATCH /api/blocks/:id/children: 블록 내용 추가
  • DELETE /api/blocks/:id: 블록 삭제

사용자 API

  • GET /api/users: 사용자 목록 조회
  • GET /api/users/:id: 사용자 조회
  • GET /api/users/me: 자신의 사용자 정보 조회

코멘트 API

  • POST /api/comments: 코멘트 생성
  • GET /api/comments?block_id=...: 코멘트 조회

Cursor MCP 통합

  1. .cursor/mcp.json 파일에 다음 설정을 추가:
{ "mcpServers": { "customApi": { "url": "http://localhost:3000", "toolNameStrategy": "url-path-segments" } } }
  1. 서버 실행 중에 Cursor에서 MCP 기능을 사용하여 노션 API에 접근할 수 있습니다.

사용 예제

검색 요청 예시

// 페이지 검색 fetch('http://localhost:3000/api/search', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ filter: { value: "page", property: "object" } }) }) .then(response => response.json()) .then(data => console.log(data));

페이지 생성 예시

// 새 페이지 생성 fetch('http://localhost:3000/api/pages', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ parent: { page_id: "페이지_ID" }, properties: { title: { title: [ { text: { content: "새 페이지 제목" } } ] } } }) }) .then(response => response.json()) .then(data => console.log(data));

데이터베이스 생성 예시

// 데이터베이스 생성 fetch('http://localhost:3000/api/databases', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ parent: { type: "page_id", page_id: "페이지_ID" }, title: [ { text: { content: "테스트 데이터베이스" } } ], properties: { "이름": { "title": {}, "description": "제목 항목" }, "상태": { "description": "작업 상태", "select": { "options": [ { "name": "진행 중", "color": "blue" }, { "name": "완료", "color": "green" } ] } } } }) }) .then(response => response.json()) .then(data => console.log(data));

API 문서

API 문서는 서버 실행 시 다음 URL에서 확인할 수 있습니다:

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

A custom server that provides a REST API interface for Notion, allowing easy access to Notion's functionality through Cursor's MCP feature.

  1. 레퍼런스 영상
    1. 설치 방법
      1. 설정 방법
        1. API 기능
          1. 검색 API
          2. 데이터베이스 API
          3. 페이지 API
          4. 블록 API
          5. 사용자 API
          6. 코멘트 API
        2. Cursor MCP 통합
          1. 사용 예제
            1. 검색 요청 예시
            2. 페이지 생성 예시
            3. 데이터베이스 생성 예시
          2. API 문서

            Related MCP Servers

            • A
              security
              A
              license
              A
              quality
              MCP Server for the Notion API, enabling Claude to interact with Notion workspaces.
              Last updated -
              18
              1,398
              699
              TypeScript
              MIT License
            • -
              security
              F
              license
              -
              quality
              Enables interaction with Notion through the Notion API by exposing it as tools for LLMs, allowing operations like reading, creating, updating, and deleting Notion pages seamlessly via natural language.
              Last updated -
              41
              17
              TypeScript
            • -
              security
              A
              license
              -
              quality
              A Model Context Protocol server that provides a standardized interface for interacting with Notion's API, enabling users to list databases, create pages, and search across their Notion workspace.
              Last updated -
              95
              Python
              MIT License
              • Apple
            • A
              security
              A
              license
              A
              quality
              Notion MCP Server is a MCP server implementation that enables AI assistants to interact with Notion's API.
              Last updated -
              13
              275
              91
              TypeScript
              MIT License

            View all related MCP servers

            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/HariFatherKR/notion_mcp_server'

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