@mgsoftwarebv/mg-dashboard-mcp 7.0.12 → 7.0.13

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
@@ -10180,7 +10180,7 @@ var TOOLS = [
10180
10180
  },
10181
10181
  {
10182
10182
  name: "get-team-memory",
10183
- description: "Fetch the FULL stored text of past conversation(s) found via search-team-memory (pass the `id` from its results). search-team-memory returns only snippets; this returns the distilled problem\u2192solution transcript so you can reuse the actual fix/approach/code. Call this on the 1-2 most relevant hits before re-solving from scratch.",
10183
+ description: "Fetch the distilled problem\u2192solution for past conversation(s) found via search-team-memory (pass the `id` from its results). By default returns SOLUTION-MODE: the full problem\u2192solution summary plus the concrete files touched, commands run, error-codes and tech \u2014 the reusable fix without the noise. This is usually enough to reuse the approach. Only set `full: true` if you need the verbatim transcript (much larger). Call this on the 1-2 most relevant hits before re-solving from scratch.",
10184
10184
  inputSchema: {
10185
10185
  type: "object",
10186
10186
  properties: {
@@ -10192,6 +10192,10 @@ var TOOLS = [
10192
10192
  type: "array",
10193
10193
  items: { type: "string" },
10194
10194
  description: "Optional: up to 5 memory ids to fetch in one call."
10195
+ },
10196
+ full: {
10197
+ type: "boolean",
10198
+ description: "Include the raw distilled transcript (up to ~24KB/chat). Default false \u2014 the summary + artifacts are usually enough and far cheaper."
10195
10199
  }
10196
10200
  }
10197
10201
  }
@@ -10350,13 +10354,14 @@ These are SNIPPETS. For any hit worth reusing, call get-team-memory with its id
10350
10354
  ]
10351
10355
  };
10352
10356
  }
10357
+ const full = a.full === true;
10353
10358
  const res = await fetch(`${dashboardBaseUrl}/api/team-memory/detail`, {
10354
10359
  method: "POST",
10355
10360
  headers: {
10356
10361
  "content-type": "application/json",
10357
10362
  authorization: `Bearer ${apiKey}`
10358
10363
  },
10359
- body: JSON.stringify({ ids: ids.slice(0, 5) })
10364
+ body: JSON.stringify({ ids: ids.slice(0, 5), full })
10360
10365
  });
10361
10366
  if (!res.ok) {
10362
10367
  const detail = await res.text().catch(() => "");
@@ -10383,14 +10388,39 @@ These are SNIPPETS. For any hit worth reusing, call get-team-memory with its id
10383
10388
  const blocks = data.results.map((r) => {
10384
10389
  const when = r.lastMessageAt ? new Date(r.lastMessageAt).toISOString().slice(0, 10) : "unknown date";
10385
10390
  const repo = r.repo ?? "unknown repo";
10386
- return `## ${r.title}
10387
- [${repo} \xB7 ${when} \xB7 ${r.messageCount} msgs \xB7 ${r.source}]
10388
-
10389
- ` + r.content;
10391
+ const facets = [
10392
+ r.category,
10393
+ r.resolved === false ? "unresolved" : null,
10394
+ ...Array.isArray(r.tech) ? r.tech.slice(0, 5) : []
10395
+ ].filter(Boolean);
10396
+ const parts = [
10397
+ `## ${r.title}`,
10398
+ `[${repo} \xB7 ${when} \xB7 ${r.messageCount} msgs \xB7 ${r.source}]` + (facets.length ? `
10399
+ ${facets.join(", ")}` : ""),
10400
+ "",
10401
+ r.summary?.trim() || "(no summary stored)"
10402
+ ];
10403
+ const files = r.artifacts?.files ?? [];
10404
+ const commands = r.artifacts?.commands ?? [];
10405
+ const symbols = Array.isArray(r.symbols) ? r.symbols : [];
10406
+ if (files.length)
10407
+ parts.push("", `Files: ${files.join(", ")}`);
10408
+ if (commands.length)
10409
+ parts.push(
10410
+ "",
10411
+ "Commands:",
10412
+ ...commands.map((c) => ` $ ${c}`)
10413
+ );
10414
+ if (symbols.length)
10415
+ parts.push("", `Symbols: ${symbols.slice(0, 12).join(", ")}`);
10416
+ if (full && r.content?.trim())
10417
+ parts.push("", "--- full transcript ---", r.content);
10418
+ return parts.join("\n");
10390
10419
  });
10420
+ const hint = full ? "" : "\n\n(solution-mode: summary + artifacts. Re-call with full:true on an id for the verbatim transcript.)";
10391
10421
  return {
10392
10422
  content: [
10393
- { type: "text", text: blocks.join("\n\n---\n\n") }
10423
+ { type: "text", text: blocks.join("\n\n---\n\n") + hint }
10394
10424
  ]
10395
10425
  };
10396
10426
  }