@mcp-graph-workflow/mcp-graph 5.4.0 → 5.5.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 (78) hide show
  1. package/dist/api/routes/code-graph.js +2 -2
  2. package/dist/api/routes/code-graph.js.map +1 -1
  3. package/dist/api/routes/folder.js +2 -2
  4. package/dist/api/routes/folder.js.map +1 -1
  5. package/dist/cli/commands/update.d.ts +3 -0
  6. package/dist/cli/commands/update.d.ts.map +1 -0
  7. package/dist/cli/commands/update.js +60 -0
  8. package/dist/cli/commands/update.js.map +1 -0
  9. package/dist/cli/index.js +2 -0
  10. package/dist/cli/index.js.map +1 -1
  11. package/dist/core/code/code-indexer.d.ts +2 -2
  12. package/dist/core/code/code-indexer.d.ts.map +1 -1
  13. package/dist/core/code/code-indexer.js +3 -3
  14. package/dist/core/code/code-indexer.js.map +1 -1
  15. package/dist/core/code/code-types.d.ts +1 -1
  16. package/dist/core/code/code-types.d.ts.map +1 -1
  17. package/dist/core/code/ts-analyzer.d.ts +7 -1
  18. package/dist/core/code/ts-analyzer.d.ts.map +1 -1
  19. package/dist/core/code/ts-analyzer.js +105 -72
  20. package/dist/core/code/ts-analyzer.js.map +1 -1
  21. package/dist/core/config/ai-memory-generator.d.ts.map +1 -1
  22. package/dist/core/config/ai-memory-generator.js +80 -37
  23. package/dist/core/config/ai-memory-generator.js.map +1 -1
  24. package/dist/core/importer/prd-to-graph.d.ts.map +1 -1
  25. package/dist/core/importer/prd-to-graph.js +49 -12
  26. package/dist/core/importer/prd-to-graph.js.map +1 -1
  27. package/dist/core/parser/classify.d.ts +1 -0
  28. package/dist/core/parser/classify.d.ts.map +1 -1
  29. package/dist/core/parser/classify.js +1 -0
  30. package/dist/core/parser/classify.js.map +1 -1
  31. package/dist/core/store/sqlite-store.d.ts.map +1 -1
  32. package/dist/core/store/sqlite-store.js +28 -10
  33. package/dist/core/store/sqlite-store.js.map +1 -1
  34. package/dist/mcp/init-project.d.ts +14 -0
  35. package/dist/mcp/init-project.d.ts.map +1 -1
  36. package/dist/mcp/init-project.js +140 -36
  37. package/dist/mcp/init-project.js.map +1 -1
  38. package/dist/mcp/server.js +18 -16
  39. package/dist/mcp/server.js.map +1 -1
  40. package/dist/mcp/tools/add-node.d.ts +3 -0
  41. package/dist/mcp/tools/add-node.d.ts.map +1 -1
  42. package/dist/mcp/tools/add-node.js +7 -3
  43. package/dist/mcp/tools/add-node.js.map +1 -1
  44. package/dist/mcp/tools/delete-node.d.ts +3 -0
  45. package/dist/mcp/tools/delete-node.d.ts.map +1 -1
  46. package/dist/mcp/tools/delete-node.js +7 -3
  47. package/dist/mcp/tools/delete-node.js.map +1 -1
  48. package/dist/mcp/tools/index.d.ts.map +1 -1
  49. package/dist/mcp/tools/index.js +21 -12
  50. package/dist/mcp/tools/index.js.map +1 -1
  51. package/dist/mcp/tools/list-skills.d.ts +1 -2
  52. package/dist/mcp/tools/list-skills.d.ts.map +1 -1
  53. package/dist/mcp/tools/list-skills.js +6 -4
  54. package/dist/mcp/tools/list-skills.js.map +1 -1
  55. package/dist/mcp/tools/manage-skill.d.ts.map +1 -1
  56. package/dist/mcp/tools/manage-skill.js +57 -4
  57. package/dist/mcp/tools/manage-skill.js.map +1 -1
  58. package/dist/mcp/tools/node.d.ts +9 -0
  59. package/dist/mcp/tools/node.d.ts.map +1 -0
  60. package/dist/mcp/tools/node.js +195 -0
  61. package/dist/mcp/tools/node.js.map +1 -0
  62. package/dist/mcp/tools/update-node.d.ts +3 -0
  63. package/dist/mcp/tools/update-node.d.ts.map +1 -1
  64. package/dist/mcp/tools/update-node.js +7 -3
  65. package/dist/mcp/tools/update-node.js.map +1 -1
  66. package/dist/mcp/tools/validate-ac.d.ts +3 -0
  67. package/dist/mcp/tools/validate-ac.d.ts.map +1 -1
  68. package/dist/mcp/tools/validate-ac.js +6 -2
  69. package/dist/mcp/tools/validate-ac.js.map +1 -1
  70. package/dist/mcp/tools/validate-task.d.ts +3 -0
  71. package/dist/mcp/tools/validate-task.d.ts.map +1 -1
  72. package/dist/mcp/tools/validate-task.js +6 -1
  73. package/dist/mcp/tools/validate-task.js.map +1 -1
  74. package/dist/mcp/tools/validate.d.ts +9 -0
  75. package/dist/mcp/tools/validate.d.ts.map +1 -0
  76. package/dist/mcp/tools/validate.js +70 -0
  77. package/dist/mcp/tools/validate.js.map +1 -0
  78. package/package.json +1 -1
