Claude Marketplaces
SkillsMCP serversMarketplacesDigestTools
Submit

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP servers by category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control
Claude Marketplaces

An independent directory of skills, plugins and MCP servers for Claude Code. Not affiliated with Anthropic.

Browse

  • Skills
  • MCP servers
  • Marketplaces
  • Weekly digest
  • Skill index
  • MCP index
  • Marketplace index

Site

  • About
  • Tools
  • Submit
  • Feedback
  • Privacy
  • llms.txt
  • Plugins reference

Maker

  • Snug
  • Agent Caffeine
  • knobs
  • Wax
  • Vectoys
  • mertduzgun.com
Crafted at
Skills/Documentation
kaelio avatar

Notion Synthesize

kaelio/ktx

Transforms raw Notion pages, databases, and evidence clusters into permanent wiki entries and semantic-layer sources inside a knowledge management system. The workflow is rigid: read assigned Notion content, search for overlapping wiki pages to avoid duplicates, pull supporting evidence chunks, then write consolidated pages that cite exact source paths and last-edited dates. It handles collision detection by searching existing wiki entries and semantic-layer sources before creating new ones, and includes a fallback protocol when Notion references warehouse tables that don't exist or lack connection mappings. The identifier verification steps are thorough, requiring entity_details and sql_execution probes to confirm every schema.table reference actually resolves before committing it to memory. Built for memory_agent callers working through staged Notion content in batches.

GitHub stars
1.1K
last updated
Jun 11, 2026
View on GitHubSave

Install

$ npx -y skills add kaelio/ktx --skill notion_synthesize --agent claude-code

Installs into .claude/skills of the current project.

Files

Notion Cluster Synthesis

