@intangle/mcp-server 2.6.3 → 2.6.5

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
@@ -258,9 +258,14 @@ try {
258
258
  contents: Array.isArray(result?.contents) ? result.contents : [],
259
259
  };
260
260
  });
261
- server.setRequestHandler(ListResourceTemplatesRequestSchema, async () => ({
262
- resourceTemplates: [],
263
- }));
261
+ server.setRequestHandler(ListResourceTemplatesRequestSchema, async () => {
262
+ const result = await makeRemoteRpcCall("resources/templates/list", {});
263
+ return {
264
+ resourceTemplates: Array.isArray(result?.resourceTemplates)
265
+ ? result.resourceTemplates
266
+ : [],
267
+ };
268
+ });
264
269
  async function handleSearchContext(args) {
265
270
  const { space_id, query, topics, group_id, project_id, folder_id } = args;
266
271
  // Require space_id
@@ -495,7 +495,7 @@ const TOOL_DEFINITIONS = [
495
495
  {
496
496
  name: "update_memory",
497
497
  title: "Update Memory",
498
- description: "Add, update, or delete items in a space. Supports any combination of operations in a single call.\n\nIMPORTANT: Include at least one operation: add, update, or delete.\n\nTIPS FOR RICH MEMORY: The more context you provide, the smarter the system becomes:\n- Include WHY something matters, not just WHAT it is\n- Note user preferences, patterns, and approaches you observe\n- Describe repeatable workflows as skills (step-by-step procedures)\n- Link related items using parent_id or linkedItemIds\n- Prefer updating an existing related memory when the new information refines or extends it instead of creating a duplicate\n- Use descriptive titles that capture the essence\n- Add context about decisions, reasoning, and outcomes\n\nUse project_id and group_id when you know the active project or group scope. The system learns from patterns - sharing how the user works helps it anticipate their needs.",
498
+ description: "Add, update, or delete items in a space. Supports any combination of operations in a single call.\n\nIMPORTANT: Include at least one operation: add, update, or delete.\n\nTIPS FOR RICH MEMORY: The more context you provide, the smarter the system becomes:\n- Include WHY something matters, not just WHAT it is\n- Note user preferences, patterns, and approaches you observe\n- Describe repeatable workflows as skills (step-by-step procedures)\n- Link related items using parent_id or linkedItemIds\n- Prefer updating an existing related memory when the new information refines or extends it instead of creating a duplicate\n- Use descriptive titles that capture the essence\n- Add context about decisions, reasoning, and outcomes\n- Every write should reassess the surrounding scope and improve organization when possible: prefer updating, merging, linking, reparenting, or retitling existing items over spraying disconnected new ones\n\nUse project_id and group_id when you know the active project or group scope. The system learns from patterns - sharing how the user works helps it anticipate their needs.",
499
499
  inputSchema: {
500
500
  type: "object",
501
501
  properties: {
@@ -566,7 +566,7 @@ const TOOL_DEFINITIONS = [
566
566
  },
567
567
  required: ["title", "content", "type"]
568
568
  },
569
- description: "Array of items to add. ALWAYS pass 'type' field to skip auto-classification. System suggests 1-3 relevant topics based on content. Tasks can include subtasks array for hierarchical task management."
569
+ description: "Array of items to add. ALWAYS pass 'type' field to skip auto-classification. System suggests 1-3 relevant topics based on content. Tasks can include subtasks array for hierarchical task management. Before adding, check whether updating, merging, linking, or reparenting an existing item would keep the touched scope cleaner."
570
570
  }
571
571
  }
572
572
  },
@@ -632,7 +632,7 @@ const TOOL_DEFINITIONS = [
632
632
  },
633
633
  required: ["id"]
634
634
  },
635
- description: "Array of items to update. Type automatically detected from ID prefix (mem_* = context, task_* = task, skill_* = skill). For context/skill items, status/priority/assignee are ignored."
635
+ description: "Array of items to update. Type automatically detected from ID prefix (mem_* = context, task_* = task, skill_* = skill). For context/skill items, status/priority/assignee are ignored. Treat updates as a chance to improve title clarity, links, parent placement, deduplication, and overall organization of the touched scope."
636
636
  }
637
637
  }
638
638
  },
@@ -725,17 +725,17 @@ const TOOL_DEFINITIONS = [
725
725
  },
726
726
  move_items: {
727
727
  type: "array",
728
- description: "Optional item move operations. Set folder_id to null to move an item back to root.",
728
+ description: "Optional item move operations. Omit folder_id to move an item back to root.",
729
729
  items: {
730
730
  type: "object",
731
731
  properties: {
732
732
  item_id: { type: "string", description: "Item ID to move." },
733
733
  folder_id: {
734
- type: ["string", "null"],
735
- description: "Target folder ID, or null to remove from folder."
734
+ type: "string",
735
+ description: "Optional target folder ID. Omit this field to remove the item from its current folder."
736
736
  }
737
737
  },
738
- required: ["item_id", "folder_id"]
738
+ required: ["item_id"]
739
739
  }
740
740
  },
