@ankimcp/anki-mcp-server 0.18.0 → 0.18.3

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.
@@ -16,6 +16,7 @@ const mcp_nest_1 = require("@rekog/mcp-nest");
16
16
  const zod_1 = require("zod");
17
17
  const anki_connect_client_1 = require("../../../../clients/anki-connect.client");
18
18
  const anki_utils_1 = require("../../../../utils/anki.utils");
19
+ const deck_hierarchy_utils_1 = require("../../../../utils/deck-hierarchy.utils");
19
20
  const stats_utils_1 = require("../../../../utils/stats.utils");
20
21
  let CollectionStatsTool = CollectionStatsTool_1 = class CollectionStatsTool {
21
22
  ankiClient;
@@ -61,34 +62,27 @@ let CollectionStatsTool = CollectionStatsTool_1 = class CollectionStatsTool {
61
62
  if (!deckStatsResponse || typeof deckStatsResponse !== "object") {
62
63
  throw new Error("Invalid getDeckStats response");
63
64
  }
64
- const per_deck = [];
65
- const counts = {
66
- total: 0,
67
- new: 0,
68
- learning: 0,
69
- review: 0,
70
- other: 0,
71
- };
65
+ const perDeckOwnTotal = new Map();
66
+ const perDeckStats = new Map();
72
67
  const missingDecks = [];
73
68
  for (const deckName of deckNames) {
74
69
  const deckId = deckNamesAndIds[deckName];
75
70
  const deckStats = deckId != null ? deckStatsResponse[String(deckId)] : undefined;
76
71
  if (!deckStats) {
77
72
  missingDecks.push(deckName);
78
- per_deck.push({
79
- deck: deckName,
80
- total: 0,
81
- new: 0,
82
- learning: 0,
83
- review: 0,
84
- other: 0,
85
- });
73
+ perDeckOwnTotal.set(deckName, 0);
86
74
  continue;
87
75
  }
88
- const total = deckStats.total_in_deck ?? 0;
89
- const newCount = deckStats.new_count ?? 0;
90
- const learning = deckStats.learn_count ?? 0;
91
- const review = deckStats.review_count ?? 0;
76
+ perDeckOwnTotal.set(deckName, deckStats.total_in_deck ?? 0);
77
+ perDeckStats.set(deckName, deckStats);
78
+ }
79
+ const per_deck = [];
80
+ for (const deckName of deckNames) {
81
+ const stats = perDeckStats.get(deckName);
82
+ const newCount = stats?.new_count ?? 0;
83
+ const learning = stats?.learn_count ?? 0;
84
+ const review = stats?.review_count ?? 0;
85
+ const total = (0, deck_hierarchy_utils_1.rollupDeckTotal)(deckName, perDeckOwnTotal);
92
86
  const other = Math.max(0, total - newCount - learning - review);
93
87
  per_deck.push({
94
88
  deck: deckName,
@@ -98,17 +92,30 @@ let CollectionStatsTool = CollectionStatsTool_1 = class CollectionStatsTool {
98
92
  review,
99
93
  other,
100
94
  });
101
- counts.total += total;
102
- counts.new += newCount;
103
- counts.learning += learning;
104
- counts.review += review;
105
- counts.other += other;
106
95
  }
107
96
  if (missingDecks.length > 0) {
108
97
  this.logger.warn(`getDeckStats did not return stats for ${missingDecks.length} deck(s): ` +
109
98
  `${missingDecks.join(", ")}. Filled with zeros.`);
110
99
  }
111
- this.logger.log(`Aggregated counts: ${counts.total} total cards across ${deckNames.length} decks`);
100
+ const rootDeckNames = new Set((0, deck_hierarchy_utils_1.getRootDeckNames)(deckNames));
101
+ const counts = {
102
+ total: 0,
103
+ new: 0,
104
+ learning: 0,
105
+ review: 0,
106
+ other: 0,
107
+ };
108
+ for (const entry of per_deck) {
109
+ if (!rootDeckNames.has(entry.deck))
110
+ continue;
111
+ counts.total += entry.total;
112
+ counts.new += entry.new;
113
+ counts.learning += entry.learning;
114
+ counts.review += entry.review;
115
+ counts.other += entry.other;
116
+ }
117
+ this.logger.log(`Aggregated counts: ${counts.total} total cards across ${rootDeckNames.size} root deck(s) ` +
118
+ `(${deckNames.length} total decks including children)`);
112
119
  await context.reportProgress({ progress: 40, total: 100 });
113
120
  if (counts.total === 0) {
114
121
  this.logger.log("Collection is empty (no cards)");
@@ -202,7 +209,9 @@ __decorate([
202
209
  (0, mcp_nest_1.Tool)({
203
210
  name: "collection_stats",
204
211
  description: "Get aggregated statistics across all decks in the collection including card counts, ease factor distribution, and interval distribution. " +
205
- "Provides both collection-wide metrics and per-deck breakdown. " +
212
+ "Per-deck counts are rolled up over descendants (a parent deck includes its children), matching Anki's deck browser. " +
213
+ "Collection-level `counts` sum the ROOT decks only to avoid double-counting children. " +
214
+ "Invariant: for every deck and for the collection, total === new + learning + review + other. " +
206
215
  "Use this to analyze overall collection health and compare deck statistics. " +
207
216
  "Ease buckets and interval buckets can be customized to focus on specific ranges.",
208
217
  parameters: zod_1.z.object({
@@ -229,16 +238,32 @@ __decorate([
229
238
  }),
230
239
  outputSchema: zod_1.z.object({
231
240
  total_decks: zod_1.z.number(),
232
- counts: zod_1.z.object({
233
- total: zod_1.z.number(),
234
- new: zod_1.z.number(),
235
- learning: zod_1.z.number(),
236
- review: zod_1.z.number(),
241
+ counts: zod_1.z
242
+ .object({
243
+ total: zod_1.z
244
+ .number()
245
+ .describe("Total cards in the collection. Computed as the sum of " +
246
+ "ROOT-deck rolled-up totals (decks without `::` in the name), " +
247
+ "which prevents double-counting children. Invariant: " +
248
+ "total === new + learning + review + other."),
249
+ new: zod_1.z
250
+ .number()
251
+ .describe("New cards (never studied), summed over root decks' rolled-up counts."),
252
+ learning: zod_1.z
253
+ .number()
254
+ .describe("Learning/relearning cards, summed over root decks' rolled-up counts."),
255
+ review: zod_1.z
256
+ .number()
257
+ .describe("Review cards (mature), summed over root decks' rolled-up counts."),
237
258
  other: zod_1.z
238
259
  .number()
239
- .describe("Cards not in new/learning/review (typically suspended or buried). " +
260
+ .describe("Cards not in new/learning/review (typically suspended or buried), " +
261
+ "summed over root decks' rolled-up counts. " +
240
262
  "Computed as total - new - learning - review."),
241
- }),
263
+ })
264
+ .describe("Aggregated card counts across the collection. Summed over ROOT " +
265
+ "decks only (names without `::`) so that a parent's rollup is not " +
266
+ "added on top of its children."),
242
267
  ease: zod_1.z.object({
243
268
  mean: zod_1.z.number(),
244
269
  median: zod_1.z.number(),
@@ -255,14 +280,19 @@ __decorate([
255
280
  count: zod_1.z.number(),
256
281
  buckets: zod_1.z.record(zod_1.z.string(), zod_1.z.number()),
257
282
  }),
258
- per_deck: zod_1.z.array(zod_1.z.object({
283
+ per_deck: zod_1.z
284
+ .array(zod_1.z.object({
259
285
  deck: zod_1.z.string(),
260
286
  total: zod_1.z.number(),
261
287
  new: zod_1.z.number(),
262
288
  learning: zod_1.z.number(),
263
289
  review: zod_1.z.number(),
264
290
  other: zod_1.z.number(),
265
- })),
291
+ }))
292
+ .describe("Per-deck breakdown with one entry per deck. Each entry's counts " +
293
+ 'are rolled up over that deck\'s descendants (entry for "German" ' +
294
+ 'includes cards from "German::Verbs"). Invariant per row: ' +
295
+ "total === new + learning + review + other."),
266
296
  }),
267
297
  annotations: {
268
298
  title: "Collection Statistics",
@@ -1 +1 @@
1
- {"version":3,"file":"collection-stats.tool.js","sourceRoot":"","sources":["../../../../../../src/mcp/primitives/essential/tools/collection-stats/collection-stats.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collection-stats.tool.js","sourceRoot":"","sources":["../../../../../../src/mcp/primitives/essential/tools/collection-stats/collection-stats.tool.ts"],"names":[],"mappings":"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"}
@@ -50,7 +50,9 @@ exports.DeckStatsTool = DeckStatsTool;
50
50
  __decorate([
51
51
  (0, mcp_nest_1.Tool)({
52
52
  name: "deckStats",
53
- description: 'Get comprehensive statistics for a single deck including card counts, ease and interval distributions. Pass a deck name (e.g., "Japanese::JLPT N5") and optional bucket boundaries.',
53
+ description: 'Get comprehensive statistics for a single deck including card counts, ease and interval distributions. Pass a deck name (e.g., "Japanese::JLPT N5") and optional bucket boundaries. ' +
54
+ "Counts are rolled up over descendant decks (parent decks include their children), matching Anki's deck browser. " +
55
+ "Invariant: total === new + learning + review + other.",
54
56
  parameters: zod_1.z.object({
55
57
  deck: zod_1.z.string().describe('Deck name (e.g., "Japanese::JLPT N5")'),
56
58
  easeBuckets: zod_1.z
@@ -67,16 +69,31 @@ __decorate([
67
69
  outputSchema: zod_1.z.object({
68
70
  success: zod_1.z.boolean(),
69
71
  deck: zod_1.z.string(),
70
- counts: zod_1.z.object({
71
- total: zod_1.z.number(),
72
- new: zod_1.z.number(),
73
- learning: zod_1.z.number(),
74
- review: zod_1.z.number(),
72
+ counts: zod_1.z
73
+ .object({
74
+ total: zod_1.z
75
+ .number()
76
+ .describe("Total cards in this deck AND all of its descendants. " +
77
+ 'Example: stats for "German" include cards in "German::Verbs" ' +
78
+ 'and "German::Verbs::Irregular". Invariant: ' +
79
+ "total === new + learning + review + other."),
80
+ new: zod_1.z
81
+ .number()
82
+ .describe("New cards (never studied), rolled up over descendant decks."),
83
+ learning: zod_1.z
84
+ .number()
85
+ .describe("Learning/relearning cards, rolled up over descendant decks."),
86
+ review: zod_1.z
87
+ .number()
88
+ .describe("Review cards (mature), rolled up over descendant decks."),
75
89
  other: zod_1.z
76
90
  .number()
77
- .describe("Cards not in new/learning/review (typically suspended or buried). " +
91
+ .describe("Cards not in new/learning/review (typically suspended or buried), " +
92
+ "rolled up over descendant decks. " +
78
93
  "Computed as total - new - learning - review."),
79
- }),
94
+ })
95
+ .describe("Card counts rolled up over the deck and all of its descendants. " +
96
+ "Matches Anki's deck browser behaviour for parent decks."),
80
97
  ease: zod_1.z.object({
81
98
  mean: zod_1.z.number(),
82
99
  median: zod_1.z.number(),
@@ -1 +1 @@
1
- {"version":3,"file":"deck-stats.tool.js","sourceRoot":"","sources":["../../../../../src/mcp/primitives/essential/tools/deck-stats.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deck-stats.tool.js","sourceRoot":"","sources":["../../../../../src/mcp/primitives/essential/tools/deck-stats.tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAoD;AACpD,8CAAuC;AAEvC,6BAAwB;AACxB,8EAAsE;AACtE,0DAA6D;AAC7D,6EAAmE;AAG5D,IAAM,aAAa,qBAAnB,MAAM,aAAa;IAGK;IAFZ,MAAM,GAAG,IAAI,eAAM,CAAC,eAAa,CAAC,IAAI,CAAC,CAAC;IAEzD,YAA6B,UAA6B;QAA7B,eAAU,GAAV,UAAU,CAAmB;IAAG,CAAC;IAyFxD,AAAN,KAAK,CAAC,OAAO,CACX,MAIC,EACD,OAAgB;QAEhB,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,iCAAiC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAChE,MAAM,OAAO,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YAE3D,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAS,EAC5B;gBACE,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,eAAe,EAAE,MAAM,CAAC,eAAe;aACxC,EACD,IAAI,CAAC,UAAU,EACf,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACjB,MAAM,OAAO,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YACzD,CAAC,CACF,CAAC;YAEF,MAAM,OAAO,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YAC5D,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;YACxD,OAAO,IAAA,gCAAmB,EAAC,KAAK,EAAE;gBAChC,MAAM,EAAE,WAAW;gBACnB,IAAI,EAAE,sDAAsD;aAC7D,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF,CAAA;AA9HY,sCAAa;AA4FlB;IAvFL,IAAA,eAAI,EAAC;QACJ,IAAI,EAAE,WAAW;QACjB,WAAW,EACT,sLAAsL;YACtL,kHAAkH;YAClH,uDAAuD;QACzD,UAAU,EAAE,OAAC,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YAClE,WAAW,EAAE,OAAC;iBACX,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;iBAC5B,GAAG,CAAC,EAAE,CAAC;iBACP,QAAQ,EAAE;iBACV,QAAQ,CACP,0EAA0E,CAC3E;YACH,eAAe,EAAE,OAAC;iBACf,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;iBAC5B,GAAG,CAAC,EAAE,CAAC;iBACP,QAAQ,EAAE;iBACV,QAAQ,CACP,2EAA2E,CAC5E;SACJ,CAAC;QACF,YAAY,EAAE,OAAC,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,OAAC,CAAC,OAAO,EAAE;YACpB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;YAChB,MAAM,EAAE,OAAC;iBACN,MAAM,CAAC;gBACN,KAAK,EAAE,OAAC;qBACL,MAAM,EAAE;qBACR,QAAQ,CACP,uDAAuD;oBACrD,+DAA+D;oBAC/D,6CAA6C;oBAC7C,4CAA4C,CAC/C;gBACH,GAAG,EAAE,OAAC;qBACH,MAAM,EAAE;qBACR,QAAQ,CACP,6DAA6D,CAC9D;gBACH,QAAQ,EAAE,OAAC;qBACR,MAAM,EAAE;qBACR,QAAQ,CACP,6DAA6D,CAC9D;gBACH,MAAM,EAAE,OAAC;qBACN,MAAM,EAAE;qBACR,QAAQ,CACP,yDAAyD,CAC1D;gBACH,KAAK,EAAE,OAAC;qBACL,MAAM,EAAE;qBACR,QAAQ,CACP,oEAAoE;oBAClE,mCAAmC;oBACnC,8CAA8C,CACjD;aACJ,CAAC;iBACD,QAAQ,CACP,kEAAkE;gBAChE,yDAAyD,CAC5D;YACH,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC;gBACb,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;gBAChB,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;gBAClB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;gBACf,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;gBACf,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;gBACjB,OAAO,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC;aAC1C,CAAC;YACF,SAAS,EAAE,OAAC,CAAC,MAAM,CAAC;gBAClB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;gBAChB,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;gBAClB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;gBACf,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;gBACf,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;gBACjB,OAAO,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC;aAC1C,CAAC;SACH,CAAC;QACF,WAAW,EAAE;YACX,KAAK,EAAE,iBAAiB;YACxB,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;SACrB;KACF,CAAC;;;;4CAkCD;wBA7HU,aAAa;IADzB,IAAA,mBAAU,GAAE;qCAI8B,uCAAiB;GAH/C,aAAa,CA8HzB"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.deckStats = deckStats;
4
4
  const stats_utils_1 = require("../../../../../utils/stats.utils");
5
+ const deck_hierarchy_utils_1 = require("../../../../../utils/deck-hierarchy.utils");
5
6
  async function deckStats(params, client, onProgress) {
6
7
  const { deck, easeBuckets = [2.0, 2.5, 3.0], intervalBuckets = [7, 21, 90], } = params;
7
8
  const deckNamesAndIds = await client.invoke("deckNamesAndIds", {});
@@ -9,17 +10,23 @@ async function deckStats(params, client, onProgress) {
9
10
  if (deckId == null) {
10
11
  throw new Error(`Deck "${deck}" not found`);
11
12
  }
13
+ const subtreeDeckNames = Object.keys(deckNamesAndIds).filter((name) => name === deck || (0, deck_hierarchy_utils_1.isDescendantOf)(name, deck));
12
14
  const deckStatsResponse = await client.invoke("getDeckStats", {
13
- decks: [deck],
15
+ decks: subtreeDeckNames,
14
16
  });
15
- const deckStatsData = deckStatsResponse?.[String(deckId)];
16
- if (!deckStatsData) {
17
+ const rootDeckStats = deckStatsResponse?.[String(deckId)];
18
+ if (!rootDeckStats) {
17
19
  throw new Error(`Deck "${deck}" not found in statistics response`);
18
20
  }
19
- const total = deckStatsData.total_in_deck || 0;
20
- const newCount = deckStatsData.new_count || 0;
21
- const learning = deckStatsData.learn_count || 0;
22
- const review = deckStatsData.review_count || 0;
21
+ const newCount = rootDeckStats.new_count || 0;
22
+ const learning = rootDeckStats.learn_count || 0;
23
+ const review = rootDeckStats.review_count || 0;
24
+ let total = 0;
25
+ for (const descendantName of subtreeDeckNames) {
26
+ const descId = deckNamesAndIds[descendantName];
27
+ const descStats = descId != null ? deckStatsResponse?.[String(descId)] : undefined;
28
+ total += descStats?.total_in_deck ?? 0;
29
+ }
23
30
  const other = Math.max(0, total - newCount - learning - review);
24
31
  const counts = {
25
32
  total,
@@ -1 +1 @@
1
- {"version":3,"file":"deckStats.action.js","sourceRoot":"","sources":["../../../../../../../src/mcp/primitives/essential/tools/deckActions/actions/deckStats.action.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deckStats.action.js","sourceRoot":"","sources":["../../../../../../../src/mcp/primitives/essential/tools/deckActions/actions/deckStats.action.ts"],"names":[],"mappings":";;AAyFA,8BAwJC;AA/OD,kEAGiC;AACjC,oFAAkE;AAmF3D,KAAK,UAAU,SAAS,CAC7B,MAAuB,EACvB,MAAyB,EACzB,UAA6B;IAE7B,MAAM,EACJ,IAAI,EACJ,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAC7B,eAAe,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,GAC9B,GAAG,MAAM,CAAC;IAOX,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,MAAM,CACzC,iBAAiB,EACjB,EAAE,CACH,CAAC;IACF,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC;IAEvC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,aAAa,CAAC,CAAC;IAC9C,CAAC;IAID,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CAC1D,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,IAAI,IAAA,qCAAc,EAAC,IAAI,EAAE,IAAI,CAAC,CACtD,CAAC;IAGF,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,MAAM,CAE3C,cAAc,EAAE;QAChB,KAAK,EAAE,gBAAgB;KACxB,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,iBAAiB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAE1D,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,oCAAoC,CAAC,CAAC;IACrE,CAAC;IAID,MAAM,QAAQ,GAAG,aAAa,CAAC,SAAS,IAAI,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,IAAI,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,aAAa,CAAC,YAAY,IAAI,CAAC,CAAC;IAK/C,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,cAAc,IAAI,gBAAgB,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;QAC/C,MAAM,SAAS,GACb,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnE,KAAK,IAAI,SAAS,EAAE,aAAa,IAAI,CAAC,CAAC;IACzC,CAAC;IAKD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC,CAAC;IAEhE,MAAM,MAAM,GAAG;QACb,KAAK;QACL,GAAG,EAAE,QAAQ;QACb,QAAQ;QACR,MAAM;QACN,KAAK;KACN,CAAC;IAEF,MAAM,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;IAGvB,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,OAAO,EAAE,IAAI;YACb,IAAI;YACJ,MAAM;YACN,IAAI,EAAE,IAAA,iCAAmB,EAAC,EAAE,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;YAC1D,SAAS,EAAE,IAAA,iCAAmB,EAAC,EAAE,EAAE;gBACjC,UAAU,EAAE,eAAe;gBAC3B,UAAU,EAAE,GAAG;aAChB,CAAC;SACH,CAAC;IACJ,CAAC;IAID,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,MAAM,CAAW,WAAW,EAAE;QACzD,KAAK,EAAE,SAAS,eAAe,GAAG;KACnC,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,IAAI;YACJ,MAAM;YACN,IAAI,EAAE,IAAA,iCAAmB,EAAC,EAAE,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;YAC1D,SAAS,EAAE,IAAA,iCAAmB,EAAC,EAAE,EAAE;gBACjC,UAAU,EAAE,eAAe;gBAC3B,UAAU,EAAE,GAAG;aAChB,CAAC;SACH,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;IAGvB,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,MAAM,CAAW,gBAAgB,EAAE;QACrE,KAAK,EAAE,OAAO;KACf,CAAC,CAAC;IAGH,MAAM,UAAU,GAAG,cAAc;SAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAExB,MAAM,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;IAGvB,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,MAAM,CAAW,cAAc,EAAE;QACjE,KAAK,EAAE,OAAO;KACf,CAAC,CAAC;IAGH,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAEzD,MAAM,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;IAGvB,MAAM,IAAI,GAAG,IAAA,iCAAmB,EAAC,UAAU,EAAE;QAC3C,UAAU,EAAE,WAAW;KACxB,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,IAAA,iCAAmB,EAAC,cAAc,EAAE;QACpD,UAAU,EAAE,eAAe;QAC3B,UAAU,EAAE,GAAG;KAChB,CAAC,CAAC;IAEH,OAAO;QACL,OAAO,EAAE,IAAI;QACb,IAAI;QACJ,MAAM;QACN,IAAI;QACJ,SAAS;KACV,CAAC;AACJ,CAAC"}
@@ -70,7 +70,7 @@ let ModelFieldNamesTool = ModelFieldNamesTool_1 = class ModelFieldNamesTool {
70
70
  else if (lowerModelName.includes("cloze")) {
71
71
  exampleFields = {
72
72
  Text: "The {{c1::hidden}} text will be replaced with [...] on the card",
73
- Extra: "Additional information or hints",
73
+ "Back Extra": "Additional information or hints",
74
74
  };
75
75
  }
76
76
  const response = {
@@ -1 +1 @@
1
- {"version":3,"file":"model-field-names.tool.js","sourceRoot":"","sources":["../../../../../src/mcp/primitives/essential/tools/model-field-names.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-field-names.tool.js","sourceRoot":"","sources":["../../../../../src/mcp/primitives/essential/tools/model-field-names.tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function isDescendantOf(deckName: string, ancestor: string): boolean;
2
+ export declare function getRootDeckNames(allDeckNames: readonly string[]): string[];
3
+ export declare function rollupDeckTotal(deckName: string, perDeckOwnTotal: ReadonlyMap<string, number>): number;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isDescendantOf = isDescendantOf;
4
+ exports.getRootDeckNames = getRootDeckNames;
5
+ exports.rollupDeckTotal = rollupDeckTotal;
6
+ function isDescendantOf(deckName, ancestor) {
7
+ return deckName.startsWith(`${ancestor}::`);
8
+ }
9
+ function getRootDeckNames(allDeckNames) {
10
+ return allDeckNames.filter((name) => !name.includes("::"));
11
+ }
12
+ function rollupDeckTotal(deckName, perDeckOwnTotal) {
13
+ let sum = perDeckOwnTotal.get(deckName) ?? 0;
14
+ for (const [name, total] of perDeckOwnTotal) {
15
+ if (isDescendantOf(name, deckName)) {
16
+ sum += total;
17
+ }
18
+ }
19
+ return sum;
20
+ }
21
+ //# sourceMappingURL=deck-hierarchy.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deck-hierarchy.utils.js","sourceRoot":"","sources":["../../../src/mcp/utils/deck-hierarchy.utils.ts"],"names":[],"mappings":";;AAkBA,wCAEC;AAQD,4CAEC;AAWD,0CAWC;AAlCD,SAAgB,cAAc,CAAC,QAAgB,EAAE,QAAgB;IAC/D,OAAO,QAAQ,CAAC,UAAU,CAAC,GAAG,QAAQ,IAAI,CAAC,CAAC;AAC9C,CAAC;AAQD,SAAgB,gBAAgB,CAAC,YAA+B;IAC9D,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D,CAAC;AAWD,SAAgB,eAAe,CAC7B,QAAgB,EAChB,eAA4C;IAE5C,IAAI,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,eAAe,EAAE,CAAC;QAC5C,IAAI,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;YACnC,GAAG,IAAI,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}