Andrey Avtomonov
e6d578c03f
feat(setup): add Claude Desktop target and MCP-first agent setup ( #114 )
...
* feat(setup): add Claude Desktop target and MCP-first agent setup
Adds `ktx mcp stdio` and a `claude-desktop` setup target that generates a
local plugin ZIP wiring the analytics skill and a stdio MCP config. Replaces
the CLI-only agent install mode with MCP+analytics (default) and an optional
admin CLI skill, renames the research skill to analytics, and lets interactive
setup pick project vs global scope when every target supports it. Extracts a
shared MCP server factory used by both HTTP and stdio entrypoints.
* Add MCP agent client setup support
* Polish setup output formatting
* Add MCP tool polish design spec
Design for slimming the MCP-registered surface from 25 to 11 tools,
introducing memory_ingest, applying the per-tool polish kit (annotations,
outputSchema, .describe(), in-band error wrapping, union-drift fixes,
type-narrowed jsonToolResult), emitting progress notifications on
sql_execution + sl_query, and refining the ktx-analytics SKILL.md to
match.
* Refine MCP tool polish design spec after adversarial review iteration 1
* Refine MCP tool polish design spec after adversarial review iteration 2
* Refine MCP tool polish design spec after adversarial review iteration 3
* refactor(context): rename memory capture service to ingest
* feat(mcp): slim research tool surface
* refactor(mcp): remove admin ports from server factory
* refactor(cli): rename text ingest memory port
* docs: update analytics skill for memory ingest
* chore: verify mcp surface rename
* Add MCP tool polish v1 surface change plan
* feat(context): polish mcp tool metadata
* fix(context): enforce resolved semantic layer compute sources
* feat(context): emit mcp query progress stages
* fix(context): keep mcp progress event internal
* Add MCP tool polish v1 metadata & progress plan
* Fix CI snapshot and docs checks
2026-05-16 11:39:55 +02:00
Luca Martial
42b688e934
Align docs with current KTX behavior ( #106 )
...
* docs: align docs with current KTX behavior
* fix: generate valid agent sl query command
* docs: clarify KTX product mechanics
* fix: use <ol> for runtime pipeline steps in product mechanics
The PipelineStep component renders <li> elements, but the RuntimeDiagram
wrapper was a plain <div> instead of a list element. This produced invalid
HTML and accessibility warnings. IngestionDiagram already used <ol>.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Add docs favicon
* docs: add semantic layer internals concept
* docs: refine documentation source label
* docs: clarify company documentation examples
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-15 15:31:51 -04:00
Andrey Avtomonov
b759a4a286
feat(mcp):added MCP server ( #97 )
...
* docs(specs): design research-agent MCP tools and ktx mcp daemon
Adds the 2026-05-14 design spec for exposing four new MCP tools
(discover_data, entity_details, dictionary_search, sql_execution),
shipping a ktx-research skill, and introducing an HTTP-only ktx mcp
daemon so external agents can use KTX as a research-capable context
layer.
* Refine research-agent MCP tools spec after adversarial review iteration 1
* Refine research-agent MCP tools spec after adversarial review iteration 2
* Refine research-agent MCP tools spec after adversarial review iteration 3
* Refine spec: drop connectionName compat carve-out and ground summary/snippet provenance per kind
* feat(daemon): validate read-only SQL with sqlglot
* feat(context): expose read-only SQL validation port
* feat(context): register MCP sql execution tool
* feat(context): execute MCP SQL through validated connector path
* test(context): update SQL analysis port fixtures
* docs: add research-agent MCP sql execution foundation plan
* feat(context): add scan-backed entity details service
* feat(context): register MCP entity details tool
* feat(context): expose local MCP entity details
* test(context): align entity details scan fixtures
* docs: add research-agent MCP entity_details plan
* feat(context): add dictionary search service
* feat(context): register MCP dictionary search tool
* feat(context): expose local MCP dictionary search
* docs: add research-agent MCP dictionary_search plan
* feat: add MCP discover data service
* feat: expose discover data MCP tool
* feat: wire local discover data MCP port
* docs: add research-agent MCP discover_data plan
* feat(cli): add mcp http security helpers
* feat(cli): host mcp over streamable http
* feat(cli): manage mcp daemon lifecycle
* feat(cli): add ktx mcp commands
* fix(cli): stabilize mcp daemon verification
* docs: add research-agent MCP http daemon plan
* feat(cli): install KTX research skill
* feat(cli): configure MCP clients in setup agents
* feat(cli): support Claude local MCP setup scope
* docs: add research-agent MCP setup-agents plan
* refactor(context): use connectionId in warehouse verification tools
* docs(context): update ingest verification prompts for connectionId
* docs: add research-agent MCP ingest contract convergence plan
* chore: build runtime artifacts in conductor setup
---------
Co-authored-by: Andrey Avtomonov <7889985+andreybavt@users.noreply.github.com>
2026-05-15 02:35:09 +02:00
Andrey Avtomonov
ce23aca4c4
fix: remove project from ktx config ( #95 )
2026-05-14 17:39:31 +02:00
Andrey Avtomonov
721f1a998f
feat(cli)!: remove ktx agent command ( #58 )
...
* feat(cli)!: remove ktx agent command
* test(context): update PGlite boundary guardrail
2026-05-13 13:01:56 +02:00
Luca Martial
9175451b01
Merge remote-tracking branch 'origin/main' into select-tables-on-connect
...
# Conflicts:
# packages/cli/src/setup-agents.test.ts
2026-05-12 21:33:12 -07:00
Luca Martial
9a8cb08192
Refine setup table selection flow
2026-05-12 21:31:11 -07:00
Luca Martial
2ede86263d
Align agent setup completion test with state file
2026-05-12 18:23:04 -07:00
Andrey Avtomonov
e15a4ebaec
feat(cli): clean up command surface
2026-05-12 23:51:46 +02:00
Luca Martial
60457e9407
Improve schema setup and Notion ingest UX ( #14 )
...
* Improve schema setup and Notion ingest UX
* Handle Postgres network scan failures
* WIP: save local changes before main merge
* Refine setup prompt choices
* Tighten ingest reconciliation guidance
* Commit setup config updates
* Canonicalize unmapped fallback details
* Count reconciliation actions in reports
* Harden semantic layer source validation
* Return wiki content after edits
* Validate SL sources against manifests
* Validate wiki refs before writes
* Simplify CLI next steps
* Clarify agent setup summary
* Surface dbt target SL sources
* Recover SL write fallbacks
* Preserve failed context build metadata
* Track raw paths for ingest actions
* test(cli): update seeded demo expectations
* fix(ingest): scope fallback recovery checks
* fix(sl): tighten source validation guards
* fix(wiki): ignore empty embedding vectors
* Improve Notion ingest UX
* Enforce flat wiki keys
* test(context): update wiki key assertion
---------
Co-authored-by: Andrey Avtomonov <andreybavt@gmail.com>
2026-05-12 22:56:58 +02:00
Luca Martial
2f729c9413
Merge remote-tracking branch 'origin/main' into luca-martial/connector-credential-paste-ux
...
# Conflicts:
# packages/cli/src/setup-agents.ts
2026-05-11 00:34:43 -07:00
Luca Martial
c82989119b
Update setup and ingest flows
2026-05-10 23:13:17 -07:00
Luca Martial
1a47297e43
pin agent skill and MCP configs to absolute CLI path
...
Generated agent skill files and MCP configs previously assumed `ktx`
was on PATH. This resolves the CLI entry point via `import.meta.url`
and `process.execPath` so agents work without any PATH setup.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-10 16:01:58 -07:00
Andrey Avtomonov
3ce510b55b
rename klo to ktx
2026-05-10 23:51:24 +02:00
Andrey Avtomonov
1a42152e6f
Initial open-source release
2026-05-10 23:12:26 +02:00