@contextstream/mcp-server 0.4.12 → 0.4.15

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.
Files changed (2) hide show
  1. package/dist/index.js +41 -3
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -6003,8 +6003,12 @@ var ContextStreamClient = class {
6003
6003
  case "conversation":
6004
6004
  apiEventType = "chat";
6005
6005
  break;
6006
+ // Plans & Tasks feature - use dedicated event types
6006
6007
  case "task":
6007
- apiEventType = "task_created";
6008
+ apiEventType = "task";
6009
+ break;
6010
+ case "plan":
6011
+ apiEventType = "plan";
6008
6012
  break;
6009
6013
  case "bug":
6010
6014
  case "feature":
@@ -7449,6 +7453,7 @@ W:${wsHint}
7449
7453
  */
7450
7454
  async updateTask(params) {
7451
7455
  uuidSchema.parse(params.task_id);
7456
+ if (params.plan_id) uuidSchema.parse(params.plan_id);
7452
7457
  const { task_id, ...updates } = params;
7453
7458
  return request(this.config, `/tasks/${task_id}`, { method: "PATCH", body: updates });
7454
7459
  }
@@ -7631,6 +7636,23 @@ Only after this preflight, proceed with search/analysis below.
7631
7636
 
7632
7637
  ---
7633
7638
 
7639
+ ### Plans & Tasks
7640
+
7641
+ When user asks to create a plan or implementation roadmap:
7642
+ 1. Create plan: \`session(action="capture_plan", title="Plan Title", description="...", goals=["goal1", "goal2"], steps=[{id: "1", title: "Step 1", order: 1}, ...])\`
7643
+ 2. Get plan_id from response, then create tasks: \`memory(action="create_task", title="Task Title", plan_id="<plan_id>", priority="high|medium|low", description="...")\`
7644
+
7645
+ To manage existing plans/tasks:
7646
+ - List plans: \`session(action="list_plans")\`
7647
+ - Get plan with tasks: \`session(action="get_plan", plan_id="<uuid>", include_tasks=true)\`
7648
+ - List tasks: \`memory(action="list_tasks", plan_id="<uuid>")\` or \`memory(action="list_tasks")\` for all
7649
+ - Update task status: \`memory(action="update_task", task_id="<uuid>", task_status="pending|in_progress|completed|blocked")\`
7650
+ - Link task to plan: \`memory(action="update_task", task_id="<uuid>", plan_id="<plan_uuid>")\`
7651
+ - Unlink task from plan: \`memory(action="update_task", task_id="<uuid>", plan_id=null)\`
7652
+ - Delete: \`memory(action="delete_task", task_id="<uuid>")\` or \`memory(action="delete_event", event_id="<plan_uuid>")\`
7653
+
7654
+ ---
7655
+
7634
7656
  ### Complete Action Reference
7635
7657
 
7636
7658
  **session actions:**
@@ -7698,6 +7720,21 @@ v0.4.x uses ~11 consolidated domain tools for ~75% token reduction vs previous v
7698
7720
  - **After completing work**: Always capture decisions/insights with \`session(action="capture")\`
7699
7721
  - **On mistakes/corrections**: Immediately capture lessons with \`session(action="capture_lesson")\`
7700
7722
 
7723
+ ### Plans & Tasks
7724
+
7725
+ When user asks to create a plan or implementation roadmap:
7726
+ 1. Create plan: \`session(action="capture_plan", title="Plan Title", description="...", goals=["goal1", "goal2"], steps=[{id: "1", title: "Step 1", order: 1}, ...])\`
7727
+ 2. Get plan_id from response, then create tasks: \`memory(action="create_task", title="Task Title", plan_id="<plan_id>", priority="high|medium|low", description="...")\`
7728
+
7729
+ To manage existing plans/tasks:
7730
+ - List plans: \`session(action="list_plans")\`
7731
+ - Get plan with tasks: \`session(action="get_plan", plan_id="<uuid>", include_tasks=true)\`
7732
+ - List tasks: \`memory(action="list_tasks", plan_id="<uuid>")\` or \`memory(action="list_tasks")\` for all
7733
+ - Update task status: \`memory(action="update_task", task_id="<uuid>", task_status="pending|in_progress|completed|blocked")\`
7734
+ - Link task to plan: \`memory(action="update_task", task_id="<uuid>", plan_id="<plan_uuid>")\`
7735
+ - Unlink task from plan: \`memory(action="update_task", task_id="<uuid>", plan_id=null)\`
7736
+ - Delete: \`memory(action="delete_task", task_id="<uuid>")\` or \`memory(action="delete_event", event_id="<plan_uuid>")\`
7737
+
7701
7738
  Full docs: https://contextstream.io/docs/mcp/tools
7702
7739
  `.trim();
7703
7740
  var TEMPLATES = {
@@ -12860,7 +12897,7 @@ Use this to remove a reminder that is no longer relevant.`,
12860
12897
  "memory",
12861
12898
  {
12862
12899
  title: "Memory",
12863
- description: `Memory operations for events and nodes. Event actions: create_event, get_event, update_event, delete_event, list_events, distill_event. Node actions: create_node, get_node, update_node, delete_node, list_nodes, supersede_node. Query actions: search, decisions, timeline, summary. Task actions: create_task (create task, optionally linked to plan), get_task, update_task, delete_task, list_tasks, reorder_tasks.`,
12900
+ description: `Memory operations for events and nodes. Event actions: create_event, get_event, update_event, delete_event, list_events, distill_event. Node actions: create_node, get_node, update_node, delete_node, list_nodes, supersede_node. Query actions: search, decisions, timeline, summary. Task actions: create_task (create task, optionally linked to plan), get_task, update_task (can link/unlink task to plan via plan_id), delete_task, list_tasks, reorder_tasks.`,
12864
12901
  inputSchema: external_exports.object({
12865
12902
  action: external_exports.enum([
12866
12903
  "create_event",
@@ -12924,7 +12961,7 @@ Use this to remove a reminder that is no longer relevant.`,
12924
12961
  })).optional(),
12925
12962
  // Task-specific params
12926
12963
  task_id: external_exports.string().uuid().optional().describe("Task ID for get_task/update_task/delete_task"),
12927
- plan_id: external_exports.string().uuid().optional().describe("Parent plan ID for create_task/list_tasks"),
12964
+ plan_id: external_exports.string().uuid().nullable().optional().describe("Plan ID: for create_task (link to plan), update_task (set UUID to link, null to unlink), list_tasks (filter by plan)"),
12928
12965
  plan_step_id: external_exports.string().optional().describe("Which plan step this task implements"),
12929
12966
  description: external_exports.string().optional().describe("Description for task"),
12930
12967
  task_status: external_exports.enum(["pending", "in_progress", "completed", "blocked", "cancelled"]).optional().describe("Task status"),
@@ -13131,6 +13168,7 @@ Use this to remove a reminder that is no longer relevant.`,
13131
13168
  status: input.task_status,
13132
13169
  priority: input.priority,
13133
13170
  order: input.order,
13171
+ plan_id: input.plan_id,
13134
13172
  plan_step_id: input.plan_step_id,
13135
13173
  code_refs: input.code_refs,
13136
13174
  tags: input.tags,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@contextstream/mcp-server",
3
3
  "mcpName": "io.github.contextstreamio/mcp-server",
4
- "version": "0.4.12",
4
+ "version": "0.4.15",
5
5
  "description": "ContextStream MCP server - v0.4.x with consolidated domain tools (~11 tools, ~75% token reduction). Code context, memory, search, and AI tools.",
6
6
  "type": "module",
7
7
  "license": "MIT",