741
741
  delete: {
package/index.ts CHANGED
@@ -343,9 +343,14 @@ try {
343
343
  }
344
344
  })
345
345
 
346
- server.setRequestHandler(ListResourceTemplatesRequestSchema, async () => ({
347
- resourceTemplates: [],
348
- }))
346
+ server.setRequestHandler(ListResourceTemplatesRequestSchema, async () => {
347
+ const result = await makeRemoteRpcCall("resources/templates/list", {})
348
+ return {
349
+ resourceTemplates: Array.isArray(result?.resourceTemplates)
350
+ ? result.resourceTemplates
351
+ : [],
352
+ }
353
+ })
349
354
 
350
355
  async function handleSearchContext(args: any) {
351
356
  const { space_id, query, topics, group_id, project_id, folder_id } = args as {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intangle/mcp-server",
3
- "version": "2.6.3",
3
+ "version": "2.6.5",
4
4
  "description": "Model Context Protocol server for Intangle - AI context that persists across conversations",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -558,7 +558,7 @@ const TOOL_DEFINITIONS = [
558
558
  name: "update_memory",
559
559
  title: "Update Memory",
560
560
  description:
561
- "Add, update, or delete items in a space. Supports any combination of operations in a single call.\n\nIMPORTANT: Include at least one operation: add, update, or delete.\n\nTIPS FOR RICH MEMORY: The more context you provide, the smarter the system becomes:\n- Include WHY something matters, not just WHAT it is\n- Note user preferences, patterns, and approaches you observe\n- Describe repeatable workflows as skills (step-by-step procedures)\n- Link related items using parent_id or linkedItemIds\n- Prefer updating an existing related memory when the new information refines or extends it instead of creating a duplicate\n- Use descriptive titles that capture the essence\n- Add context about decisions, reasoning, and outcomes\n\nUse project_id and group_id when you know the active project or group scope. The system learns from patterns - sharing how the user works helps it anticipate their needs.",
561
+ "Add, update, or delete items in a space. Supports any combination of operations in a single call.\n\nIMPORTANT: Include at least one operation: add, update, or delete.\n\nTIPS FOR RICH MEMORY: The more context you provide, the smarter the system becomes:\n- Include WHY something matters, not just WHAT it is\n- Note user preferences, patterns, and approaches you observe\n- Describe repeatable workflows as skills (step-by-step procedures)\n- Link related items using parent_id or linkedItemIds\n- Prefer updating an existing related memory when the new information refines or extends it instead of creating a duplicate\n- Use descriptive titles that capture the essence\n- Add context about decisions, reasoning, and outcomes\n- Every write should reassess the surrounding scope and improve organization when possible: prefer updating, merging, linking, reparenting, or retitling existing items over spraying disconnected new ones\n\nUse project_id and group_id when you know the active project or group scope. The system learns from patterns - sharing how the user works helps it anticipate their needs.",
562
562
  inputSchema: {
563
563
  type: "object",
564
564
  properties: {
@@ -641,7 +641,7 @@ const TOOL_DEFINITIONS = [
641
641
  required: ["title", "content", "type"]
642
642
  },
643
643
  description:
644
- "Array of items to add. ALWAYS pass 'type' field to skip auto-classification. System suggests 1-3 relevant topics based on content. Tasks can include subtasks array for hierarchical task management."
644
+ "Array of items to add. ALWAYS pass 'type' field to skip auto-classification. System suggests 1-3 relevant topics based on content. Tasks can include subtasks array for hierarchical task management. Before adding, check whether updating, merging, linking, or reparenting an existing item would keep the touched scope cleaner."
645
645
  }
646
646
  }
647
647
  },
@@ -713,7 +713,7 @@ const TOOL_DEFINITIONS = [
713
713
  required: ["id"]
714
714
  },
715
715
  description:
716
- "Array of items to update. Type automatically detected from ID prefix (mem_* = context, task_* = task, skill_* = skill). For context/skill items, status/priority/assignee are ignored."
716
+ "Array of items to update. Type automatically detected from ID prefix (mem_* = context, task_* = task, skill_* = skill). For context/skill items, status/priority/assignee are ignored. Treat updates as a chance to improve title clarity, links, parent placement, deduplication, and overall organization of the touched scope."
717
717
  }
718
718
  }
719
719
  },
@@ -812,17 +812,18 @@ const TOOL_DEFINITIONS = [
812
812
  move_items: {
813
813
  type: "array",
814
814
  description:
815
- "Optional item move operations. Set folder_id to null to move an item back to root.",
815
+ "Optional item move operations. Omit folder_id to move an item back to root.",
816
816
  items: {
817
817
  type: "object",
818
818
  properties: {
819
819
  item_id: { type: "string", description: "Item ID to move." },
820
820
  folder_id: {
821
- type: ["string", "null"],
822
- description: "Target folder ID, or null to remove from folder."
821
+ type: "string",
822
+ description:
823
+ "Optional target folder ID. Omit this field to remove the item from its current folder."
823
824
  }
824
825
  },
825
- required: ["item_id", "folder_id"]
826
+ required: ["item_id"]
826
827
  }
827
828
  },
828
829
  delete: {