Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add avizmarlon/agent-skills --skill notion-batch-patterngit clone --depth 1 https://github.com/avizmarlon/agent-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/avizmarlon/agent-skills/notion-batch-pattern)<a href="https://agentmods.dev/skills/avizmarlon/agent-skills/notion-batch-pattern"><img src="https://agentmods.dev/badge/skills/avizmarlon/agent-skills/notion-batch-pattern/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/avizmarlon/agent-skills/notion-batch-pattern"><img src="https://agentmods.dev/badge/skills/avizmarlon/agent-skills/notion-batch-pattern.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00055 | $0.01556 |
| Opus 5 | $0.00028 | $0.00778 |
| Sonnet 5 | $0.00011 | $0.00311 |
| Haiku 4.5 | $0.00006 | $0.00156 |
Grade A, and why
notion-batch-pattern scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
response = requests.post( How it starts
The opening of the file, as written. The whole thing — 151 lines — stays where its author put it; the contents beside it link to each section on GitHub.
When to use Notion API vs. MCP
Notion API (REST) is mandatory for batch operations; MCP (Model Context Protocol) is for single-page CRUD only.
The problem with MCP for batch work
Most Notion MCP implementations have critical limitations for scaled operations:
- Hard cap on results: semantic search limited to ~25 results per query with no pagination mechanism
- No full database scan: cannot iterate over all rows in a database reliably
- Whack-a-mole pattern: multiple sequential queries required to retrieve complete data, leading to repeated context loading and inefficient execution
- No file uploads: many MCP versions do not support file upload operations
Real-world impact: A task requiring batch standardization of 65+ rows may take 4+ separate API calls via MCP (each capped at 25 results, no pagination), whereas the same task via Notion REST API with proper pagination completes in a single pass.
Decision tree
| Operation | Recommended Tool | Why |
|---|---|---|
| Create 1 page, read 1 page, update single entry, inline comment/annotation | MCP | Simpler setup, no auth management overhead |
| Query entire database, batch update (≥3 rows), full scan/inventory, any operation requiring pagination | Notion REST API | Full pagination support, no result caps, complete control |
| File upload (bulk or single) | Notion REST API | MCP rarely supports this; REST API has official file upload endpoints |
| Database creation or replication of page structure | Notion REST API | Programmatic structure building requires full API control |
Using Notion REST API
Prerequisites
- Notion API Token — create at https://www.notion.com/my-integrations and grant permissions to databases/pages you need.
- Store securely — save the token in environment variables (e.g.,
NOTION_TOKEN) or a credential vault; never hardcode. - Pagination awareness — Notion returns max 100 items per request; use
start_cursorandnext_cursorfor full retrieval.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 151 lines · 55 tokens per session scan A fb17eee98c29
notion-batch-pattern is a skill published in the GitHub repository avizmarlon/agent-skills (2 stars, last pushed 2mo ago), licensed MIT. It adds 55 tokens to every session and 1,556 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
notebooklm-manager
Manages NotebookLM notebooks — query, add, list, search, enable/disable, remove. Use when a notebooklm.google.com URL appears or user mentions NotebookLM. Handles URLs through its own Chrome agent — do not navigate directly. Requires: claude-in-chrome MCP.
lx
Codebase exploration tool that reads many files or whole directories in a single call, with per-file headers, glob include/exclude filters, function/type skeleton extraction (signatures only, no bodies), and head/tail line slicing.
find-plugin-file
This skill should be used when needing to locate files within the Claude Code plugins cache directory (/.claude/plugins/cache). Triggers include finding tool scripts, skill files, or any plugin resource when the hardcoded path is unknown or varies by plugin version. Use when slash commands or orchestrators need to…
flow-lean
Use when the user explicitly asks for Flow Lean, lean or less verbose output, action-first responses, expansion of a compressed Flow Lean answer, or Flow Lean recap and skills-footer controls.
morning-triage
Discovery for an autonomous loop — find this turn's work instead of being handed it. Reads what changed since the last run (failed CI, new issues, merged commits), judges what's actually worth acting on, writes findings to a durable state file, and hands each off to the SDLC loop with a stop-condition. Use as the…
eco-max
Maximum-savings variant of /eco - the same frugality rules PLUS a low reasoning-effort override for the invoked task. Use for routine chores (rename, small fix, quick question, boilerplate) when the user wants absolute minimum token spend; prefer plain /eco for hard or high-stakes work. Works in any language.