Slash command at custom-skills/31-notion-organizer/commands/notion-search.md documents the CLI surface and JSON output schema. CLAUDE.md gains a Semantic Search section explaining the 4-stage pipeline and env var requirements. requirements.txt notes the optional anthropic SDK dependency (the skill falls back to the claude CLI if missing). Final task of Phase 3b-i. 30 tests passing. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1.9 KiB
1.9 KiB
description, argument-hint
| description | argument-hint |
|---|---|
| Search Notion workspace semantically (LLM-expanded + reranked). | <query> [--databases ID,...] [--filter JSON] [--limit N] [--no-rerank] [--no-expand] [--no-cache] [--json] |
Search the user's Notion workspace using semantic search powered by Claude Haiku query expansion and result reranking. Closes the gap left by Notion's keyword-only native search — handles synonyms, related concepts, and Korean ↔ English cross-language queries.
Usage
Run the search script with the user's arguments:
cd ~/Project/our-claude-skills/custom-skills/31-notion-organizer/code/scripts
python3 notion_search.py "$ARGUMENTS"
Common patterns
- Default browse mode (terminal table):
notion-search "AI agents in 2026" - JSON for piping (e.g. into the future notion-to-notebooklm push skill):
notion-search "AI agents" --json | jq '.[].id' - Constrain to specific databases:
notion-search "MCP" --databases f8f19ede-32bd-43ac-9f60-0651f6f40afe - Property filter (per-database mode):
notion-search "MCP" --databases ID --filter '{"Status": "Done"}' - Fast mode (no LLM):
notion-search "exact phrase" --no-rerank --no-expand
Requirements
NOTION_API_KEYorNOTION_TOKENenv var- One of:
anthropicSDK installed +ANTHROPIC_API_KEYenv var, or- Claude Code CLI (
claudeon PATH)
The skill auto-detects which is available; SDK is preferred when both are present.
Output schema (JSON mode)
[
{
"id": "abc-def-...",
"url": "https://notion.so/...",
"title": "Page title",
"relevance": 0.94,
"snippet": "Why it matched",
"excerpt": "First paragraph text...",
"properties": {"Status": "Done", "Topic": ["AI", "MCP"]}
}
]
relevance and snippet are null when --no-rerank is set. This schema is the contract for downstream tools (e.g., the future notion-to-notebooklm push skill).