Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"notion-cli": {
"args": [
"-y",
"skills"
],
"command": "npx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
A command-line interface for Notion using the remote MCP (Model Context Protocol).
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
npx -y 'skills' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked skills against OSV.dev.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in ai-ml / productivity
Dynamic problem-solving through sequential thought chains
Persistent memory using a knowledge graph
An autonomous agent that conducts deep research on any data using any LLM providers
🌊 The leading agent orchestration platform for Claude. Deploy intelligent multi-agent swarms, coordinate autonomous workflows, and build conversational AI systems. Features enterprise-grade architecture, distributed swarm intelligence, RAG integration, and native Claude Code / Codex Integration
MCP Security Weekly
Get CVE alerts and security updates for Notion Cli and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
A command-line interface for Notion using the remote MCP (Model Context Protocol).
Inspired by linear-cli - stay in the terminal while managing your Notion workspace.
Works great with AI agents — includes a skill that lets agents search, create, and manage your Notion workspace alongside your code.
go install github.com/lox/notion-cli@latest
git clone https://github.com/lox/notion-cli
cd notion-cli
mise run build
# Authenticate with Notion (opens browser for OAuth)
notion-cli auth login
# Search your workspace
notion-cli search "meeting notes"
# View a page with open comments inline by default
notion-cli page view "https://notion.so/My-Page-abc123"
# Hide page and block comments when you only want the body
notion-cli page view "Meeting Notes" --no-comments
# List your pages
notion-cli page list
# Create a page
notion-cli page create --title "New Page" --content "# Hello World"
notion-cli auth login # Authenticate with Notion via OAuth
notion-cli auth refresh # Refresh the access token
notion-cli auth status # Show authentication status
notion-cli auth logout # Clear stored credentials
# Official API fallback auth for features MCP cannot handle directly
notion-cli auth api setup # Opens the internal integrations page, prompts for token, warns if format looks wrong
notion-cli auth api status
notion-cli auth api verify
notion-cli auth api unset
notion-cli page list # List pages
notion-cli page list --limit 50 # Limit results
notion-cli page list --json # Output as JSON
notion-cli page view <page> # View page content with comments
notion-cli page view <page> --no-comments # Hide page and block comments
notion-cli page view <page> --raw # View raw Notion markup
notion-cli page view <page> --json # Output as JSON
notion-cli page create --title "Title" # Create a page
notion-cli page create --title "T" --content "Body text"
notion-cli page create --title "T" --parent <page-id>
notion-cli page archive <page-url-or-id> # Archive a page via the official API
# Upload a markdown file as a new page
notion-cli page upload ./document.md # Title from # heading or filename
notion-cli page upload ./document.md --title "Custom Title" # Explicit title
notion-cli page upload ./document.md --parent "Engineering" # Parent by name or ID
notion-cli page upload ./document.md --parent-db <db-id> # Upload as database entry
notion-cli page upload ./document.md --icon "📄" # Set emoji icon
notion-cli page upload ./document.md # Uploads standalone local images when configured
notion-cli page upload ./document.md --skip-local-images # Strips standalone local image lines instead
# Sync a markdown file (create or update)
notion-cli page sync ./document.md # Creates page, writes notion-id to frontmatter
notion-cli page sync ./document.md # Updates page using notion-id from frontmatter
notion-cli page sync ./document.md --parent "Engineering" # Set parent on first sync
notion-cli page sync ./document.md --parent-db <db-id> # Sync as database entry
notion-cli page sync ./document.md # Uploads standalone local images when configured
notion-cli page sync ./document.md --skip-local-images # Strips standalone local image lines instead
# Edit an existing page
notion-cli page edit <page> --replace "New content" # Replace all content
notion-cli page edit <
... [View full README on GitHub](https://github.com/lox/notion-cli#readme)