@intangle/mcp-server 1.4.0 → 2.0.1

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
@@ -39,7 +39,7 @@ async function checkVersion() {
39
39
  latestVersion = data.version;
40
40
  versionCheckDone = true;
41
41
  if (latestVersion && latestVersion !== CURRENT_VERSION) {
42
- console.warn("\n⚠️ UPDATE AVAILABLE ⚠️");
42
+ console.warn("\n UPDATE AVAILABLE ");
43
43
  console.warn(`Current version: ${CURRENT_VERSION}`);
44
44
  console.warn(`Latest version: ${latestVersion}`);
45
45
  console.warn("Update with: npx @intangle/mcp-server@latest\n");
@@ -84,7 +84,7 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
84
84
  tools: TOOLS,
85
85
  }));
86
86
  async function handleSearchMemories(args) {
87
- const { space_id, query, topics, } = args;
87
+ const { space_id, query, topics } = args;
88
88
  // Require space_id
89
89
  if (!space_id) {
90
90
  throw new Error("space_id is required. Use list_spaces to see available options.");
@@ -173,7 +173,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
173
173
  }
174
174
  // Add version warning to response if outdated
175
175
  if (latestVersion && latestVersion !== CURRENT_VERSION) {
176
- const warning = `\n\n⚠️ UPDATE AVAILABLE: MCP Server v${latestVersion} is available (you're on v${CURRENT_VERSION}). Update with: npx @intangle/mcp-server@latest`;
176
+ const warning = `\n\n UPDATE AVAILABLE: MCP Server v${latestVersion} is available (you're on v${CURRENT_VERSION}). Update with: npx @intangle/mcp-server@latest`;
177
177
  responseText += warning;
178
178
  }
179
179
  return {
@@ -3,13 +3,13 @@ export const TOOLS = [
3
3
  {
4
4
  name: "search",
5
5
  title: "Search Space",
6
- description: "Search for information within a space. System automatically extracts quantity from natural language ('show 3 tasks' → 3 results, 'the last one' → 1 result), determines optimal depth from query complexity ('quick search' → quick mode, 'search deep' → deep mode), and intelligently formats results (1-3 items → summaries, 4+ items → IDs only). Use fetch tool to get full content for specific IDs when needed.",
6
+ description: "Search for information within a space. System automatically extracts quantity from natural language ('show 3 tasks' → 3 results, 'the last one' → 1 result) and intelligently formats results (1-3 items → summaries, 4+ items → IDs only). Use fetch tool to get full content for specific IDs when needed.",
7
7
  inputSchema: {
8
8
  type: "object",
9
9
  properties: {
10
10
  query: {
11
11
  type: "string",
12
- description: "Search query with optional natural language hints for quantity ('show 5 tasks', 'the most recent', 'top 5') and depth ('quick search', 'fast search', 'search deep', 'thorough search'). Examples: 'show me 3 pending tasks', 'quick search for recent bugs', 'search deep for authentication issues'",
12
+ description: "Search query with optional natural language hints for quantity ('show 5 tasks', 'the most recent', 'top 5'). Examples: 'show me 3 pending tasks', 'recent bugs', 'authentication issues'",
13
13
  },
14
14
  space_id: {
15
15
  type: "string",
@@ -144,38 +144,14 @@ export const TOOLS = [
144
144
  },
145
145
  update: {
146
146
  type: "object",
147
- description: "Update existing context and/or tasks",
147
+ description: "Update existing items (context or tasks) - system detects type from ID prefix",
148
148
  properties: {
149
- context: {
150
- type: "array",
151
- items: {
152
- type: "object",
153
- properties: {
154
- id: { type: "string", description: "Context ID to update" },
155
- title: {
156
- type: "string",
157
- description: "New title (optional)",
158
- },
159
- content: {
160
- type: "string",
161
- description: "New content (optional)",
162
- },
163
- topics: {
164
- type: "array",
165
- items: { type: "string" },
166
- description: "New topics (optional)",
167
- },
168
- },
169
- required: ["id"],
170
- },
171
- description: "Array of context updates (must include id)",
172
- },
173
- tasks: {
149
+ items: {
174
150
  type: "array",
175
151
  items: {
176
152
  type: "object",
177
153
  properties: {
178
- task_id: { type: "string", description: "Task ID to update" },
154
+ id: { type: "string", description: "Item ID to update (mem_* for context, task_* for tasks)" },
179
155
  title: {
180
156
  type: "string",
181
157
  description: "New title (optional)",
@@ -197,33 +173,28 @@ export const TOOLS = [
197
173
  "completed",
198
174
  "invalidated",
199
175
  ],
200
- description: "New status (optional)",
176
+ description: "New status (optional, tasks only)",
201
177
  },
202
178
  priority: {
203
179
  type: "string",
204
180
  enum: ["urgent", "high", "medium", "low"],
205
- description: "New priority (optional)",
181
+ description: "New priority (optional, tasks only)",
206
182
  },
207
183
  },
208
- required: ["task_id"],
184
+ required: ["id"],
209
185
  },
210
- description: "Array of task updates (must include task_id)",
186
+ description: "Array of items to update. Type automatically detected from ID prefix (mem_* = context, task_* = task). For context items, status/priority are ignored.",
211
187
  },
212
188
  },
213
189
  },
214
190
  delete: {
215
191
  type: "object",
216
- description: "Delete context and/or tasks by ID",
192
+ description: "Delete items by ID - system detects type from ID prefix",
217
193
  properties: {
218
- context_ids: {
219
- type: "array",
220
- items: { type: "string" },
221
- description: "Array of context IDs to delete",
222
- },
223
- task_ids: {
194
+ item_ids: {
224
195
  type: "array",
225
196
  items: { type: "string" },
226
- description: "Array of task IDs to delete",
197
+ description: "Array of item IDs to delete (mem_* for context, task_* for tasks). Type automatically detected from ID prefix.",
227
198
  },
228
199
  },
229
200
  },
package/index.ts CHANGED
@@ -60,7 +60,7 @@ async function checkVersion() {
60
60
  versionCheckDone = true;
61
61
 
62
62
  if (latestVersion && latestVersion !== CURRENT_VERSION) {
63
- console.warn("\n⚠️ UPDATE AVAILABLE ⚠️");
63
+ console.warn("\n UPDATE AVAILABLE ");
64
64
  console.warn(`Current version: ${CURRENT_VERSION}`);
65
65
  console.warn(`Latest version: ${latestVersion}`);
66
66
  console.warn("Update with: npx @intangle/mcp-server@latest\n");
@@ -115,11 +115,7 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
115
115
  }));
116
116
 
117
117
  async function handleSearchMemories(args: any) {
118
- const {
119
- space_id,
120
- query,
121
- topics,
122
- } = args as {
118
+ const { space_id, query, topics } = args as {
123
119
  space_id: string;
124
120
  query: string;
125
121
  topics?: string[];
@@ -140,7 +136,6 @@ async function handleSearchMemories(args: any) {
140
136
  });
141
137
  }
142
138
 
143
-
144
139
  async function handleFetch(args: any) {
145
140
  const { id, ids } = args as { id?: string; ids?: string[] };
146
141
 
@@ -187,7 +182,6 @@ async function handleUpdateSpace(args: any) {
187
182
  });
188
183
  }
189
184
 
190
-
191
185
  server.setRequestHandler(CallToolRequestSchema, async (request: any) => {
192
186
  const { name, arguments: args } = request.params;
193
187
 
@@ -237,7 +231,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request: any) => {
237
231
 
238
232
  // Add version warning to response if outdated
239
233
  if (latestVersion && latestVersion !== CURRENT_VERSION) {
240
- const warning = `\n\n⚠️ UPDATE AVAILABLE: MCP Server v${latestVersion} is available (you're on v${CURRENT_VERSION}). Update with: npx @intangle/mcp-server@latest`;
234
+ const warning = `\n\n UPDATE AVAILABLE: MCP Server v${latestVersion} is available (you're on v${CURRENT_VERSION}). Update with: npx @intangle/mcp-server@latest`;
241
235
  responseText += warning;
242
236
  }
243
237
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intangle/mcp-server",
3
- "version": "1.4.0",
3
+ "version": "2.0.1",
4
4
  "description": "Model Context Protocol server for Intangle - AI memory that persists across conversations",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -4,13 +4,13 @@ export const TOOLS = [
4
4
  name: "search",
5
5
  title: "Search Space",
6
6
  description:
7
- "Search for information within a space. System automatically extracts quantity from natural language ('show 3 tasks' → 3 results, 'the last one' → 1 result), determines optimal depth from query complexity ('quick search' → quick mode, 'search deep' → deep mode), and intelligently formats results (1-3 items → summaries, 4+ items → IDs only). Use fetch tool to get full content for specific IDs when needed.",
7
+ "Search for information within a space. System automatically extracts quantity from natural language ('show 3 tasks' → 3 results, 'the last one' → 1 result) and intelligently formats results (1-3 items → summaries, 4+ items → IDs only). Use fetch tool to get full content for specific IDs when needed.",
8
8
  inputSchema: {
9
9
  type: "object",
10
10
  properties: {
11
11
  query: {
12
12
  type: "string",
13
- description: "Search query with optional natural language hints for quantity ('show 5 tasks', 'the most recent', 'top 5') and depth ('quick search', 'fast search', 'search deep', 'thorough search'). Examples: 'show me 3 pending tasks', 'quick search for recent bugs', 'search deep for authentication issues'",
13
+ description: "Search query with optional natural language hints for quantity ('show 5 tasks', 'the most recent', 'top 5'). Examples: 'show me 3 pending tasks', 'recent bugs', 'authentication issues'",
14
14
  },
15
15
  space_id: {
16
16
  type: "string",
@@ -158,38 +158,14 @@ export const TOOLS = [
158
158
  },
159
159
  update: {
160
160
  type: "object",
161
- description: "Update existing context and/or tasks",
161
+ description: "Update existing items (context or tasks) - system detects type from ID prefix",
162
162
  properties: {
163
- context: {
164
- type: "array",
165
- items: {
166
- type: "object",
167
- properties: {
168
- id: { type: "string", description: "Context ID to update" },
169
- title: {
170
- type: "string",
171
- description: "New title (optional)",
172
- },
173
- content: {
174
- type: "string",
175
- description: "New content (optional)",
176
- },
177
- topics: {
178
- type: "array",
179
- items: { type: "string" },
180
- description: "New topics (optional)",
181
- },
182
- },
183
- required: ["id"],
184
- },
185
- description: "Array of context updates (must include id)",
186
- },
187
- tasks: {
163
+ items: {
188
164
  type: "array",
189
165
  items: {
190
166
  type: "object",
191
167
  properties: {
192
- task_id: { type: "string", description: "Task ID to update" },
168
+ id: { type: "string", description: "Item ID to update (mem_* for context, task_* for tasks)" },
193
169
  title: {
194
170
  type: "string",
195
171
  description: "New title (optional)",
@@ -211,33 +187,28 @@ export const TOOLS = [
211
187
  "completed",
212
188
  "invalidated",
213
189
  ],
214
- description: "New status (optional)",
190
+ description: "New status (optional, tasks only)",
215
191
  },
216
192
  priority: {
217
193
  type: "string",
218
194
  enum: ["urgent", "high", "medium", "low"],
219
- description: "New priority (optional)",
195
+ description: "New priority (optional, tasks only)",
220
196
  },
221
197
  },
222
- required: ["task_id"],
198
+ required: ["id"],
223
199
  },
224
- description: "Array of task updates (must include task_id)",
200
+ description: "Array of items to update. Type automatically detected from ID prefix (mem_* = context, task_* = task). For context items, status/priority are ignored.",
225
201
  },
226
202
  },
227
203
  },
228
204
  delete: {
229
205
  type: "object",
230
- description: "Delete context and/or tasks by ID",
206
+ description: "Delete items by ID - system detects type from ID prefix",
231
207
  properties: {
232
- context_ids: {
233
- type: "array",
234
- items: { type: "string" },
235
- description: "Array of context IDs to delete",
236
- },
237
- task_ids: {
208
+ item_ids: {
238
209
  type: "array",
239
210
  items: { type: "string" },
240
- description: "Array of task IDs to delete",
211
+ description: "Array of item IDs to delete (mem_* for context, task_* for tasks). Type automatically detected from ID prefix.",
241
212
  },
242
213
  },
243
214
  },