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
Luca Martial
c2750dd797
refactor(cli): hide internal setup options and remove dead flags ( #79 )
...
Hide advanced/internal `ktx setup` options from --help output using
.hideHelp() so the command surface is approachable for new users. Remove
the --project, --agent-scope, and --skip-initial-source-ingest flags
that are no longer needed. Update docs and tests to match.
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-13 17:55:25 -04:00
Andrey Avtomonov
754e4a9039
feat(cli): improve setup progress UX ( #69 )
2026-05-13 17:01:48 +02:00
Andrey Avtomonov
c202202e6b
feat(cli): clean up wiki and sl commands ( #65 )
...
* feat(cli): clean up wiki and sl commands
* test(scripts): update package artifact CLI smoke assertion
2026-05-13 15:41:10 +02:00
Andrey Avtomonov
b75576279c
fix: store Metabase mappings in ktx.yaml ( #61 )
...
* fix: store Metabase mappings in ktx.yaml
* docs: note KTX has no public users
* refactor: drop setup progress compatibility
2026-05-13 13:55:21 +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
8ceb3bc7b9
Confirm skipped optional setup selections
2026-05-12 18:23:03 -07:00
Luca Martial
fcdf5234c6
Merge pull request #45 from Kaelio/luca/klo-654-improve-indents
...
feat(cli): add box-drawing prefixes to setup messages
2026-05-12 19:58:55 -04:00
Luca Martial
07ac71ea7c
feat(cli): add box-drawing prefixes to remaining setup stdout messages
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-12 16:58:09 -07:00
Luca Martial
e13350c970
Merge pull request #47 from Kaelio/luca-martial/save-setup-in-dot-ktx
...
Save setup completion state in .ktx/setup/state.json
2026-05-12 19:27:26 -04:00
Luca Martial
dbfee6b453
feat(cli): migrate all setup steps to use local state for completion tracking
...
Update every setup step to write completed_steps to .ktx/setup/state.json
instead of ktx.yaml, stripping legacy entries from config on write.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-12 16:26:23 -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