Notion MCP Server

by v-3
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Enables interaction with Notion workspaces, providing tools for searching, reading, creating and updating pages, managing comments, performing block-level operations, and working with databases including creating, querying, and updating database items with various property types.

Notion MCP 서버

Notion과의 원활한 통합을 제공하는 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 서버를 통해 언어 모델이 페이지 및 데이터베이스를 검색, 읽기, 생성 및 업데이트하는 표준화된 도구를 통해 Notion 작업 공간과 상호 작용할 수 있습니다.

🌟 주요 특징

페이지 작업

  • 🔍 Notion 작업 공간을 검색하세요
  • 📝 풍부한 마크다운 콘텐츠로 새 페이지를 만드세요
  • 📖 깔끔한 포맷으로 페이지 콘텐츠를 읽어보세요
  • 🔄 기존 페이지 업데이트
  • 💬 댓글 추가 및 검색
  • 🧱 블록 수준 작업(업데이트, 삭제)

향상된 마크다운 지원

  • 다중 제목 수준(H1-H3)
  • 언어 지원이 있는 코드 블록
  • 체크박스 상태가 있는 대화형 할 일 항목
  • 다중 줄 지원이 가능한 블록 인용
  • 수평 분할선
  • 캡션이 있는 이미지
  • 중첩된 글머리 기호

데이터베이스 작업

  • 데이터베이스 생성 및 관리
  • 데이터베이스 항목 추가 및 업데이트
  • 필터 및 정렬을 사용한 쿼리
  • 다양한 속성 유형 지원:
    • 제목, 서식 있는 텍스트, 숫자
    • 선택, 다중 선택
    • 날짜, 체크박스
    • 그리고 더 많은 것들!

🚀 시작하기

필수 조건

  • Node.js(v16 이상)
  • Notion API 키
  • MCP 호환 클라이언트(예: Claude Desktop)

설치

  1. 저장소를 복제합니다.

지엑스피1

  1. 종속성 설치:
npm install
  1. 환경 설정:
# Create .env file echo "NOTION_API_KEY=your_notion_api_key_here" > .env # Or export directly export NOTION_API_KEY=your_notion_api_key_here
  1. 서버를 빌드하세요:
npm run build

🔧 구성

클로드 데스크탑 설정

  1. Claude Desktop 구성을 업데이트하세요( claude_desktop_config.json ):
{ "mcpServers": { "notion": { "command": "node", "args": ["/absolute/path/to/notion-server/build/index.js"], "env": { "NOTION_API_KEY": "your_notion_api_key_here" } } } }
  1. 변경 사항을 적용하려면 Claude Desktop을 다시 시작하세요.

🛠️ 사용 가능한 도구

페이지 작업

// Search pages { query: string // Search query } // Read page { pageId: string // ID of the page to read } // Create page { title?: string, // Page title content?: string, // Page content in markdown parentPageId: string // Parent page ID properties?: object // For database items } // Update page { pageId: string, // Page ID to update content: string, // New content type?: string // Content type }

데이터베이스 작업

// Create database { parentPageId: string, title: string, properties: object } // Query database { databaseId: string, filter?: object, sort?: object }

🔐 Notion Access 설정

통합 만들기

  1. Notion 통합 방문
  2. "새로운 통합"을 클릭하세요
  3. 권한 구성:
    • 콘텐츠: 읽기, 업데이트, 삽입
    • 댓글: 읽고, 만들고
    • 사용자 정보: 읽기

페이지 연결

  1. Notion 페이지를 열어보세요
  2. "..." 메뉴 → "연결"을 클릭하세요.
  3. 통합을 추가하세요
  4. 필요에 따라 다른 페이지에도 반복합니다.

📝 사용 예시

페이지 만들기

const result = await notion.create_page({ parentPageId: "page_id", title: "My Page", content: "# Welcome\nThis is a test page." });

데이터베이스 쿼리

const result = await notion.query_database({ databaseId: "db_id", filter: { property: "Status", select: { equals: "In Progress" } } });

🤝 기여하기

기여를 환영합니다! 다음 내용을 알려주세요.

  1. 저장소를 포크하세요
  2. 기능 브랜치 생성
  3. 풀 리퀘스트 제출

📜 라이센스

이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.

🙏 감사의 말

이 프로젝트는 sweir1/notion-server 에 의해 크게 개선되었으며, 다음과 같은 업데이트가 이루어졌습니다.

  • 더 많은 블록 유형으로 향상된 마크다운 지원
  • 포괄적인 데이터베이스 작업
  • 향상된 오류 처리 및 디버깅
  • 데이터베이스 항목에 대한 더 나은 속성 처리
  • 더 깔끔한 페이지 출력 형식

sweir1의 버전을 사용하려면 해당 저장소를 복제하면 됩니다.

git clone https://github.com/sweir1/notion-server.git
-
security - not tested
A
license - permissive license
-
quality - not tested

표준화된 도구를 통해 언어 모델이 Notion 작업 공간과 상호 작용하여 페이지와 데이터베이스를 검색, 읽기, 만들기, 업데이트할 수 있도록 지원합니다.

  1. 🌟 Key Features
    1. Page Operations
    2. Enhanced Markdown Support
    3. Database Operations
  2. 🚀 Getting Started
    1. Prerequisites
    2. Installation
  3. 🔧 Configuration
    1. Claude Desktop Setup
  4. 🛠️ Available Tools
    1. Page Operations
    2. Database Operations
  5. 🔐 Setting Up Notion Access
    1. Creating an Integration
    2. Connecting Pages
  6. 📝 Usage Examples
    1. Creating a Page
    2. Querying a Database
  7. 🤝 Contributing
    1. 📜 License
      1. 🙏 Acknowledgments
        ID: lynmv5klr9