Notion MCP Server

by SAhmadUmass

Integrations

  • Allows searching across a Notion workspace, retrieving/creating/updating pages, creating/querying/updating databases, and managing database entries with custom properties.

Notion MCP 서버

Claude와 다른 LLM이 Notion 작업 공간과 상호 작용할 수 있도록 하는 Notion 통합을 위한 모델 컨텍스트 프로토콜 서버입니다.

특징

  • Notion 검색 : Notion 작업 공간 전체에서 검색
  • 페이지 가져오기 : 특정 Notion 페이지에서 콘텐츠를 검색합니다.
  • 페이지 만들기 : Notion 작업 공간에 새 페이지를 만듭니다.
  • 페이지 업데이트 : 기존 페이지를 새 콘텐츠나 제목으로 업데이트합니다.
  • 데이터베이스 생성 : 사용자 정의 속성을 사용하여 새 데이터베이스를 생성합니다.
  • 데이터베이스 쿼리 : 필터 및 정렬을 사용하여 데이터베이스 쿼리
  • 데이터베이스 항목 업데이트 : 데이터베이스 항목의 속성 업데이트
  • 데이터베이스 행 만들기 : 사용자 정의 속성을 사용하여 기존 데이터베이스에 새 행을 추가합니다.

설정

  1. 이 저장소를 복제하세요
  2. 종속성 설치지엑스피1
  3. Notion API 키 구성
    • Notion 개발자 포털 에서 통합을 만듭니다.
    • API 키를 복사하세요
    • 다음 중 하나를 선택할 수 있습니다.
      • .env 파일을 편집하고 your_notion_api_key_here 실제 API 키로 바꾸거나
      • Claude for Desktop 구성에 직접 전달합니다(권장, 아래 참조)
  4. 서버를 빌드하세요
    npm run build
  5. 서버 실행
    npm start

데스크톱용 Claude 설정

  1. 데스크탑용 Claude 설치(아직 설치되지 않은 경우)
  2. 데스크톱 앱 구성을 위한 Claude를 엽니다.
    • macOS의 경우: ~/Library/Application Support/Claude/claude_desktop_config.json
    • 파일이 존재하지 않으면 생성합니다.
  3. 구성에 Notion 서버를 추가합니다.
    { "mcpServers": { "notion": { "command": "node", "args": [ "/Users/shaheerahmad/Documents/notion-mcp-server/dist/index.js", "--notion-api-key=YOUR_ACTUAL_API_KEY_HERE" ] } } }
    바꾸다:
    • 프로젝트 디렉토리의 전체 경로를 포함하는 /Users/shaheerahmad/Documents/notion-mcp-server
    • YOUR_ACTUAL_API_KEY_HERE 에 실제 Notion API 키를 입력하세요.
  4. 데스크톱용 Claude를 다시 시작하세요

서버 사용

Claude for Desktop에 연결하면 Claude에게 다음과 같은 질문을 하여 서버를 사용할 수 있습니다.

  • "Notion 작업 공간에서 회의록 검색"
  • "프로젝트 계획 페이지의 내용을 가져오세요"(페이지 ID가 필요합니다)
  • "Notion에서 작업 목록이 있는 새 페이지를 만드세요"
  • ID 1aaada269d1b8003adceda69cf7bcd97의 Notion 페이지를 '페이지에 추가할 새 콘텐츠가 있습니다.'라는 내용으로 업데이트합니다.
  • "Notion 페이지에 ID 1aaada269d1b8003adceda69cf7bcd97로 새 데이터베이스를 만드세요"
  • "ID 1aaada269d1b8003adceda69cf7bcd97을 사용하여 '완료' 상태의 항목을 Notion 데이터베이스에서 쿼리합니다."

클로드는 귀하의 요청에 따라 적절한 도구를 자동으로 사용합니다.

도구 사용 예

검색 노션
Search for "meeting notes" in my Notion workspace
페이지 콘텐츠 가져오기
Get the content of my Notion page with ID 1aaada269d1b8003adceda69cf7bcd97
새 페이지 만들기
Create a new page in Notion with title "Weekly Report" and content "This week we accomplished the following tasks..."
기존 페이지 업데이트
Update my Notion page with ID 1aaada269d1b8003adceda69cf7bcd97 with content "Adding this new information to the page."

제목을 업데이트할 수도 있습니다.

