← KapaCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to Kapa
Snapshot Oct 7, 2026 · 18:03 UTC · version 0.1.0
Collection source: downloaded plugin package.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"description": "Set up a Kapa Notion source so a Notion workspace is ingested. Use when the user wants Kapa to answer from their Notion pages or databases.",
"included_files": [],
"name": "kapa-setup-notion",
"skill_md_contents": "---\nname: kapa-setup-notion\ndescription: Set up a Kapa Notion source so a Notion workspace is ingested. Use when the user wants Kapa to answer from their Notion pages or databases.\n---\n\n# Set up Notion\n\n## 1. The out-of-band setup, which is where this usually fails\n\nTell the user to:\n\n1. Open https://www.notion.so/profile/integrations and create an internal\n integration.\n2. Copy its internal integration secret.\n3. **Open each page or database Kapa should read and share it with that\n integration**, from the page's own menu.\n\nStep 3 is the one people miss. The token only reaches pages explicitly shared\nwith the integration, so a valid token with nothing shared ingests nothing and\nreports no error.\n\n## 2. Create the source\n\n`create_notion_source` with `project` and `name`. Keep the returned id.\n\n## 3. Check the token and list what it can see\n\n`validate_notion_workspace` with `api_token` confirms the token works.\n\n**A valid token does not mean it can see anything.** Always follow it with\n`list_notion_pages` and `list_notion_databases`: they answer with what was\nactually shared with the integration. An empty list here means step 3 of the\nintegration setup was skipped, not that the token is broken.\n\nBoth answer with at most 20 results, so pass `title_contains` to search.\n\nShow the user the real page titles and ask which to ingest, rather than asking\nthem to find page ids themselves.\n\n## 4. Configure it\n\n`set_notion_config` with `source_notion` and `api_token`. The token is the\nuser's secret: ask for it, never invent one.\n\nAsk whether to take everything the integration can see, or to narrow it:\n\n- `page_ids_include` takes single pages.\n- `page_ids_include_with_children` takes a page **and everything nested under\n it**, which is what to use for a section of a wiki.\n- `database_ids_include` takes databases. A database brings in the pages\n connected to it.\n\nA Notion page id is the last part of its URL: the 32 hex characters after the\ntitle.\n\n## When it ingests nothing\n\nThe integration has no pages shared with it. Send the user back to step 3\nrather than changing the config: the token is fine.\n\n## Finish the job\n\nSaving the configuration starts ingestion. There is no separate publish step,\nso once the config saves the source is live.\n\nThen call `list_sources` with `project_id` to confirm what the project holds.\n\n## Shared Kapa workflow rules\n\nTools act as the connected user with that user's project permissions. Resolve the intended project and use only authorized data. Do not invent credentials, source IDs, filters, or tool results. Check the available tool schema before passing arguments.\n\nExplain and obtain approval for ingestion and its quota cost before saving a configuration that starts ingestion or calling `start_crawl`; existing explicit approval for that exact action is sufficient. Ask the user to choose source scope and filters. Validate credentials and discover accessible content before saving. Keep credentials out of visible results, logs, and exported artifacts. Use a secure credential input if the host provides one.\n\nFor a web source, preview the exact configuration and inspect the extracted article content before ingestion. Report queued, running, failed, and completed states accurately. If uncertain about Kapa behavior, use `search_kapa_docs` when available.\n"
}SHA-256 of public snapshot: 38c51100e21ba908539e38d71c5545a9461b198da2f4c7bb7361aa7f37364ca4