Use this skill when a WorkUnit contains staged Notion content from pages/**, databases/**, data-sources/**, or clustered Notion evidence.

Role

Each WorkUnit is either a single Notion page/span or a topical cluster of related Notion pages, pre-grouped by embedding similarity. Read the assigned raw files, then write a small set of durable wiki entries and, when applicable, semantic-layer sources that synthesize the WorkUnit's knowledge. Write final memory directly; do not write candidates.

Required Workflow

  1. Read the WorkUnit notes and rawFiles list. Page content lives in page.md; metadata.json holds title, path, object type, data-source ids, last edited metadata, and properties.
  2. For each assigned page, call read_raw_file, or read_raw_span for oversized pages when the notes specify a span.
  3. Search wiki_search for existing pages that overlap the WorkUnit topics. Prefer updating an existing page over creating a duplicate.
  4. Use context_evidence_search, context_evidence_read, and context_evidence_neighbors to pull supporting chunks when indexed evidence is relevant. Pass chunkId and documentId values verbatim as returned by the evidence tools.
  5. Write durable business knowledge with wiki_write. Aim for a small number of high-quality pages per WorkUnit or cluster. Include rawPaths with the exact Notion raw files that support each page.
  6. When the Notion content defines a reusable dataset, metric, segment, join rule, source-of-truth mapping, or table with explicit columns, load sl_capture, discover existing sources first with sl_discover or sl_read_source, then use sl_write_source or sl_edit_source only for a confirmed mapped non-Notion target source. Include rawPaths with the exact Notion raw files that support the SL action. If no mapped target exists, call emit_unmapped_fallback and keep the content wiki-only.
  7. For every deleted raw path in the Eviction Set, call eviction_list, decide retention, then emit_eviction_decision. Do this even when no wiki write is needed.

What To Capture

Capture durable, reusable company knowledge:

  • metric definitions, KPI formulas, named business concepts, and reusable filters
  • workflows, policies, ownership rules, approval conventions, and source-of-truth mappings
  • data-source row pages that describe tables, columns, semantic models, dashboards, or business entities
  • cross-system aliases connecting Notion terms to warehouse, dbt, Looker, Metabase, or MetricFlow names
  • caveats, conflicts, supersession notes, and customer/product assumptions affecting future analysis

Skip noisy or transient content:

  • meeting notes with no reusable rule
  • task lists, project status updates, and time-bounded snapshots
  • duplicate docs with no new fact
  • database metadata pages when row pages contain the actual business content
  • transient announcements and long page summaries

Quality

Prefer fewer, stronger entries. Every wiki entry must cite at least one Notion page or row using its path and last edited date when available. When evidence conflicts, write a conflict note inside the wiki page rather than choosing silently.

If a clustered WorkUnit includes several related pages, synthesize the shared rule or concept instead of writing one thin page per source. For oversized page spans, read only the assigned span unless the WorkUnit explicitly asks for neighboring context.

Search existing wiki pages for the same tables: or sl_refs: frontmatter and for source-of-truth aliases before creating a new page. If an existing page already documents the same warehouse object or business concept, update it instead of creating a differently named duplicate.

Citation Style

## Revenue Recognition
- Booked revenue excludes refunds and test accounts.
- Source: Notion - Company Handbook / Finance / Revenue Recognition, last edited 2026-04-12.
- Conflict note: An older Sales Ops page uses gross revenue before refunds; treat the Finance Handbook as current unless Finance says otherwise.

Semantic-Layer Rules

  • Load sl_capture before writing or editing SL sources.
  • Discover existing sources first with sl_discover; read existing source YAML before editing.
  • Prefer overlays on manifest-backed sources over standalone SQL.
  • If Notion describes a dashboard or metric but does not define executable logic, write a wiki page and attach sl_refs only after confirming the referenced source exists.
  • Notion dataSourceCount counts Notion databases/data sources only. It does not prove that a warehouse/dbt table has or lacks a mapped semantic-layer source.
  • Do not create SL sources under the Notion connection just because a page mentions a warehouse, dbt, Looker, or Metabase object. Use the mapped warehouse/source connection after discovery, or emit an unmapped fallback and write wiki-only.
  • Distinguish fallback reasons precisely: if a non-Notion warehouse/dbt connection exists but sl_discover cannot find the named table/source, use no_physical_table; reserve no_connection_mapping for cases where there is no plausible non-Notion target connection at all.
  • If sl_discover resolves the table/source, do not call emit_unmapped_fallback for that table. Use the resolved source for sl_refs, overlay edits, or wiki-only documentation.
  • When calling emit_unmapped_fallback, pass the table or source identifier as tableRef (e.g. tableRef: "<schema>.<table>") - the tool generates the canonical detail string from the reason code and tableRef. Use the optional clarification field only to add context that does not contradict the reason. Do not restate the reason in clarification.

Identifier Verification Protocol

Before writing a wiki page or SL source on any topic:

  1. discover_data({query: "<topic>"}) - see what wikis, SL sources, and raw tables already exist. Prefer updating existing pages over creating new ones.

Before emitting any schema.table or schema.table.column into a wiki body, SL source, tables: frontmatter, sl_refs, or emit_unmapped_fallback:

  1. entity_details({connectionId, targets: [{display: "<identifier>"}]}) - confirm the identifier resolves; inspect native types, FK/PK, and sampleValues.
  2. For literal values from the source, such as status codes or plan tiers, check whether they appear in entity_details sampleValues for the relevant column. If sampleValues is short or the sample may have missed real values, run a sql_execution probe with the same warehouse connection id: sql_execution({connectionId, sql: "SELECT DISTINCT <col> FROM <ref> LIMIT 50"}).
  3. If the candidate identifier still does not resolve, do one of:
    • Use sql_execution({connectionId, sql: "SELECT 1 FROM <ref> LIMIT 0"}). If it errors, the identifier is fictional.
    • Wrap the identifier in [unverified - from <rawPath>] in the wiki body, citing the exact raw path that mentioned it.
    • When recording emit_unmapped_fallback with no_physical_table, include the failing probe error in clarification.
  4. Never copy <schema>.<table> placeholder strings from these instructions into output.

Tools

Allowed: read_raw_file, read_raw_span, wiki_search, wiki_read, wiki_write, discover_data, entity_details, sql_execution, sl_discover, sl_read_source, sl_write_source, sl_edit_source, sl_validate, context_evidence_search, context_evidence_read, context_evidence_neighbors, emit_unmapped_fallback, eviction_list, emit_eviction_decision.

Not allowed: context_candidate_write, context_candidate_mark.

SKILL.md on GitHub

Sponsors

SnugThe clipboard manager you and your agent can use, safelyAgent CaffeineClose your lid, come back to finished workWaxBlock anything with supervision, without erasing your iPhoneOpen StepsSponsoredFree and open-source skills that make AI coding agents easier to understand, verify, and control.

Details

Repository
github.com/kaelio/ktx
Categories
Documentation, Office & Documents
License
Apache-2.0
First seen
Jun 11, 2026

More from kaelio/ktx

All 15
  • Sl
  • Sl Capture
  • Wiki Capture
  • Ktx Analytics
  • Dbt Ingest
  • Historic Sql Patterns
  • Historic Sql Table Digest
  • Ingest Triage
  • Ktx
  • Live Database Ingest
  • Looker Ingest
  • Lookml Ingest
  • Metabase Ingest
  • Metricflow Ingest

Recommended

More Documentation
1linzzzzzz avatarvideo-clip-extractorlinzzzzzz/openclipProcesses videos to identify engaging moments, generate transcripts, and create highlight clips with artistic titles and custom cover images. Use when user need0installs
2longbridge avatargenerate-component-storylongbridge/gpui-componentCreate story examples for components. Use when writing stories, creating examples, or demonstrating component usage.0installs
3lukerenton avatarcore-brainstormlukerenton/explore-claude-codeCollaborative brainstorming mode for thinking through problems, ideas, and features before planning. Use when the user wants to discuss, explore ideas, or think0installs
4luochang212 avatardive-into-langgraphluochang212/dive-into-langgraphA comprehensive guide and reference for building agents using LangGraph 1.0, including ReAct agents, state graphs, and tool integrations.0installs
5malob avatarmcp-buildermalob/nix-configGuide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when b0installs
6mc-zuri avatarcreate-analyzermc-zuri/mineflayer-bedrockCreate a new packet analyzer for Minecraft Bedrock logs. Generates template code, provides documentation links, and guides testing workflow.0installs