Update my Notion page with ID 1aaada269d1b8003adceda69cf7bcd97 with title "New Title" and content "New content to add."
새 데이터베이스 만들기
Create a new database in my Notion page with ID 1aaada269d1b8003adceda69cf7bcd97 with title "Task Tracker" and properties { "Task Name": { "title": {} }, "Status": { "select": { "options": [ { "name": "Not Started", "color": "red" }, { "name": "In Progress", "color": "yellow" }, { "name": "Completed", "color": "green" } ] } }, "Priority": { "select": { "options": [ { "name": "Low", "color": "blue" }, { "name": "Medium", "color": "yellow" }, { "name": "High", "color": "red" } ] } }, "Due Date": { "date": {} } }
데이터베이스 쿼리
Query my Notion database with ID 1aaada269d1b8003adceda69cf7bcd97 with filter { "property": "Status", "select": { "equals": "Completed" } }

정렬 기능을 추가할 수도 있습니다.

Query my Notion database with ID 1aaada269d1b8003adceda69cf7bcd97 with sort { "property": "Due Date", "direction": "ascending" }
데이터베이스 항목 업데이트

기존 데이터베이스 항목(데이터베이스 내의 페이지)의 속성을 업데이트합니다.

{ "tool_name": "update-database-entry", "tool_params": { "pageId": "page_id_of_database_entry", "properties": { "Status": { "select": { "name": "Completed" } }, "Priority": { "select": { "name": "High" } }, "Due Date": { "date": { "start": "2023-12-31" } } } } }

properties 매개변수는 Notion API가 데이터베이스의 특정 속성 유형에 대해 기대하는 구조와 일치해야 합니다. 속성 유형(텍스트, 선택, 날짜 등)에 따라 필요한 형식이 다릅니다.

데이터베이스 행 생성

사용자 정의 속성을 사용하여 기존 데이터베이스에 새 행을 추가합니다.

{ "tool_name": "create-database-row", "tool_params": { "databaseId": "your_database_id_here", "properties": { "Name": { "title": [ { "text": { "content": "New Task" } } ] }, "Status": { "select": { "name": "Not Started" } }, "Priority": { "select": { "name": "Medium" } }, "Due Date": { "date": { "start": "2023-12-15" } }, "Notes": { "rich_text": [ { "text": { "content": "This is a new task created via the API" } } ] } } } }

properties 매개변수에는 데이터베이스에 필요한 모든 속성이 포함되어야 하며 각 속성 유형에 대한 Notion API 구조를 따라야 합니다.

문제 해결

  • 도구가 표시되지 않으면 Claude for Desktop 로그를 확인하세요.
    tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
  • Notion API 키가 올바르게 설정되었는지 확인하고, 상호 작용하려는 페이지에 대한 액세스 권한이 통합에 부여되었는지 확인하세요.
  • 로그에 "예기치 않은 토큰" 오류가 표시되는 경우, console.log 명령문이 MCP 프로토콜을 방해하고 있을 가능성이 높습니다. 이 서버 버전은 이러한 문제를 방지하기 위해 업데이트되었습니다.

향후 개선 사항

  • 데이터베이스 쿼리 기능 추가
  • 더 나은 콘텐츠 형식을 구현하세요
  • 더 많은 블록 유형에 대한 지원 추가
-
security - not tested
F
license - not found
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

Claude와 다른 LLM이 Notion 작업 공간과 상호 작용할 수 있도록 하는 모델 컨텍스트 프로토콜 서버로, 검색, 추출, 페이지 생성 및 업데이트와 데이터베이스 관리와 같은 기능을 제공합니다.

  1. 특징
    1. 설정
      1. 데스크톱용 Claude 설정
        1. 서버 사용
          1. 도구 사용 예
        2. 문제 해결
          1. 향후 개선 사항

            Related MCP Servers

            • A
              security
              A
              license
              A
              quality
              A Model Context Protocol server that gives LLMs the ability to interact with Ethereum networks, manage wallets, query blockchain data, and execute smart contract operations through a standardized interface.
              Last updated -
              31
              323
              2
              TypeScript
              MIT License
            • -
              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
            • -
              security
              F
              license
              -
              quality
              A Model Context Protocol server that connects AI assistants like Claude to Notion workspaces, enabling them to view, search, create, and update Notion databases, pages, and content blocks.
              Last updated -
              275
              JavaScript
              • Apple
            • A
              security
              A
              license
              A
              quality
              A Model Context Protocol server that fetches up-to-date, version-specific documentation and code examples from libraries directly into LLM prompts, helping developers get accurate answers without outdated or hallucinated information.
              Last updated -
              2
              49,375
              6,021
              JavaScript
              MIT License
              • Linux
              • Apple

            View all related MCP servers

            ID: 1456h4f2lq