@cachly-dev/mcp-server 0.9.11 → 0.9.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -2434,7 +2434,11 @@ const TOOLS = [
2434
2434
  {
2435
2435
  name: 'cache_get',
2436
2436
  description: 'Get a value from a running cache instance by key. ' +
2437
- 'Returns the value (string or JSON) or null if the key does not exist.',
2437
+ 'Returns the stored value (string or deserialized JSON object) or null if the key does not exist or has expired. ' +
2438
+ 'Read-only — no side effects. ' +
2439
+ 'Use cache_mget when you need multiple keys in one round-trip. ' +
2440
+ 'Use cache_exists to check existence without retrieving the value. ' +
2441
+ 'Use semantic_search when you need fuzzy/vector search across stored values.',
2438
2442
  inputSchema: {
2439
2443
  type: 'object',
2440
2444
  properties: {
@@ -2503,12 +2507,15 @@ const TOOLS = [
2503
2507
  },
2504
2508
  {
2505
2509
  name: 'cache_ttl',
2506
- description: 'Get the remaining time-to-live (TTL) of a key in seconds. Returns -1 if no TTL, -2 if the key does not exist.',
2510
+ description: 'Get the remaining time-to-live (TTL) of a key in seconds. ' +
2511
+ 'Returns -1 if the key exists but has no expiry, -2 if the key does not exist. ' +
2512
+ 'Read-only — no side effects. ' +
2513
+ 'Use cache_set with a ttl parameter to set or update the expiry.',
2507
2514
  inputSchema: {
2508
2515
  type: 'object',
2509
2516
  properties: {
2510
- instance_id: { type: 'string' },
2511
- key: { type: 'string' },
2517
+ instance_id: { type: 'string', description: 'UUID of the cache instance (from list_instances)' },
2518
+ key: { type: 'string', description: 'Cache key to inspect' },
2512
2519
  },
2513
2520
  required: ['instance_id', 'key'],
2514
2521
  },
@@ -2688,7 +2695,11 @@ const TOOLS = [
2688
2695
  name: 'cache_mset',
2689
2696
  description: 'Set multiple key-value pairs in a single pipeline round-trip. ' +
2690
2697
  'Supports per-key TTL – unlike native MSET. ' +
2691
- 'Uses one TCP round-trip for N keys via Redis pipeline.',
2698
+ 'Uses one TCP round-trip for N keys via Redis pipeline. ' +
2699
+ 'Each item overwrites any existing value for that key. ' +
2700
+ 'On partial failure the successfully pipelined keys are committed; a per-key error list is returned for any that failed. ' +
2701
+ 'Returns a summary: { set: N, errors: [...] }. ' +
2702
+ 'Use cache_set for a single key; use cache_stream_set for large streaming payloads.',
2692
2703
  inputSchema: {
2693
2704
  type: 'object',
2694
2705
  properties: {
@@ -2771,8 +2782,11 @@ const TOOLS = [
2771
2782
  'Perfect for caching: codebase overviews, file summaries, project structure, ' +
2772
2783
  'frequently-accessed data, or "thinking" results like dependency analysis. ' +
2773
2784
  'The AI assistant can use this to avoid re-reading the entire codebase every time. ' +
2785
+ 'Overwrites any existing value stored under the same key. ' +
2786
+ 'Returns { key, stored_at, ttl } confirming the saved context. ' +
2774
2787
  'Example: remember_context("project overview", "This is a Next.js app with...") ' +
2775
- 'then later: recall_context("project overview")',
2788
+ 'then later: recall_context("project overview"). ' +
2789
+ 'Use recall_context to retrieve; use list_remembered to see all stored keys.',
2776
2790
  inputSchema: {
2777
2791
  type: 'object',
2778
2792
  properties: {
@@ -3347,7 +3361,11 @@ const TOOLS = [
3347
3361
  name: 'publish_lesson',
3348
3362
  description: 'Publish a lesson to the Cachly Public Brain (anonymized community knowledge base). ' +
3349
3363
  'Published lessons can be imported by other developers via import_public_brain. ' +
3350
- 'PII is stripped automatically. Visible under the framework/category tag.',
3364
+ 'PII is stripped automatically. Visible under the framework/category tag. ' +
3365
+ 'Returns { lesson_id, topic, framework, published_at } confirming the publish. ' +
3366
+ 'Irreversible — once published to the public brain, lessons cannot be deleted via the MCP interface. ' +
3367
+ 'Use learn_from_attempts or global_learn for private lessons; ' +
3368
+ 'use syndicate for anonymized global sharing without framework tagging.',
3351
3369
  inputSchema: {
3352
3370
  type: 'object',
3353
3371
  properties: {
@@ -3644,7 +3662,10 @@ const TOOLS = [
3644
3662
  'This is how individual knowledge becomes collective intelligence. ' +
3645
3663
  'Call this AFTER every learn_from_attempts that is worth sharing universally ' +
3646
3664
  '(critical bugs, deployment gotchas, architecture discoveries). ' +
3647
- 'Use scope="org" to keep the lesson private to your organisation.',
3665
+ 'If a lesson with the same topic already exists in the commons, it is updated in place (idempotent). ' +
3666
+ 'Returns { key, confirm_count, scope } confirming the stored lesson. ' +
3667
+ 'Use scope="org" to keep the lesson private to your organisation. ' +
3668
+ 'Do NOT use for secrets or PII — content is stored in a shared knowledge base.',
3648
3669
  inputSchema: {
3649
3670
  type: 'object',
3650
3671
  properties: {