VOOZH about

URL: https://apify.com/constant_quadruped/notion-mcp-server

โ‡ฑ Notion MCP Server - AI Agent Integration for Notion API ยท Apify


Pricing

Pay per usage

Go to Apify Store

Notion MCP Server for AI agents (Claude, GPT, Cursor). 20 Notion API operations: search pages, query databases, create content, manage blocks, comments, users. Model Context Protocol server with full CRUD support.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

๐Ÿ‘ CQ

CQ

Maintained by Community

Actor stats

0

Bookmarked

13

Total users

3

Monthly active users

2 months ago

Last modified

Share

Cloud MCP Server for Notion. Connect AI agents (Claude, GPT, Cursor) to your Notion workspace with 20 API operations for pages, databases, blocks, and comments.

Features

  • 20 Operations - Full Notion API coverage
  • Demo Mode - Test without authentication
  • URL Support - Accept Notion URLs or IDs
  • Pagination - Handle large datasets with cursors
  • Error Handling - Clear messages with API codes

Quick Start

Demo Mode (No Setup)

{
"operation":"demo"
}

Search Your Workspace

{
"notionToken":"ntn_your_token_here",
"operation":"search",
"query":"Meeting Notes"
}

Setup

1. Create a Notion Integration

  1. Go to notion.so/profile/integrations
  2. Click New integration
  3. Name it (e.g., "Apify MCP")
  4. Copy the token (starts with ntn_)

2. Share Pages with Integration

For each page/database you want to access:

  1. Open the page in Notion
  2. Click ... menu โ†’ Connections
  3. Select your integration

Input Parameters

ParameterTypeDescription
notionTokenstringNotion API token (ntn_ or secret_)
operationstringAPI operation to perform
querystringSearch query text
pageIdstringPage ID or Notion URL
databaseIdstringDatabase ID or URL
blockIdstringBlock ID or URL
userIdstringUser ID
parentPageIdstringParent page for new pages
parentDatabaseIdstringParent database for entries
titlestringTitle for new pages/databases
propertiesstringJSON properties for create/update
childrenstringJSON block children to append
filterstringJSON filter for queries
sortsstringJSON sort configuration
startCursorstringPagination cursor
pageSizeintegerResults per page (max 100)

Operations

Search & Discovery

OperationDescriptionRequired
demoTest without token-
searchFind pages/databasesquery

Pages

OperationDescriptionRequired
get_pageGet page detailspageId
create_pageCreate pageparentPageId or parentDatabaseId, title
update_pageUpdate propertiespageId, properties
archive_pageArchive pagepageId
get_page_propertyGet property valuepageId, propertyId

Databases

OperationDescriptionRequired
get_databaseGet schemadatabaseId
query_databaseQuery rowsdatabaseId
create_databaseCreate databaseparentPageId, title
update_databaseUpdate databasedatabaseId

Blocks

OperationDescriptionRequired
get_blockGet block contentblockId
get_block_childrenGet childrenblockId
append_block_childrenAdd blocksblockId, children
update_blockUpdate blockblockId
delete_blockDelete blockblockId

Comments & Users

OperationDescriptionRequired
get_commentsGet commentsblockId
create_commentAdd commentpageId, richText
list_usersList workspace users-
get_userGet user detailsuserId
get_bot_userGet integration info-

Examples

Search Pages

{
"notionToken":"ntn_xxx",
"operation":"search",
"query":"Project Plan"
}

Get Page by URL

{
"notionToken":"ntn_xxx",
"operation":"get_page",
"pageId":"https://notion.so/My-Page-abc123def456"
}

Query Database with Filter

{
"notionToken":"ntn_xxx",
"operation":"query_database",
"databaseId":"abc123",
"filter":"{\"property\":\"Status\",\"select\":{\"equals\":\"Done\"}}"
}

Create Page with Content

