Skip to content

clawql-mcp 3.3.0

Choose a tag to compare

@danielsmithdevelopment danielsmithdevelopment released this 17 Apr 20:38
· 296 commits to main since this release

[3.3.0] - 2026-04-17

CI

  • Helm / Kustomize: workflow-scripts installs Helm v3.17.0 and runs make lint-k8s-manifests (helm-lint + kustomize-local-lint).

  • Docker publish (.github/workflows/docker-publish.yml): daily at 06:00 UTC and workflow_dispatch — builds docker/Dockerfile, pushes to ghcr.io/danielsmithdevelopment/clawql-mcp with tags latest, nightly, sha-*, and nightly-YYYYMMDD on scheduled runs; GHA BuildKit cache enabled; multi-platform linux/amd64 + linux/arm64 (Docker Desktop on Apple Silicon).

  • Prettier autofix job on same-repo pull requests: when the Lint & format job fails, applies npm run format and pushes a single commit style: apply Prettier [prettier-autofix] if there are diffs. Loop guards: job runs only when lint failed; skips if the actor is github-actions[bot]; skips if [prettier-autofix] is already in HEAD; does not commit when Prettier makes no changes. Fork PRs are excluded (token cannot push to forks).

Changed

  • Helm chart charts/clawql-mcp: enableCache defaults to true (sets CLAWQL_ENABLE_CACHE=1) so the in-process cache tool is registered unless --set enableCache=false.

  • make local-k8s-mcp-delete: removes deployment/clawql-mcp-http and svc/clawql-mcp-http in clawql so Helm can install after a prior kubectl apply / Kustomize deploy; local-k8s-docker-desktop.sh prints this hint when helm upgrade fails.

  • make local-k8s-up: defaults to Helm (charts/clawql-mcp/values-docker-desktop.yaml). CLAWQL_LOCAL_K8S_INSTALLER=kustomize uses docker/kustomize/overlays/local (no Helm). vault.hostPath (Helm) / JSON patch (Kustomize) mount ~/.ClawQL. CLAWQL_LOCAL_K8S_BUILD_IMAGE=1 builds clawql-mcp:latest locally.

  • memory_recall: when CLAWQL_MERKLE_ENABLED=1, JSON includes merkleSnapshot; when CLAWQL_CUCKOO_ENABLED=1 and embeddings run, vector-ranked chunks are filtered by the Cuckoo membership filter with cuckooVectorChunksDropped (#81).

  • Developer tooling: root npm run format / format:check now includes the docs site: npm run format --prefix website (Prettier on website/ mdx/ts/tsx). .prettierignore no longer skips all of website/—only build artifacts (.next/, node_modules/, etc.). CI runs npm ci --prefix website before format:check so site Prettier plugins resolve.

  • Codegen: pregenerate-graphql and pregenerate-google-top50-graphql use tsx (not Bun). Added npm run graphqltsx src/graphql-proxy.ts for the standalone GraphQL proxy documented in the README.

  • cache tool: storage is in-process only (no SQLite / no CLAWQL_CACHE_DB_PATH). Durable memory remains memory_ingest / memory_recall.

  • cache tool: LRU eviction when CLAWQL_CACHE_MAX_ENTRIES is reached (default 10_000); get / set move keys to most-recently-used.

Added

  • Helm chart charts/clawql-mcp: deploy clawql-mcp-http with configurable image (GHCR by default), Service (LoadBalancer / ClusterIP), optional Ingress, /vault via PVC or vault.hostPath, gRPC env toggles; values-docker-desktop.yaml for make local-k8s-up; make helm-lint. Docs: docs/helm.md; site: /helm.
  • Cuckoo filter + Merkle snapshot for hybrid memory.db (#25, #37): enable with CLAWQL_CUCKOO_ENABLED=1 and CLAWQL_MERKLE_ENABLED=1; modules src/cuckoo-filter.ts, src/merkle-tree.ts, src/memory-artifacts.ts; helpers chunkIdMaybeInMemoryIndex, loadVaultMerkleSnapshotFromDb. Postgres migration 2 adds clawql_cuckoo_chunk_membership and clawql_vault_merkle when using CLAWQL_VECTOR_DATABASE_URL.
  • cache MCP tool (#75): opt-in via CLAWQL_ENABLE_CACHE; operations set / get / delete / list / search; in-process Map only (not persisted — use memory_ingest / memory_recall for vault); CLAWQL_CACHE_MAX_VALUE_BYTES per value (default 1 MiB). Implementation: src/clawql-cache.ts.
  • src/clawql-optional-flags.ts: Zod-validated optional feature flags (ENABLE_GRPC, CLAWQL_EXTERNAL_INGEST, planned CLAWQL_ENABLE_* for cache/schedule/notify/vision); src/external-ingest.ts uses the shared parser for CLAWQL_EXTERNAL_INGEST. See #79.

Documentation

  • docs/helm.md: Helm install, values table, relationship to Kustomize.
  • docs/benchmarks/archive/: short summaries + script links for archived workflow runs (formerly root gcp-multi-test.md, multi-provider-test.md, TEST_RESULTS_2026-03-19.md, and docs/JIRA_WORKFLOW_TOKEN_RESULTS_2026-03-19.md); benchmark stats JSON workflowOutput.source now points at the archive note.
  • docs/cache-tool.md: canonical cache vs memory_*, LRU semantics, env vars, multi-replica; cross-links from docs/mcp-tools.md, docs/memory-obsidian.md, docs/cursor-vault-memory.md, docs/deploy-k8s.md; website routes /cache and /tools (website/src/app/cache, website/src/app/tools) and nav/sitemap updated.
  • docs/deploy-k8s.md: TLS/mTLS/mesh and observability notes for port 50051; gRPC tracking remains on #67.
  • docs/mcp-tools.md: optional tool flags table + pointer to clawql-optional-flags.ts.