@@ -2,12 +2,14 @@ import { writeFileSync, existsSync, readFileSync, mkdirSync } from "node:fs";
2
2
  import path from "node:path";
3
3
  import { SqliteStore } from "../core/store/sqlite-store.js";
4
4
  import { logger } from "../core/utils/logger.js";
5
+ import { GraphNotInitializedError } from "../core/utils/errors.js";
5
6
  import { buildMcpServersConfig } from "../core/integrations/mcp-servers-config.js";
6
7
  import { installAllMcpDeps } from "../core/integrations/mcp-deps-installer.js";
7
8
  import { generateClaudeMdSection, generateCopilotInstructions, applySection } from "../core/config/ai-memory-generator.js";
8
9
  import { STORE_DIR } from "../core/utils/constants.js";
9
10
  const MCP_CONFIG_FILE = ".mcp.json";
10
11
  const GITIGNORE_ENTRY = "workflow-graph/";
12
+ // --- Internal helpers ---
11
13
  function _resolveCommand() {
12
14
  // Check if running via npx/global — use package name
13
15
  // Check if running from node_modules — use relative path
@@ -24,10 +26,11 @@ function _resolveArgs() {
24
26
  }
25
27
  return ["-y", "mcp-graph"];
26
28
  }
27
- function writeMcpJson(projectDir) {
29
+ function writeMcpJson(projectDir, dryRun) {
28
30
  const mcpConfigPath = path.join(projectDir, MCP_CONFIG_FILE);
29
31
  let existing = {};
30
- if (existsSync(mcpConfigPath)) {
32
+ const fileExists = existsSync(mcpConfigPath);
33
+ if (fileExists) {
31
34
  try {
32
35
  existing = JSON.parse(readFileSync(mcpConfigPath, "utf-8"));
33
36
  }
@@ -36,15 +39,29 @@ function writeMcpJson(projectDir) {
36
39
  }
37
40
  }
38
41
  const config = buildMcpServersConfig(existing);
39
- writeFileSync(mcpConfigPath, JSON.stringify(config, null, 2) + "\n", "utf-8");
40
- logger.info(`${MCP_CONFIG_FILE} configured with all MCP servers`, { path: mcpConfigPath });
42
+ const newContent = JSON.stringify(config, null, 2) + "\n";
43
+ if (fileExists) {
44
+ const currentContent = readFileSync(mcpConfigPath, "utf-8");
45
+ if (currentContent === newContent) {
46
+ return { step: "mcp-json", status: "up-to-date", message: ".mcp.json up-to-date" };
47
+ }
48
+ }
49
+ if (!dryRun) {
50
+ writeFileSync(mcpConfigPath, newContent, "utf-8");
51
+ logger.info(`${MCP_CONFIG_FILE} configured with all MCP servers`, { path: mcpConfigPath });
52
+ }
53
+ return {
54
+ step: "mcp-json",
55
+ status: fileExists ? "updated" : "created",
56
+ message: fileExists ? ".mcp.json updated" : ".mcp.json created",
57
+ };
41
58
  }
42
- function writeVscodeMcpJson(projectDir) {
59
+ function writeVscodeMcpJson(projectDir, dryRun) {
43
60
  const vscodeDir = path.join(projectDir, ".vscode");
44
- mkdirSync(vscodeDir, { recursive: true });
45
61
  const vscodeMcpPath = path.join(vscodeDir, "mcp.json");
46
62
  let existing = {};
47
- if (existsSync(vscodeMcpPath)) {
63
+ const fileExists = existsSync(vscodeMcpPath);
64
+ if (fileExists) {
48
65
  try {
49
66
  existing = JSON.parse(readFileSync(vscodeMcpPath, "utf-8"));
50
67
  }
@@ -59,59 +76,146 @@ function writeVscodeMcpJson(projectDir) {
59
76
  servers[name] = { type: "stdio", command: entry.command, args: entry.args };
60
77
  }
61
78
  const config = { ...existing, servers };
62
- writeFileSync(vscodeMcpPath, JSON.stringify(config, null, 2) + "\n", "utf-8");
63
- logger.info(".vscode/mcp.json configured with all MCP servers", { path: vscodeMcpPath });
79
+ const newContent = JSON.stringify(config, null, 2) + "\n";
80
+ if (fileExists) {
81
+ const currentContent = readFileSync(vscodeMcpPath, "utf-8");
82
+ if (currentContent === newContent) {
83
+ return { step: "vscode-mcp", status: "up-to-date", message: ".vscode/mcp.json up-to-date" };
84
+ }
85
+ }
86
+ if (!dryRun) {
87
+ mkdirSync(vscodeDir, { recursive: true });
88
+ writeFileSync(vscodeMcpPath, newContent, "utf-8");
89
+ logger.info(".vscode/mcp.json configured with all MCP servers", { path: vscodeMcpPath });
90
+ }
91
+ return {
92
+ step: "vscode-mcp",
93
+ status: fileExists ? "updated" : "created",
94
+ message: fileExists ? ".vscode/mcp.json updated" : ".vscode/mcp.json created",
95
+ };
64
96
  }
65
- function ensureGitignore(projectDir) {
97
+ function ensureGitignore(projectDir, dryRun) {
66
98
  const gitignorePath = path.join(projectDir, ".gitignore");
67
99
  if (!existsSync(gitignorePath)) {
68
- writeFileSync(gitignorePath, GITIGNORE_ENTRY + "\n", "utf-8");
69
- logger.info(".gitignore created", { entry: GITIGNORE_ENTRY });
70
- return;
100
+ if (!dryRun) {
101
+ writeFileSync(gitignorePath, GITIGNORE_ENTRY + "\n", "utf-8");
102
+ logger.info(".gitignore created", { entry: GITIGNORE_ENTRY });
103
+ }
104
+ return { step: "gitignore", status: "created", message: ".gitignore created with workflow-graph/" };
71
105
  }
72
106
  const content = readFileSync(gitignorePath, "utf-8");
73
107
  if (content.includes(GITIGNORE_ENTRY)) {
74
- logger.debug(".gitignore already has entry", { entry: GITIGNORE_ENTRY });
75
- return;
108
+ return { step: "gitignore", status: "up-to-date", message: ".gitignore up-to-date" };
76
109
  }
77
- const separator = content.endsWith("\n") ? "" : "\n";
78
- writeFileSync(gitignorePath, content + separator + GITIGNORE_ENTRY + "\n", "utf-8");
79
- logger.info(".gitignore updated", { entry: GITIGNORE_ENTRY });
80
- }
81
- function initStore(projectDir) {
82
- const storeDir = path.join(projectDir, STORE_DIR);
83
- mkdirSync(storeDir, { recursive: true });
84
- const store = SqliteStore.open(projectDir);
85
- const projectName = path.basename(projectDir);
86
- store.initProject(projectName);
87
- store.close();
88
- logger.info("Database initialized", { dir: STORE_DIR });
110
+ if (!dryRun) {
111
+ const separator = content.endsWith("\n") ? "" : "\n";
112
+ writeFileSync(gitignorePath, content + separator + GITIGNORE_ENTRY + "\n", "utf-8");
113
+ logger.info(".gitignore updated", { entry: GITIGNORE_ENTRY });
114
+ }
115
+ return { step: "gitignore", status: "updated", message: ".gitignore updated with workflow-graph/" };
89
116
  }
90
- function generateAndWriteClaudeMd(projectDir) {
117
+ function generateAndWriteClaudeMd(projectDir, dryRun) {
91
118
  const projectName = path.basename(projectDir);
92
119
  const claudeMdPath = path.join(projectDir, "CLAUDE.md");
93
120
  const section = generateClaudeMdSection(projectName);
121
+ const fileExists = existsSync(claudeMdPath);
94
122
  let existing = "";
95
- if (existsSync(claudeMdPath)) {
123
+ if (fileExists) {
96
124
  existing = readFileSync(claudeMdPath, "utf-8");
97
125
  }
98
126
  const result = applySection(existing, section);
99
- writeFileSync(claudeMdPath, result, "utf-8");
100
- logger.info("CLAUDE.md updated with mcp-graph instructions", { path: claudeMdPath });
127
+ if (fileExists && existing === result) {
128
+ return { step: "claude-md", status: "up-to-date", message: "CLAUDE.md up-to-date" };
129
+ }
130
+ if (!dryRun) {
131
+ writeFileSync(claudeMdPath, result, "utf-8");
132
+ logger.info("CLAUDE.md updated with mcp-graph instructions", { path: claudeMdPath });
133
+ }
134
+ return {
135
+ step: "claude-md",
136
+ status: fileExists ? "updated" : "created",
137
+ message: fileExists ? "CLAUDE.md updated" : "CLAUDE.md created",
138
+ };
101
139
  }
102
- function generateAndWriteCopilotInstructions(projectDir) {
140
+ function generateAndWriteCopilotInstructions(projectDir, dryRun) {
103
141
  const projectName = path.basename(projectDir);
104
142
  const githubDir = path.join(projectDir, ".github");
105
- mkdirSync(githubDir, { recursive: true });
106
143
  const copilotPath = path.join(githubDir, "copilot-instructions.md");
107
144
  const section = generateCopilotInstructions(projectName);
145
+ const fileExists = existsSync(copilotPath);
108
146
  let existing = "";
109
- if (existsSync(copilotPath)) {
147
+ if (fileExists) {
110
148
  existing = readFileSync(copilotPath, "utf-8");
111
149
  }
112
150
  const result = applySection(existing, section);
113
- writeFileSync(copilotPath, result, "utf-8");
114
- logger.info("copilot-instructions.md updated", { path: copilotPath });
151
+ if (fileExists && existing === result) {
152
+ return { step: "copilot-md", status: "up-to-date", message: "copilot-instructions.md up-to-date" };
153
+ }
154
+ if (!dryRun) {
155
+ mkdirSync(githubDir, { recursive: true });
156
+ writeFileSync(copilotPath, result, "utf-8");
157
+ logger.info("copilot-instructions.md updated", { path: copilotPath });
158
+ }
159
+ return {
160
+ step: "copilot-md",
161
+ status: fileExists ? "updated" : "created",
162
+ message: fileExists ? "copilot-instructions.md updated" : "copilot-instructions.md created",
163
+ };
164
+ }
165
+ function initStore(projectDir) {
166
+ const storeDir = path.join(projectDir, STORE_DIR);
167
+ mkdirSync(storeDir, { recursive: true });
168
+ const store = SqliteStore.open(projectDir);
169
+ const projectName = path.basename(projectDir);
170
+ store.initProject(projectName);
171
+ store.close();
172
+ logger.info("Database initialized", { dir: STORE_DIR });
173
+ }
174
+ // --- Public API ---
175
+ export async function runUpdate(projectDir, options = {}) {
176
+ const dbPath = path.join(projectDir, STORE_DIR, "graph.db");
177
+ if (!existsSync(dbPath)) {
178
+ throw new GraphNotInitializedError();
179
+ }
180
+ const steps = [];
181
+ const shouldRun = (step) => !options.only || options.only.includes(step);
182
+ // 1. DB migrations
183
+ if (shouldRun("db")) {
184
+ const store = SqliteStore.open(projectDir);
185
+ store.close();
186
+ steps.push({ step: "db", status: "up-to-date", message: "Database migrations applied" });
187
+ }
188
+ // 2. Config files
189
+ if (shouldRun("mcp-json"))
190
+ steps.push(writeMcpJson(projectDir, options.dryRun));
191
+ if (shouldRun("vscode-mcp"))
192
+ steps.push(writeVscodeMcpJson(projectDir, options.dryRun));
193
+ if (shouldRun("gitignore"))
194
+ steps.push(ensureGitignore(projectDir, options.dryRun));
195
+ // 3. MCP dependencies
196
+ if (shouldRun("deps")) {
197
+ const depResults = await installAllMcpDeps(projectDir);
198
+ const ready = depResults.filter((r) => r.status === "installed" || r.status === "already_available");
199
+ steps.push({
200
+ step: "deps",
201
+ status: "up-to-date",
202
+ message: `MCP dependencies: ${ready.length}/${depResults.length} ready`,
203
+ });
204
+ }
205
+ // 4. AI instruction files
206
+ if (shouldRun("claude-md"))
207
+ steps.push(generateAndWriteClaudeMd(projectDir, options.dryRun));
208
+ if (shouldRun("copilot-md"))
209
+ steps.push(generateAndWriteCopilotInstructions(projectDir, options.dryRun));
210
+ const report = {
211
+ steps,
212
+ hasChanges: steps.some((s) => s.status === "updated" || s.status === "created"),
213
+ };
214
+ logger.info("mcp-graph update complete", {
215
+ updated: steps.filter((s) => s.status === "updated").length,
216
+ upToDate: steps.filter((s) => s.status === "up-to-date").length,
217
+ });
218
+ return report;
115
219
  }
116
220
  export async function runInit(projectDir) {
117
221
  logger.info("mcp-graph init", { dir: projectDir });
@@ -1 +1 @@
1
- {"version":3,"file":"init-project.js","sourceRoot":"","sources":["../../src/mcp/init-project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init-project.js","sourceRoot":"","sources":["../../src/mcp/init-project.ts"],"names":[],"mappings":"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"}
@@ -28,24 +28,26 @@ const app = createApp({
28
28
  // ── Code Graph auto-index ────────────────────────────────
29
29
  if (config.integrations.codeGraphAutoIndex) {
30
30
  const basePath = storeManager.basePath;
31
- try {
32
- const project = storeManager.store.getProject();
33
- if (project) {
34
- const codeStore = new CodeStore(storeManager.store.getDb());
35
- const indexer = new CodeIndexer(codeStore, project.id);
36
- const result = indexer.indexDirectory(basePath, basePath);
37
- logger.info("Code graph auto-indexed", {
38
- files: result.fileCount,
39
- symbols: result.symbolCount,
40
- relations: result.relationCount,
31
+ (async () => {
32
+ try {
33
+ const project = storeManager.store.getProject();
34
+ if (project) {
35
+ const codeStore = new CodeStore(storeManager.store.getDb());
36
+ const indexer = new CodeIndexer(codeStore, project.id);
37
+ const result = await indexer.indexDirectory(basePath, basePath);
38
+ logger.info("Code graph auto-indexed", {
39
+ files: result.fileCount,
40
+ symbols: result.symbolCount,
41
+ relations: result.relationCount,
42
+ });
43
+ }
44
+ }
45
+ catch (err) {
46
+ logger.warn("Code graph auto-index failed (non-blocking)", {
47
+ error: err instanceof Error ? err.message : String(err),
41
48
  });
42
49
  }
43
- }
44
- catch (err) {
45
- logger.warn("Code graph auto-index failed (non-blocking)", {
46
- error: err instanceof Error ? err.message : String(err),
47
- });
48
- }
50
+ })();
49
51
  }
50
52
  // ── Cleanup on shutdown ──────────────────────────────────
51
53
  function cleanup(signal) {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,6 @@
1
+ /**
2
+ * @deprecated Use `node` tool with action:"add" instead. Will be removed in v7.0.
3
+ */
1
4
  import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
5
  import type { SqliteStore } from "../../core/store/sqlite-store.js";
3
6
  export declare function registerAddNode(server: McpServer, store: SqliteStore): void;
@@ -1 +1 @@
1
- {"version":3,"file":"add-node.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/add-node.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAQpE,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAoF3E"}
1
+ {"version":3,"file":"add-node.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/add-node.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAQpE,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAqF3E"}
@@ -1,3 +1,6 @@
1
+ /**
2
+ * @deprecated Use `node` tool with action:"add" instead. Will be removed in v7.0.
3
+ */
1
4
  import { z } from "zod/v4";
2
5
  import { NodeTypeSchema, NodeStatusSchema, XpSizeSchema, PrioritySchema } from "../../schemas/node.schema.js";
3
6
  import { NodeNotFoundError } from "../../core/utils/errors.js";
@@ -5,7 +8,7 @@ import { generateId } from "../../core/utils/id.js";
5
8
  import { now } from "../../core/utils/time.js";
6
9
  import { logger } from "../../core/utils/logger.js";
7
10
  export function registerAddNode(server, store) {
8
- server.tool("add_node", "Create a single node in the graph", {
11
+ server.tool("add_node", "Create a single node in the graph (DEPRECATED — use `node` with action:\"add\")", {
9
12
  type: NodeTypeSchema.describe("Node type (epic, task, subtask, etc.)"),
10
13
  title: z.string().describe("Node title"),
11
14
  description: z.string().optional().describe("Node description"),
@@ -20,6 +23,7 @@ export function registerAddNode(server, store) {
20
23
  blocked: z.boolean().optional().describe("Whether the node is blocked"),
21
24
  metadata: z.record(z.string(), z.unknown()).optional().describe("Custom metadata"),
22
25
  }, async (args) => {
26
+ logger.warn("tool:add_node:deprecated", { message: "Use 'node' tool with action:'add' instead" });
23
27
  logger.debug("tool:add_node", { type: args.type, title: args.title, parentId: args.parentId });
24
28
  if (args.parentId) {
25
29
  const parent = store.getNodeById(args.parentId);
@@ -27,7 +31,7 @@ export function registerAddNode(server, store) {
27
31
  const err = new NodeNotFoundError(args.parentId);
28
32
  return {
29
33
  content: [
30
- { type: "text", text: JSON.stringify({ error: `Parent not found: ${err.message}` }) },
34
+ { type: "text", text: JSON.stringify({ error: `Parent not found: ${err.message}`, _deprecated: "Use 'node' tool with action:'add'" }) },
31
35
  ],
32
36
  isError: true,
33
37
  };
@@ -74,7 +78,7 @@ export function registerAddNode(server, store) {
74
78
  content: [
75
79
  {
76
80
  type: "text",
77
- text: JSON.stringify({ ok: true, node }, null, 2),
81
+ text: JSON.stringify({ ok: true, node, _deprecated: "Use 'node' tool with action:'add'" }, null, 2),
78
82
  },
79
83
  ],
80
84
  };
@@ -1 +1 @@
1
- {"version":3,"file":"add-node.js","sourceRoot":"","sources":["../../../src/mcp/tools/add-node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add-node.js","sourceRoot":"","sources":["../../../src/mcp/tools/add-node.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,6 @@
1
+ /**
2
+ * @deprecated Use `node` tool with action:"delete" instead. Will be removed in v7.0.
3
+ */
1
4
  import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
5
  import type { SqliteStore } from "../../core/store/sqlite-store.js";
3
6
  export declare function registerDeleteNode(server: McpServer, store: SqliteStore): void;
@@ -1 +1 @@
1
- {"version":3,"file":"delete-node.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/delete-node.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAIpE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CA+B9E"}
1
+ {"version":3,"file":"delete-node.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/delete-node.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAIpE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAgC9E"}
@@ -1,8 +1,12 @@
1
+ /**
2
+ * @deprecated Use `node` tool with action:"delete" instead. Will be removed in v7.0.
3
+ */
1
4
  import { z } from "zod/v4";
2
5
  import { NodeNotFoundError } from "../../core/utils/errors.js";
3
6
  import { logger } from "../../core/utils/logger.js";
4
7
  export function registerDeleteNode(server, store) {
5
- server.tool("delete_node", "Delete a node and all its associated edges from the graph", { id: z.string().describe("The node ID to delete") }, async ({ id }) => {
8
+ server.tool("delete_node", "Delete a node and all its associated edges (DEPRECATED use `node` with action:\"delete\")", { id: z.string().describe("The node ID to delete") }, async ({ id }) => {
9
+ logger.warn("tool:delete_node:deprecated", { message: "Use 'node' tool with action:'delete' instead" });
6
10
  logger.debug("tool:delete_node", { id });
7
11
  const deleted = store.deleteNode(id);
8
12
  if (!deleted) {
@@ -10,7 +14,7 @@ export function registerDeleteNode(server, store) {
10
14
  logger.warn("tool:delete_node:fail", { error: err.message });
11
15
  return {
12
16
  content: [
13
- { type: "text", text: JSON.stringify({ error: err.message }) },
17
+ { type: "text", text: JSON.stringify({ error: err.message, _deprecated: "Use 'node' tool with action:'delete'" }) },
14
18
  ],
15
19
  isError: true,
16
20
  };
@@ -20,7 +24,7 @@ export function registerDeleteNode(server, store) {
20
24
  content: [
21
25
  {
22
26
  type: "text",
23
- text: JSON.stringify({ ok: true, deletedId: id }, null, 2),
27
+ text: JSON.stringify({ ok: true, deletedId: id, _deprecated: "Use 'node' tool with action:'delete'" }, null, 2),
24
28
  },
25
29
  ],
26
30
  };
@@ -1 +1 @@
1
- {"version":3,"file":"delete-node.js","sourceRoot":"","sources":["../../../src/mcp/tools/delete-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAG3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,MAAM,UAAU,kBAAkB,CAAC,MAAiB,EAAE,KAAkB;IACtE,MAAM,CAAC,IAAI,CACT,aAAa,EACb,2DAA2D,EAC3D,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,EACpD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;QACf,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAErC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,IAAI,iBAAiB,CAAC,EAAE,CAAC,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7D,OAAO;gBACL,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE;iBACxE;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC3C,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;iBAC3D;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"delete-node.js","sourceRoot":"","sources":["../../../src/mcp/tools/delete-node.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAG3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,MAAM,UAAU,kBAAkB,CAAC,MAAiB,EAAE,KAAkB;IACtE,MAAM,CAAC,IAAI,CACT,aAAa,EACb,6FAA6F,EAC7F,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,EACpD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;QACf,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,OAAO,EAAE,8CAA8C,EAAE,CAAC,CAAC;QACxG,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAErC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,IAAI,iBAAiB,CAAC,EAAE,CAAC,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7D,OAAO;gBACL,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,sCAAsC,EAAE,CAAC,EAAE;iBAC7H;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC3C,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,sCAAsC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;iBAChH;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AA+BpE,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAgC5E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAmCpE,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAuC5E"}
@@ -6,28 +6,33 @@ import { registerNext } from "./next.js";
6
6
  import { registerUpdateStatus } from "./update-status.js";
7
7
  import { registerMetrics } from "./metrics.js";
8
8
  import { registerContext } from "./context.js";
9
- import { registerUpdateNode } from "./update-node.js";
10
- import { registerDeleteNode } from "./delete-node.js";
11
9
  import { registerSearch } from "./search.js";
12
10
  import { registerRagContext } from "./rag-context.js";
13
11
  import { registerAnalyze } from "./analyze.js";
14
12
  import { registerEdge } from "./edge.js";
15
13
  import { registerSnapshot } from "./snapshot.js";
16
- import { registerAddNode } from "./add-node.js";
17
14
  import { registerExport } from "./export.js";
18
15
  import { registerMoveNode } from "./move-node.js";
19
16
  import { registerCloneNode } from "./clone-node.js";
20
17
  import { registerReindexKnowledge } from "./reindex-knowledge.js";
21
18
  import { registerSyncStackDocs } from "./sync-stack-docs.js";
22
- import { registerValidateTask } from "./validate-task.js";
23
- import { registerValidateAc } from "./validate-ac.js";
24
19
  import { registerPlanSprint } from "./plan-sprint.js";
25
20
  import { registerSetPhase } from "./set-phase.js";
26
21
  import { registerMemory } from "./memory.js";
27
- import { registerListSkills } from "./list-skills.js";
28
22
  import { registerManageSkill } from "./manage-skill.js";
23
+ // Consolidated tools
24
+ import { registerNode } from "./node.js";
25
+ import { registerValidate } from "./validate.js";
26
+ // Deprecated tools (backward compat — will be removed in v7.0)
27
+ import { registerAddNode } from "./add-node.js";
28
+ import { registerUpdateNode } from "./update-node.js";
29
+ import { registerDeleteNode } from "./delete-node.js";
30
+ import { registerValidateTask } from "./validate-task.js";
31
+ import { registerValidateAc } from "./validate-ac.js";
32
+ import { registerListSkills } from "./list-skills.js";
29
33
  import { wrapToolsWithLifecycle } from "../lifecycle-wrapper.js";
30
34
  export function registerAllTools(server, store) {
35
+ // Core tools
31
36
  registerInit(server, store);
32
37
  registerImportPrd(server, store);
33
38
  registerList(server, store);
@@ -36,26 +41,30 @@ export function registerAllTools(server, store) {
36
41
  registerUpdateStatus(server, store);
37
42
  registerMetrics(server, store);
38
43
  registerContext(server, store);
39
- registerUpdateNode(server, store);
40
- registerDeleteNode(server, store);
41
44
  registerSearch(server, store);
42
45
  registerRagContext(server, store);
43
46
  registerAnalyze(server, store);
44
47
  registerEdge(server, store);
45
48
  registerSnapshot(server, store);
46
- registerAddNode(server, store);
47
49
  registerExport(server, store);
48
50
  registerMoveNode(server, store);
49
51
  registerCloneNode(server, store);
50
52
  registerReindexKnowledge(server, store);
51
53
  registerSyncStackDocs(server, store);
52
- registerValidateTask(server, store);
53
- registerValidateAc(server, store);
54
54
  registerPlanSprint(server, store);
55
55
  registerSetPhase(server, store);
56
56
  registerMemory(server, store);
57
- registerListSkills(server);
58
57
  registerManageSkill(server, store);
58
+ // Consolidated tools
59
+ registerNode(server, store);
60
+ registerValidate(server, store);
61
+ // Deprecated tools (backward compat — will be removed in v7.0)
62
+ registerAddNode(server, store);
63
+ registerUpdateNode(server, store);
64
+ registerDeleteNode(server, store);
65
+ registerValidateTask(server, store);
66
+ registerValidateAc(server, store);
67
+ registerListSkills(server);
59
68
  // Wrap all registered tool responses with lifecycle context
60
69
  wrapToolsWithLifecycle(server, store);
61
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp/tools/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  /**
2
- * MCP Tool list_skills
3
- * Lists built-in skills with optional phase filter.
2
+ * @deprecated Use `manage_skill` tool with action:"list" instead. Will be removed in v7.0.
4
3
  */
5
4
  import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
6
5
  export declare function registerListSkills(server: McpServer): void;
@@ -1 +1 @@
1
- {"version":3,"file":"list-skills.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/list-skills.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKzE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAqE1D"}
1
+ {"version":3,"file":"list-skills.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/list-skills.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKzE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAwE1D"}