{
"notionToken":"ntn_xxx",
"operation":"create_page",
"parentPageId":"parent-id",
"title":"New Page",
"children":"[{\"object\":\"block\",\"type\":\"paragraph\",\"paragraph\":{\"rich_text\":[{\"type\":\"text\",\"text\":{\"content\":\"Hello world!\"}}]}}]"
}

Output Schema

FieldTypeDescription
operationstringOperation performed
successbooleanSuccess status
objectTypestringNotion object type
objectIdstringPrimary object ID
contentobjectReturned data
resultCountintegerNumber of results
hasMorebooleanMore results available
nextCursorstringPagination cursor
errorstringError message
errorCodestringNotion API error code

Success Response

{
"operation":"search",
"success":true,
"objectType":"search_results",
"content":[...],
"resultCount":10,
"hasMore":false
}

Error Response

{
"operation":"get_page",
"success":false,
"error":"[object_not_found] Could not find page",
"errorCode":"object_not_found"
}

MCP Integration

Claude Desktop

{
"mcpServers":{
"notion":{
"command":"npx",
"args":["-y","@anthropic/apify-mcp-client","constant_quadruped/notion-mcp-server"]
}
}
}

Apify Client (JavaScript)

import{ ApifyClient }from'apify-client';
const client =newApifyClient({token:'YOUR_APIFY_TOKEN'});
const run =await client.actor('constant_quadruped/notion-mcp-server').call({
notionToken:'ntn_xxx',
operation:'search',
query:'Meeting Notes'
});
const{ items }=await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Apify Client (Python)

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("constant_quadruped/notion-mcp-server").call(run_input={
"notionToken":"ntn_xxx",
"operation":"search",
"query":"Meeting Notes"
})
items = client.dataset(run["defaultDatasetId"]).list_items().items
print(items)

Troubleshooting

IssueSolution
"API token is invalid"Token must start with ntn_ or secret_. Regenerate at notion.so/profile/integrations
"Could not find object"Add integration to page: ... โ†’ Connections โ†’ Select integration
Rate limitingNotion allows 3 req/sec. Use pagination for large datasets

Resources

License

MIT

You might also like

Notion MCP Server

penguineer/notion-mcp-server

Connect AI assistants to your Notion workspace. Create, read, update, and search pages & databases directly from Claude, ChatGPT, or Cursor. Full CRUD access, pay-per-use pricing. No subscription needed.

Notion API - Database & Page Automation

alizarin_refrigerator-owner/notion-api---database-page-automation

Automate your Notion workspace with the official API. Query databases, create and update pages, manage blocks, search content, and sync data. Perfect for CMS automation, content pipelines, project management, and knowledge base workflows.

Time MCP Server

agentify/time-mcp-server

An MCP server implementing the Model Context Protocol (MCP) for time-related operations.

Notion MCP Server: Secure & Enterprise Ready

piskunlab/notion-mcp-server

Connect Claude Desktop and custom AI Agents to your Notion workspace via Model Context Protocol (MCP). Give your AI a "second brain": let it search, read, and write notes securely. Features Enterprise-grade security, SSE transport, and easy setup.

Web Search MCP Server

abotapi/ai-search-mcp-server

An Apify MCP Server that provides real-time web search capabilities for AI agents via the Model Context Protocol (MCP).

Notion Marketplace Scraper

webdatalabs/notion-marketplace-scraper

Scrape templates, categories, ratings, and creator profiles from Notion's official template marketplace. Perfect for competitive analysis, market research, creator monitoring, and discovering trending Notion templates.

20

5.0

Confluence MCP Server

scraper_guru/confluence-mcp-server

A Model Context Protocol (MCP) server that enables AI assistants to interact with Confluence Cloud. Search pages, read content, create and update documentation, manage spaces โ€” directly from Claude, Cursor, or any MCP client.

๐Ÿ‘ User avatar

LIAICHI MUSTAPHA

1

Related articles

Best MCP servers for developers
Read more