← ClaudeAtlas

notionlisted

Work with Notion through the right API — the MCP integration by default, and the internal v3 API (token_v2 cookie, /api/v3/) for the operations MCP provably cannot do: select-option recolor/removal, date formats, reminders, conditional row colours, grouped views, bulk row writes, and anything destructive. TRIGGER when: reading or writing Notion pages, databases, rows, schemas or views; an mcp__plugin_Notion_notion__* call failed, was rejected, or silently did nothing; or the user asks to change how a Notion table looks. DO NOT TRIGGER for Notion-adjacent work that never calls an API (writing prose destined for Notion), or when a task-specific skill already owns the database (flightradar24, update-conventions) — start there and come here only for the underlying technique.
AnotherSava/claude-code-common · ★ 1 · AI & Automation · score 71
Install: claude install-skill AnotherSava/claude-code-common
# Notion: two APIs, one decision table Notion is reachable two ways, and picking wrong is the usual failure. **Default to MCP.** Drop to the internal v3 API only for an operation on the closed list below — not on the first error. ## Context - Toolbox tooling: !`python -c "import notion_tools,pathlib;print(pathlib.Path(notion_tools.__file__).resolve().parents[3])" 2>/dev/null || echo MISSING` - Notion token: !`T=$(python -c "import notion_tools,pathlib;print(pathlib.Path(notion_tools.__file__).resolve().parents[3])" 2>/dev/null) && ( cd "$T" && doppler secrets --only-names 2>/dev/null | grep -q NOTION_TOKEN_V2 && echo PRESENT || echo MISSING ) || echo NO-TOOLING` If **Toolbox tooling** is `MISSING`, only the MCP half of this skill is available: the v3 client is the `notion_tools` package from the user's `toolbox` repo, installed with `pip install -e .`. If **Notion token** is `MISSING`, v3 cannot authenticate — see *Running a v3 call* below. ## Which surface | Operation | Surface | Why | |---|---|---| | Read rows, filter, aggregate | **MCP** `notion-query-data-sources` | Real SQL. Avoids the v3 view-id trap entirely. | | Read a page, resolve ancestry, get inline image URLs | **MCP** `notion-fetch` | Returns pre-signed S3 image URLs needing no cookie — v3 needs the proxy dance. | | Edit page properties (under ~50 rows) | **MCP** `notion-update-page` | Safer, no transaction to hand-assemble. | | Create a database with a simple schema | **MCP** `notion-create-database` | One