agent-planner-mcp 0.6.0 → 0.6.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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/tools.js +28 -10
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-planner-mcp",
3
- "version": "0.6.0",
3
+ "version": "0.6.1",
4
4
  "description": "MCP server for AgentPlanner — AI agent orchestration with planning, dependencies, knowledge graphs, and human oversight",
5
5
  "main": "src/index.js",
6
6
  "bin": {
package/src/tools.js CHANGED
@@ -285,14 +285,19 @@ function setupTools(server, apiClientOverride) {
285
285
  // ===== PLAN MANAGEMENT TOOLS =====
286
286
  {
287
287
  name: "list_plans",
288
- description: "List all plans or filter by status",
288
+ description: "List plans. By default excludes completed/archived plans set include_completed to true to see all.",
289
289
  inputSchema: {
290
290
  type: "object",
291
291
  properties: {
292
- status: {
293
- type: "string",
292
+ status: {
293
+ type: "string",
294
294
  description: "Optional filter by plan status",
295
295
  enum: ["draft", "active", "completed", "archived"]
296
+ },
297
+ include_completed: {
298
+ type: "boolean",
299
+ description: "If true, include completed and archived plans (default: false)",
300
+ default: false
296
301
  }
297
302
  }
298
303
  }
@@ -815,15 +820,20 @@ function setupTools(server, apiClientOverride) {
815
820
  // ===== GOAL TOOLS =====
816
821
  {
817
822
  name: "list_goals",
818
- description: "List goals, optionally filtered by organization or status",
823
+ description: "List goals. By default returns only active goals — set include_inactive to true to see all.",
819
824
  inputSchema: {
820
825
  type: "object",
821
826
  properties: {
822
827
  organization_id: { type: "string", description: "Filter by organization ID" },
823
- status: {
824
- type: "string",
828
+ status: {
829
+ type: "string",
825
830
  description: "Filter by status",
826
831
  enum: ["active", "achieved", "at_risk", "abandoned"]
832
+ },
833
+ include_inactive: {
834
+ type: "boolean",
835
+ description: "If true, include achieved/paused/abandoned goals (default: false)",
836
+ default: false
827
837
  }
828
838
  }
829
839
  }
@@ -1655,9 +1665,16 @@ function setupTools(server, apiClientOverride) {
1655
1665
 
1656
1666
  // ===== PLAN MANAGEMENT =====
1657
1667
  if (name === "list_plans") {
1658
- const { status } = args;
1668
+ const { status, include_completed } = args;
1659
1669
  const plans = await apiClient.plans.getPlans();
1660
- const filteredPlans = status ? plans.filter(p => p.status === status) : plans;
1670
+ let filteredPlans;
1671
+ if (status) {
1672
+ filteredPlans = plans.filter(p => p.status === status);
1673
+ } else if (!include_completed) {
1674
+ filteredPlans = plans.filter(p => p.status !== 'completed' && p.status !== 'archived');
1675
+ } else {
1676
+ filteredPlans = plans;
1677
+ }
1661
1678
  return formatResponse(filteredPlans);
1662
1679
  }
1663
1680
 
@@ -2006,8 +2023,9 @@ function setupTools(server, apiClientOverride) {
2006
2023
 
2007
2024
  // ===== GOAL TOOLS =====
2008
2025
  if (name === "list_goals") {
2009
- const { organization_id, status } = args;
2010
- const result = await apiClient.goals.list({ organization_id, status });
2026
+ const { organization_id, status, include_inactive } = args;
2027
+ const effectiveStatus = status || (!include_inactive ? 'active' : undefined);
2028
+ const result = await apiClient.goals.list({ organization_id, status: effectiveStatus });
2011
2029
  return formatResponse(result);
2012
2030
  }
2013
2031