@ankimcp/anki-mcp-server 0.8.4 → 0.9.0

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 (39) hide show
  1. package/README.md +3 -2
  2. package/dist/cli.js +13 -13
  3. package/dist/cli.js.map +1 -1
  4. package/dist/mcp/primitives/essential/index.d.ts +1 -0
  5. package/dist/mcp/primitives/essential/index.js +5 -1
  6. package/dist/mcp/primitives/essential/index.js.map +1 -1
  7. package/dist/mcp/primitives/essential/tools/add-note.tool.d.ts +8 -16
  8. package/dist/mcp/primitives/essential/tools/create-deck.tool.d.ts +8 -16
  9. package/dist/mcp/primitives/essential/tools/create-model.tool.d.ts +8 -16
  10. package/dist/mcp/primitives/essential/tools/delete-notes.tool.d.ts +8 -16
  11. package/dist/mcp/primitives/essential/tools/find-notes.tool.d.ts +8 -16
  12. package/dist/mcp/primitives/essential/tools/get-cards.tool.d.ts +81 -0
  13. package/dist/mcp/primitives/essential/tools/get-cards.tool.js +118 -0
  14. package/dist/mcp/primitives/essential/tools/get-cards.tool.js.map +1 -0
  15. package/dist/mcp/primitives/essential/tools/get-due-cards.tool.d.ts +8 -16
  16. package/dist/mcp/primitives/essential/tools/list-decks.tool.d.ts +8 -16
  17. package/dist/mcp/primitives/essential/tools/mediaActions/mediaActions.tool.d.ts +8 -16
  18. package/dist/mcp/primitives/essential/tools/model-field-names.tool.d.ts +8 -16
  19. package/dist/mcp/primitives/essential/tools/model-names.tool.d.ts +8 -16
  20. package/dist/mcp/primitives/essential/tools/model-styling.tool.d.ts +8 -16
  21. package/dist/mcp/primitives/essential/tools/notes-info.tool.d.ts +8 -16
  22. package/dist/mcp/primitives/essential/tools/present-card.tool.d.ts +8 -16
  23. package/dist/mcp/primitives/essential/tools/rate-card.tool.d.ts +8 -16
  24. package/dist/mcp/primitives/essential/tools/sync.tool.d.ts +8 -16
  25. package/dist/mcp/primitives/essential/tools/update-model-styling.tool.d.ts +8 -16
  26. package/dist/mcp/primitives/essential/tools/update-note-fields.tool.d.ts +8 -16
  27. package/dist/mcp/primitives/gui/tools/gui-add-cards.tool.d.ts +8 -16
  28. package/dist/mcp/primitives/gui/tools/gui-browse.tool.d.ts +8 -16
  29. package/dist/mcp/primitives/gui/tools/gui-current-card.tool.d.ts +8 -16
  30. package/dist/mcp/primitives/gui/tools/gui-deck-browser.tool.d.ts +8 -16
  31. package/dist/mcp/primitives/gui/tools/gui-deck-overview.tool.d.ts +8 -16
  32. package/dist/mcp/primitives/gui/tools/gui-edit-note.tool.d.ts +8 -16
  33. package/dist/mcp/primitives/gui/tools/gui-select-card.tool.d.ts +8 -16
  34. package/dist/mcp/primitives/gui/tools/gui-selected-notes.tool.d.ts +8 -16
  35. package/dist/mcp/primitives/gui/tools/gui-show-answer.tool.d.ts +8 -16
  36. package/dist/mcp/primitives/gui/tools/gui-show-question.tool.d.ts +8 -16
  37. package/dist/mcp/primitives/gui/tools/gui-undo.tool.d.ts +8 -16
  38. package/dist/tsconfig.build.tsbuildinfo +1 -1
  39. package/package.json +11 -3
package/README.md CHANGED
@@ -464,14 +464,15 @@ This command will:
464
464
  2. Remove old `.mcpb` files
465
465
  3. Build the TypeScript project
466
466
  4. Package `dist/` and `node_modules/` into an `.mcpb` file
467
+ 5. Run `mcpb clean` to remove devDependencies (optimizes bundle from ~47MB to ~10MB)
467
468
 
468
- The output file will be named based on the current version (e.g., `@ankimcp/anki-mcp-server-0.5.0.mcpb`) and can be distributed for one-click installation.
469
+ The output file will be named `anki-mcp-server-X.X.X.mcpb` and can be distributed for one-click installation.
469
470
 
470
471
  #### What Gets Bundled
471
472
 
472
473
  The MCPB package includes:
473
474
  - Compiled JavaScript (`dist/` directory - includes both entry points)
474
- - All dependencies (`node_modules/`)
475
+ - Production dependencies only (`node_modules/` - devDependencies removed by `mcpb clean`)
475
476
  - Package metadata (`package.json`)
476
477
  - Manifest configuration (`manifest.json` - configured to use `main-stdio.js`)
477
478
  - Icon (`icon.png`)
package/dist/cli.js CHANGED
@@ -15,7 +15,7 @@ function getPackageJson() {
15
15
  return JSON.parse((0, fs_1.readFileSync)((0, path_1.join)(__dirname, "../package.json"), "utf-8"));
16
16
  }
17
17
  catch {
18
- return { version: "0.0.0", name: "anki-mcp-http" };
18
+ return { version: "0.0.0", name: "ankimcp" };
19
19
  }
20
20
  }
21
21
  function getVersion() {
@@ -41,25 +41,25 @@ Transport Modes:
41
41
  STDIO Mode: For desktop MCP clients (Cursor, Cline, Zed)
42
42
 
43
43
  Examples - HTTP Mode:
44
- $ anki-mcp-http # Use defaults
45
- $ anki-mcp-http --port 8080 # Custom port
46
- $ anki-mcp-http --host 0.0.0.0 --port 3000 # Listen on all interfaces
47
- $ anki-mcp-http --anki-connect http://localhost:8765
44
+ $ ankimcp # Use defaults
45
+ $ ankimcp --port 8080 # Custom port
46
+ $ ankimcp --host 0.0.0.0 --port 3000 # Listen on all interfaces
47
+ $ ankimcp --anki-connect http://localhost:8765
48
48
 
49
49
  Examples - HTTP Mode with Ngrok:
50
- $ anki-mcp-http --ngrok # Start with ngrok tunnel
51
- $ anki-mcp-http --port 8080 --ngrok # Custom port + ngrok
52
- $ anki-mcp-http --host 0.0.0.0 --ngrok # Public host + ngrok
50
+ $ ankimcp --ngrok # Start with ngrok tunnel
51
+ $ ankimcp --port 8080 --ngrok # Custom port + ngrok
52
+ $ ankimcp --host 0.0.0.0 --ngrok # Public host + ngrok
53
53
 
54
54
  Examples - STDIO Mode:
55
- $ anki-mcp-http --stdio # For use with npx in MCP clients
55
+ $ ankimcp --stdio # For use with npx in MCP clients
56
56
 
57
57
  # MCP client configuration (Cursor, Cline, Zed, etc.):
58
58
  {
59
59
  "mcpServers": {
60
60
  "anki-mcp": {
61
61
  "command": "npx",
62
- "args": ["-y", "anki-mcp-http", "--stdio"]
62
+ "args": ["-y", "ankimcp", "--stdio"]
63
63
  }
64
64
  }
65
65
  }
@@ -68,7 +68,7 @@ Ngrok Setup (one-time):
68
68
  1. Install: npm install -g ngrok
69
69
  2. Get auth token from: https://dashboard.ngrok.com/get-started/your-authtoken
70
70
  3. Setup: ngrok config add-authtoken <your-token>
71
- 4. Run: anki-mcp-http --ngrok
71
+ 4. Run: ankimcp --ngrok
72
72
  `);
73
73
  program.parse();
74
74
  const options = program.opts();
@@ -102,13 +102,13 @@ ${!ngrokUrl
102
102
  Usage with ngrok:
103
103
  1. Install: npm install -g ngrok
104
104
  2. Setup: ngrok config add-authtoken <your-token>
105
- 3. Run: anki-mcp-http --ngrok
105
+ 3. Run: ankimcp --ngrok
106
106
  `
107
107
  : `
108
108
  Share this URL with your AI assistant:
109
109
  ${ngrokUrl}
110
110
  `}
111
- Run 'anki-mcp-http --help' for more options.
111
+ Run 'ankimcp --help' for more options.
112
112
  `);
113
113
  }
114
114
  //# sourceMappingURL=cli.js.map
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;AA0BA,0CAEC;AAED,oCAuEC;AAED,oDAsCC;AA7ID,yCAAoC;AACpC,2BAAkC;AAClC,+BAA4B;AAC5B,sEAA6C;AAS7C,SAAS,cAAc;IACrB,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CACf,IAAA,iBAAY,EAAC,IAAA,WAAI,EAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC,CAC1D,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;IACrD,CAAC;AACH,CAAC;AAED,SAAS,UAAU;IACjB,OAAO,cAAc,EAAE,CAAC,OAAO,CAAC;AAClC,CAAC;AAED,SAAgB,eAAe;IAC7B,IAAA,yBAAc,EAAC,EAAE,GAAG,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AACrD,CAAC;AAED,SAAgB,YAAY;IAC1B,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;IAE9B,OAAO;SACJ,IAAI,CAAC,SAAS,CAAC;SACf,WAAW,CAAC,yDAAyD,CAAC;SACtE,OAAO,CAAC,UAAU,EAAE,CAAC;SACrB,MAAM,CACL,SAAS,EACT,6DAA6D,CAC9D;SACA,MAAM,CAAC,qBAAqB,EAAE,+BAA+B,EAAE,MAAM,CAAC;SACtE,MAAM,CAAC,sBAAsB,EAAE,6BAA6B,EAAE,WAAW,CAAC;SAC1E,MAAM,CACL,0BAA0B,EAC1B,iBAAiB,EACjB,uBAAuB,CACxB;SACA,MAAM,CACL,SAAS,EACT,yDAAyD,CAC1D;SACA,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCL,CACI,CAAC;IAEJ,OAAO,CAAC,KAAK,EAAE,CAAC;IAEhB,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAc,CAAC;IAE3C,OAAO;QACL,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC;QAC3C,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;KAC9B,CAAC;AACJ,CAAC;AAED,SAAgB,oBAAoB,CAClC,OAAmB,EACnB,QAAiB;IAEjB,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,wBAAwB,OAAO,EAAE,CAAC;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACpD,MAAM,WAAW,GACf,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAExE,OAAO,CAAC,GAAG,CAAC;;GAEX,WAAW;;;+BAGiB,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI;wBACnC,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,2BAA2B,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE;;;0BAGzE,OAAO,CAAC,IAAI;0BACZ,OAAO,CAAC,IAAI;0BACZ,OAAO,CAAC,WAAW;0EAC6B,QAAQ,CAAC,CAAC,CAAC,6BAA6B,QAAQ,iDAAiD,CAAC,CAAC,CAAC,EAAE;EAE9K,CAAC,QAAQ;QACP,CAAC,CAAC;;;;;CAKL;QACG,CAAC,CAAC;;IAEF,QAAQ;CAEZ;;CAEC,CAAC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;AA0BA,0CAEC;AAED,oCAuEC;AAED,oDAsCC;AA7ID,yCAAoC;AACpC,2BAAkC;AAClC,+BAA4B;AAC5B,sEAA6C;AAS7C,SAAS,cAAc;IACrB,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CACf,IAAA,iBAAY,EAAC,IAAA,WAAI,EAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC,CAC1D,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,SAAS,UAAU;IACjB,OAAO,cAAc,EAAE,CAAC,OAAO,CAAC;AAClC,CAAC;AAED,SAAgB,eAAe;IAC7B,IAAA,yBAAc,EAAC,EAAE,GAAG,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AACrD,CAAC;AAED,SAAgB,YAAY;IAC1B,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;IAE9B,OAAO;SACJ,IAAI,CAAC,SAAS,CAAC;SACf,WAAW,CAAC,yDAAyD,CAAC;SACtE,OAAO,CAAC,UAAU,EAAE,CAAC;SACrB,MAAM,CACL,SAAS,EACT,6DAA6D,CAC9D;SACA,MAAM,CAAC,qBAAqB,EAAE,+BAA+B,EAAE,MAAM,CAAC;SACtE,MAAM,CAAC,sBAAsB,EAAE,6BAA6B,EAAE,WAAW,CAAC;SAC1E,MAAM,CACL,0BAA0B,EAC1B,iBAAiB,EACjB,uBAAuB,CACxB;SACA,MAAM,CACL,SAAS,EACT,yDAAyD,CAC1D;SACA,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCL,CACI,CAAC;IAEJ,OAAO,CAAC,KAAK,EAAE,CAAC;IAEhB,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAc,CAAC;IAE3C,OAAO;QACL,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC;QAC3C,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;KAC9B,CAAC;AACJ,CAAC;AAED,SAAgB,oBAAoB,CAClC,OAAmB,EACnB,QAAiB;IAEjB,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,wBAAwB,OAAO,EAAE,CAAC;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACpD,MAAM,WAAW,GACf,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAExE,OAAO,CAAC,GAAG,CAAC;;GAEX,WAAW;;;+BAGiB,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI;wBACnC,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,2BAA2B,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE;;;0BAGzE,OAAO,CAAC,IAAI;0BACZ,OAAO,CAAC,IAAI;0BACZ,OAAO,CAAC,WAAW;0EAC6B,QAAQ,CAAC,CAAC,CAAC,6BAA6B,QAAQ,iDAAiD,CAAC,CAAC,CAAC,EAAE;EAE9K,CAAC,QAAQ;QACP,CAAC,CAAC;;;;;CAKL;QACG,CAAC,CAAC;;IAEF,QAAQ;CAEZ;;CAEC,CAAC,CAAC;AACH,CAAC"}
@@ -7,6 +7,7 @@ export { SyncTool } from "./tools/sync.tool";
7
7
  export { ListDecksTool } from "./tools/list-decks.tool";
8
8
  export { CreateDeckTool } from "./tools/create-deck.tool";
9
9
  export { GetDueCardsTool } from "./tools/get-due-cards.tool";
10
+ export { GetCardsTool } from "./tools/get-cards.tool";
10
11
  export { PresentCardTool } from "./tools/present-card.tool";
11
12
  export { RateCardTool } from "./tools/rate-card.tool";
12
13
  export { ModelNamesTool } from "./tools/model-names.tool";
@@ -21,7 +21,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
21
21
  };
22
22
  var McpPrimitivesAnkiEssentialModule_1;
23
23
  Object.defineProperty(exports, "__esModule", { value: true });
24
- exports.McpPrimitivesAnkiEssentialModule = exports.SystemInfoResource = exports.TwentyRulesPrompt = exports.ReviewSessionPrompt = exports.MediaActionsTool = exports.DeleteNotesTool = exports.UpdateNoteFieldsTool = exports.NotesInfoTool = exports.FindNotesTool = exports.AddNoteTool = exports.UpdateModelStylingTool = exports.CreateModelTool = exports.ModelStylingTool = exports.ModelFieldNamesTool = exports.ModelNamesTool = exports.RateCardTool = exports.PresentCardTool = exports.GetDueCardsTool = exports.CreateDeckTool = exports.ListDecksTool = exports.SyncTool = exports.AnkiConnectError = exports.AnkiConnectClient = exports.ANKI_CONFIG = void 0;
24
+ exports.McpPrimitivesAnkiEssentialModule = exports.SystemInfoResource = exports.TwentyRulesPrompt = exports.ReviewSessionPrompt = exports.MediaActionsTool = exports.DeleteNotesTool = exports.UpdateNoteFieldsTool = exports.NotesInfoTool = exports.FindNotesTool = exports.AddNoteTool = exports.UpdateModelStylingTool = exports.CreateModelTool = exports.ModelStylingTool = exports.ModelFieldNamesTool = exports.ModelNamesTool = exports.RateCardTool = exports.PresentCardTool = exports.GetCardsTool = exports.GetDueCardsTool = exports.CreateDeckTool = exports.ListDecksTool = exports.SyncTool = exports.AnkiConnectError = exports.AnkiConnectClient = exports.ANKI_CONFIG = void 0;
25
25
  var anki_config_interface_1 = require("../../config/anki-config.interface");
26
26
  Object.defineProperty(exports, "ANKI_CONFIG", { enumerable: true, get: function () { return anki_config_interface_1.ANKI_CONFIG; } });
27
27
  __exportStar(require("../../types/anki.types"), exports);
@@ -37,6 +37,8 @@ var create_deck_tool_1 = require("./tools/create-deck.tool");
37
37
  Object.defineProperty(exports, "CreateDeckTool", { enumerable: true, get: function () { return create_deck_tool_1.CreateDeckTool; } });
38
38
  var get_due_cards_tool_1 = require("./tools/get-due-cards.tool");
39
39
  Object.defineProperty(exports, "GetDueCardsTool", { enumerable: true, get: function () { return get_due_cards_tool_1.GetDueCardsTool; } });
40
+ var get_cards_tool_1 = require("./tools/get-cards.tool");
41
+ Object.defineProperty(exports, "GetCardsTool", { enumerable: true, get: function () { return get_cards_tool_1.GetCardsTool; } });
40
42
  var present_card_tool_1 = require("./tools/present-card.tool");
41
43
  Object.defineProperty(exports, "PresentCardTool", { enumerable: true, get: function () { return present_card_tool_1.PresentCardTool; } });
42
44
  var rate_card_tool_1 = require("./tools/rate-card.tool");
@@ -75,6 +77,7 @@ const sync_tool_2 = require("./tools/sync.tool");
75
77
  const list_decks_tool_2 = require("./tools/list-decks.tool");
76
78
  const create_deck_tool_2 = require("./tools/create-deck.tool");
77
79
  const get_due_cards_tool_2 = require("./tools/get-due-cards.tool");
80
+ const get_cards_tool_2 = require("./tools/get-cards.tool");
78
81
  const present_card_tool_2 = require("./tools/present-card.tool");
79
82
  const rate_card_tool_2 = require("./tools/rate-card.tool");
80
83
  const model_names_tool_2 = require("./tools/model-names.tool");
@@ -97,6 +100,7 @@ const MCP_PRIMITIVES = [
97
100
  list_decks_tool_2.ListDecksTool,
98
101
  create_deck_tool_2.CreateDeckTool,
99
102
  get_due_cards_tool_2.GetDueCardsTool,
103
+ get_cards_tool_2.GetCardsTool,
100
104
  present_card_tool_2.PresentCardTool,
101
105
  rate_card_tool_2.RateCardTool,
102
106
  model_names_tool_2.ModelNamesTool,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp/primitives/essential/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AACA,4EAAiE;AAAxD,oHAAA,WAAW,OAAA;AAIpB,yDAAuC;AAGvC,yDAAuC;AAGvC,yEAG2C;AAFzC,wHAAA,iBAAiB,OAAA;AACjB,uHAAA,gBAAgB,OAAA;AAIlB,+CAA6C;AAApC,qGAAA,QAAQ,OAAA;AACjB,2DAAwD;AAA/C,gHAAA,aAAa,OAAA;AACtB,6DAA0D;AAAjD,kHAAA,cAAc,OAAA;AACvB,iEAA6D;AAApD,qHAAA,eAAe,OAAA;AACxB,+DAA4D;AAAnD,oHAAA,eAAe,OAAA;AACxB,yDAAsD;AAA7C,8GAAA,YAAY,OAAA;AACrB,6DAA0D;AAAjD,kHAAA,cAAc,OAAA;AACvB,yEAAqE;AAA5D,6HAAA,mBAAmB,OAAA;AAC5B,iEAA8D;AAArD,sHAAA,gBAAgB,OAAA;AACzB,+DAA4D;AAAnD,oHAAA,eAAe,OAAA;AACxB,+EAA2E;AAAlE,mIAAA,sBAAsB,OAAA;AAC/B,uDAAoD;AAA3C,4GAAA,WAAW,OAAA;AACpB,2DAAwD;AAA/C,gHAAA,aAAa,OAAA;AACtB,2DAAwD;AAA/C,gHAAA,aAAa,OAAA;AACtB,2EAAuE;AAA9D,+HAAA,oBAAoB,OAAA;AAC7B,+DAA4D;AAAnD,oHAAA,eAAe,OAAA;AACxB,qDAAwD;AAA/C,gHAAA,gBAAgB,OAAA;AAGzB,yEAAsE;AAA7D,4HAAA,mBAAmB,OAAA;AAC5B,qEAAkE;AAAzD,wHAAA,iBAAiB,OAAA;AAG1B,yEAAsE;AAA7D,0HAAA,kBAAkB,OAAA;AAG3B,2CAAiE;AACjE,2EAAsE;AACtE,iDAA6C;AAC7C,6DAAwD;AACxD,+DAA0D;AAC1D,mEAA6D;AAC7D,iEAA4D;AAC5D,2DAAsD;AACtD,+DAA0D;AAC1D,2EAAqE;AACrE,mEAA8D;AAC9D,iEAA4D;AAC5D,iFAA2E;AAC3E,yDAAoD;AACpD,6DAAwD;AACxD,6DAAwD;AACxD,6EAAuE;AACvE,iEAA4D;AAC5D,uDAAwD;AACxD,2EAAsE;AACtE,uEAAkE;AAClE,2EAAsE;AAEtE,MAAM,cAAc,GAAG;IAErB,uCAAiB;IAEjB,oBAAQ;IACR,+BAAa;IACb,iCAAc;IACd,oCAAe;IACf,mCAAe;IACf,6BAAY;IACZ,iCAAc;IACd,4CAAmB;IACnB,qCAAgB;IAChB,mCAAe;IACf,kDAAsB;IACtB,2BAAW;IACX,+BAAa;IACb,+BAAa;IACb,8CAAoB;IACpB,mCAAe;IACf,+BAAgB;IAEhB,2CAAmB;IACnB,uCAAiB;IAEjB,yCAAkB;CACnB,CAAC;AAOK,IAAM,gCAAgC,wCAAtC,MAAM,gCAAgC;IAC3C,MAAM,CAAC,OAAO,CACZ,OAAgD;QAEhD,OAAO;YACL,MAAM,EAAE,kCAAgC;YACxC,SAAS,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,cAAc,CAAC;YAC1D,OAAO,EAAE,cAAc;SACxB,CAAC;IACJ,CAAC;CACF,CAAA;AAVY,4EAAgC;2CAAhC,gCAAgC;IAD5C,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,gCAAgC,CAU5C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp/primitives/essential/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AACA,4EAAiE;AAAxD,oHAAA,WAAW,OAAA;AAIpB,yDAAuC;AAGvC,yDAAuC;AAGvC,yEAG2C;AAFzC,wHAAA,iBAAiB,OAAA;AACjB,uHAAA,gBAAgB,OAAA;AAIlB,+CAA6C;AAApC,qGAAA,QAAQ,OAAA;AACjB,2DAAwD;AAA/C,gHAAA,aAAa,OAAA;AACtB,6DAA0D;AAAjD,kHAAA,cAAc,OAAA;AACvB,iEAA6D;AAApD,qHAAA,eAAe,OAAA;AACxB,yDAAsD;AAA7C,8GAAA,YAAY,OAAA;AACrB,+DAA4D;AAAnD,oHAAA,eAAe,OAAA;AACxB,yDAAsD;AAA7C,8GAAA,YAAY,OAAA;AACrB,6DAA0D;AAAjD,kHAAA,cAAc,OAAA;AACvB,yEAAqE;AAA5D,6HAAA,mBAAmB,OAAA;AAC5B,iEAA8D;AAArD,sHAAA,gBAAgB,OAAA;AACzB,+DAA4D;AAAnD,oHAAA,eAAe,OAAA;AACxB,+EAA2E;AAAlE,mIAAA,sBAAsB,OAAA;AAC/B,uDAAoD;AAA3C,4GAAA,WAAW,OAAA;AACpB,2DAAwD;AAA/C,gHAAA,aAAa,OAAA;AACtB,2DAAwD;AAA/C,gHAAA,aAAa,OAAA;AACtB,2EAAuE;AAA9D,+HAAA,oBAAoB,OAAA;AAC7B,+DAA4D;AAAnD,oHAAA,eAAe,OAAA;AACxB,qDAAwD;AAA/C,gHAAA,gBAAgB,OAAA;AAGzB,yEAAsE;AAA7D,4HAAA,mBAAmB,OAAA;AAC5B,qEAAkE;AAAzD,wHAAA,iBAAiB,OAAA;AAG1B,yEAAsE;AAA7D,0HAAA,kBAAkB,OAAA;AAG3B,2CAAiE;AACjE,2EAAsE;AACtE,iDAA6C;AAC7C,6DAAwD;AACxD,+DAA0D;AAC1D,mEAA6D;AAC7D,2DAAsD;AACtD,iEAA4D;AAC5D,2DAAsD;AACtD,+DAA0D;AAC1D,2EAAqE;AACrE,mEAA8D;AAC9D,iEAA4D;AAC5D,iFAA2E;AAC3E,yDAAoD;AACpD,6DAAwD;AACxD,6DAAwD;AACxD,6EAAuE;AACvE,iEAA4D;AAC5D,uDAAwD;AACxD,2EAAsE;AACtE,uEAAkE;AAClE,2EAAsE;AAEtE,MAAM,cAAc,GAAG;IAErB,uCAAiB;IAEjB,oBAAQ;IACR,+BAAa;IACb,iCAAc;IACd,oCAAe;IACf,6BAAY;IACZ,mCAAe;IACf,6BAAY;IACZ,iCAAc;IACd,4CAAmB;IACnB,qCAAgB;IAChB,mCAAe;IACf,kDAAsB;IACtB,2BAAW;IACX,+BAAa;IACb,+BAAa;IACb,8CAAoB;IACpB,mCAAe;IACf,+BAAgB;IAEhB,2CAAmB;IACnB,uCAAiB;IAEjB,yCAAkB;CACnB,CAAC;AAOK,IAAM,gCAAgC,wCAAtC,MAAM,gCAAgC;IAC3C,MAAM,CAAC,OAAO,CACZ,OAAgD;QAEhD,OAAO;YACL,MAAM,EAAE,kCAAgC;YACxC,SAAS,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,cAAc,CAAC;YAC1D,OAAO,EAAE,cAAc;SACxB,CAAC;IACJ,CAAC;CACF,CAAA;AAVY,4EAAgC;2CAAhC,gCAAgC;IAD5C,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,gCAAgC,CAU5C"}
@@ -19,14 +19,12 @@ export declare class AddNoteTool {
19
19
  }, context: Context): Promise<{
20
20
  [x: string]: unknown;
21
21
  content: ({
22
- [x: string]: unknown;
23
22
  type: "text";
24
23
  text: string;
25
24
  _meta?: {
26
25
  [x: string]: unknown;
27
26
  } | undefined;
28
27
  } | {
29
- [x: string]: unknown;
30
28
  type: "image";
31
29
  data: string;
32
30
  mimeType: string;
@@ -34,7 +32,6 @@ export declare class AddNoteTool {
34
32
  [x: string]: unknown;
35
33
  } | undefined;
36
34
  } | {
37
- [x: string]: unknown;
38
35
  type: "audio";
39
36
  data: string;
40
37
  mimeType: string;
@@ -42,41 +39,36 @@ export declare class AddNoteTool {
42
39
  [x: string]: unknown;
43
40
  } | undefined;
44
41
  } | {
45
- [x: string]: unknown;
46
- type: "resource_link";
47
- name: string;
48
42
  uri: string;
43
+ name: string;
44
+ type: "resource_link";
45
+ description?: string | undefined;
46
+ mimeType?: string | undefined;
49
47
  _meta?: {
50
48
  [x: string]: unknown;
51
49
  } | undefined;
52
- mimeType?: string | undefined;
53
- title?: string | undefined;
54
- description?: string | undefined;
55
50
  icons?: {
56
- [x: string]: unknown;
57
51
  src: string;
58
52
  mimeType?: string | undefined;
59
53
  sizes?: string[] | undefined;
60
54
  }[] | undefined;
55
+ title?: string | undefined;
61
56
  } | {
62
- [x: string]: unknown;
63
57
  type: "resource";
64
58
  resource: {
65
- [x: string]: unknown;
66
- text: string;
67
59
  uri: string;
60
+ text: string;
61
+ mimeType?: string | undefined;
68
62
  _meta?: {
69
63
  [x: string]: unknown;
70
64
  } | undefined;
71
- mimeType?: string | undefined;
72
65
  } | {
73
- [x: string]: unknown;
74
66
  uri: string;
75
67
  blob: string;
68
+ mimeType?: string | undefined;
76
69
  _meta?: {
77
70
  [x: string]: unknown;
78
71
  } | undefined;
79
- mimeType?: string | undefined;
80
72
  };
81
73
  _meta?: {
82
74
  [x: string]: unknown;
@@ -9,14 +9,12 @@ export declare class CreateDeckTool {
9
9
  }, context: Context): Promise<{
10
10
  [x: string]: unknown;
11
11
  content: ({
12
- [x: string]: unknown;
13
12
  type: "text";
14
13
  text: string;
15
14
  _meta?: {
16
15
  [x: string]: unknown;
17
16
  } | undefined;
18
17
  } | {
19
- [x: string]: unknown;
20
18
  type: "image";
21
19
  data: string;
22
20
  mimeType: string;
@@ -24,7 +22,6 @@ export declare class CreateDeckTool {
24
22
  [x: string]: unknown;
25
23
  } | undefined;
26
24
  } | {
27
- [x: string]: unknown;
28
25
  type: "audio";
29
26
  data: string;
30
27
  mimeType: string;
@@ -32,41 +29,36 @@ export declare class CreateDeckTool {
32
29
  [x: string]: unknown;
33
30
  } | undefined;
34
31
  } | {
35
- [x: string]: unknown;
36
- type: "resource_link";
37
- name: string;
38
32
  uri: string;
33
+ name: string;
34
+ type: "resource_link";
35
+ description?: string | undefined;
36
+ mimeType?: string | undefined;
39
37
  _meta?: {
40
38
  [x: string]: unknown;
41
39
  } | undefined;
42
- mimeType?: string | undefined;
43
- title?: string | undefined;
44
- description?: string | undefined;
45
40
  icons?: {
46
- [x: string]: unknown;
47
41
  src: string;
48
42
  mimeType?: string | undefined;
49
43
  sizes?: string[] | undefined;
50
44
  }[] | undefined;
45
+ title?: string | undefined;
51
46
  } | {
52
- [x: string]: unknown;
53
47
  type: "resource";
54
48
  resource: {
55
- [x: string]: unknown;
56
- text: string;
57
49
  uri: string;
50
+ text: string;
51
+ mimeType?: string | undefined;
58
52
  _meta?: {
59
53
  [x: string]: unknown;
60
54
  } | undefined;
61
- mimeType?: string | undefined;
62
55
  } | {
63
- [x: string]: unknown;
64
56
  uri: string;
65
57
  blob: string;
58
+ mimeType?: string | undefined;
66
59
  _meta?: {
67
60
  [x: string]: unknown;
68
61
  } | undefined;
69
- mimeType?: string | undefined;
70
62
  };
71
63
  _meta?: {
72
64
  [x: string]: unknown;
@@ -14,14 +14,12 @@ export declare class CreateModelTool {
14
14
  }, context: Context): Promise<{
15
15
  [x: string]: unknown;
16
16
  content: ({
17
- [x: string]: unknown;
18
17
  type: "text";
19
18
  text: string;
20
19
  _meta?: {
21
20
  [x: string]: unknown;
22
21
  } | undefined;
23
22
  } | {
24
- [x: string]: unknown;
25
23
  type: "image";
26
24
  data: string;
27
25
  mimeType: string;
@@ -29,7 +27,6 @@ export declare class CreateModelTool {
29
27
  [x: string]: unknown;
30
28
  } | undefined;
31
29
  } | {
32
- [x: string]: unknown;
33
30
  type: "audio";
34
31
  data: string;
35
32
  mimeType: string;
@@ -37,41 +34,36 @@ export declare class CreateModelTool {
37
34
  [x: string]: unknown;
38
35
  } | undefined;
39
36
  } | {
40
- [x: string]: unknown;
41
- type: "resource_link";
42
- name: string;
43
37
  uri: string;
38
+ name: string;
39
+ type: "resource_link";
40
+ description?: string | undefined;
41
+ mimeType?: string | undefined;
44
42
  _meta?: {
45
43
  [x: string]: unknown;
46
44
  } | undefined;
47
- mimeType?: string | undefined;
48
- title?: string | undefined;
49
- description?: string | undefined;
50
45
  icons?: {
51
- [x: string]: unknown;
52
46
  src: string;
53
47
  mimeType?: string | undefined;
54
48
  sizes?: string[] | undefined;
55
49
  }[] | undefined;
50
+ title?: string | undefined;
56
51
  } | {
57
- [x: string]: unknown;
58
52
  type: "resource";
59
53
  resource: {
60
- [x: string]: unknown;
61
- text: string;
62
54
  uri: string;
55
+ text: string;
56
+ mimeType?: string | undefined;
63
57
  _meta?: {
64
58
  [x: string]: unknown;
65
59
  } | undefined;
66
- mimeType?: string | undefined;
67
60
  } | {
68
- [x: string]: unknown;
69
61
  uri: string;
70
62
  blob: string;
63
+ mimeType?: string | undefined;
71
64
  _meta?: {
72
65
  [x: string]: unknown;
73
66
  } | undefined;
74
- mimeType?: string | undefined;
75
67
  };
76
68
  _meta?: {
77
69
  [x: string]: unknown;
@@ -10,14 +10,12 @@ export declare class DeleteNotesTool {
10
10
  }, context: Context): Promise<{
11
11
  [x: string]: unknown;
12
12
  content: ({
13
- [x: string]: unknown;
14
13
  type: "text";
15
14
  text: string;
16
15
  _meta?: {
17
16
  [x: string]: unknown;
18
17
  } | undefined;
19
18
  } | {
20
- [x: string]: unknown;
21
19
  type: "image";
22
20
  data: string;
23
21
  mimeType: string;
@@ -25,7 +23,6 @@ export declare class DeleteNotesTool {
25
23
  [x: string]: unknown;
26
24
  } | undefined;
27
25
  } | {
28
- [x: string]: unknown;
29
26
  type: "audio";
30
27
  data: string;
31
28
  mimeType: string;
@@ -33,41 +30,36 @@ export declare class DeleteNotesTool {
33
30
  [x: string]: unknown;
34
31
  } | undefined;
35
32
  } | {
36
- [x: string]: unknown;
37
- type: "resource_link";
38
- name: string;
39
33
  uri: string;
34
+ name: string;
35
+ type: "resource_link";
36
+ description?: string | undefined;
37
+ mimeType?: string | undefined;
40
38
  _meta?: {
41
39
  [x: string]: unknown;
42
40
  } | undefined;
43
- mimeType?: string | undefined;
44
- title?: string | undefined;
45
- description?: string | undefined;
46
41
  icons?: {
47
- [x: string]: unknown;
48
42
  src: string;
49
43
  mimeType?: string | undefined;
50
44
  sizes?: string[] | undefined;
51
45
  }[] | undefined;
46
+ title?: string | undefined;
52
47
  } | {
53
- [x: string]: unknown;
54
48
  type: "resource";
55
49
  resource: {
56
- [x: string]: unknown;
57
- text: string;
58
50
  uri: string;
51
+ text: string;
52
+ mimeType?: string | undefined;
59
53
  _meta?: {
60
54
  [x: string]: unknown;
61
55
  } | undefined;
62
- mimeType?: string | undefined;
63
56
  } | {
64
- [x: string]: unknown;
65
57
  uri: string;
66
58
  blob: string;
59
+ mimeType?: string | undefined;
67
60
  _meta?: {
68
61
  [x: string]: unknown;
69
62
  } | undefined;
70
- mimeType?: string | undefined;
71
63
  };
72
64
  _meta?: {
73
65
  [x: string]: unknown;
@@ -9,14 +9,12 @@ export declare class FindNotesTool {
9
9
  }, context: Context): Promise<{
10
10
  [x: string]: unknown;
11
11
  content: ({
12
- [x: string]: unknown;
13
12
  type: "text";
14
13
  text: string;
15
14
  _meta?: {
16
15
  [x: string]: unknown;
17
16
  } | undefined;
18
17
  } | {
19
- [x: string]: unknown;
20
18
  type: "image";
21
19
  data: string;
22
20
  mimeType: string;
@@ -24,7 +22,6 @@ export declare class FindNotesTool {
24
22
  [x: string]: unknown;
25
23
  } | undefined;
26
24
  } | {
27
- [x: string]: unknown;
28
25
  type: "audio";
29
26
  data: string;
30
27
  mimeType: string;
@@ -32,41 +29,36 @@ export declare class FindNotesTool {
32
29
  [x: string]: unknown;
33
30
  } | undefined;
34
31
  } | {
35
- [x: string]: unknown;
36
- type: "resource_link";
37
- name: string;
38
32
  uri: string;
33
+ name: string;
34
+ type: "resource_link";
35
+ description?: string | undefined;
36
+ mimeType?: string | undefined;
39
37
  _meta?: {
40
38
  [x: string]: unknown;
41
39
  } | undefined;
42
- mimeType?: string | undefined;
43
- title?: string | undefined;
44
- description?: string | undefined;
45
40
  icons?: {
46
- [x: string]: unknown;
47
41
  src: string;
48
42
  mimeType?: string | undefined;
49
43
  sizes?: string[] | undefined;
50
44
  }[] | undefined;
45
+ title?: string | undefined;
51
46
  } | {
52
- [x: string]: unknown;
53
47
  type: "resource";
54
48
  resource: {
55
- [x: string]: unknown;
56
- text: string;
57
49
  uri: string;
50
+ text: string;
51
+ mimeType?: string | undefined;
58
52
  _meta?: {
59
53
  [x: string]: unknown;
60
54
  } | undefined;
61
- mimeType?: string | undefined;
62
55
  } | {
63
- [x: string]: unknown;
64
56
  uri: string;
65
57
  blob: string;
58
+ mimeType?: string | undefined;
66
59
  _meta?: {
67
60
  [x: string]: unknown;
68
61
  } | undefined;
69
- mimeType?: string | undefined;
70
62
  };
71
63
  _meta?: {
72
64
  [x: string]: unknown;
@@ -0,0 +1,81 @@
1
+ import type { Context } from "@rekog/mcp-nest";
2
+ import { z } from "zod";
3
+ import { AnkiConnectClient } from "@/mcp/clients/anki-connect.client";
4
+ declare const CardStateEnum: z.ZodEnum<["due", "new", "learning", "suspended", "buried"]>;
5
+ type CardState = z.infer<typeof CardStateEnum>;
6
+ export declare class GetCardsTool {
7
+ private readonly ankiClient;
8
+ private readonly logger;
9
+ constructor(ankiClient: AnkiConnectClient);
10
+ getCards({ deck_name, card_state, limit, }: {
11
+ deck_name?: string;
12
+ card_state?: CardState;
13
+ limit?: number;
14
+ }, context: Context): Promise<{
15
+ [x: string]: unknown;
16
+ content: ({
17
+ type: "text";
18
+ text: string;
19
+ _meta?: {
20
+ [x: string]: unknown;
21
+ } | undefined;
22
+ } | {
23
+ type: "image";
24
+ data: string;
25
+ mimeType: string;
26
+ _meta?: {
27
+ [x: string]: unknown;
28
+ } | undefined;
29
+ } | {
30
+ type: "audio";
31
+ data: string;
32
+ mimeType: string;
33
+ _meta?: {
34
+ [x: string]: unknown;
35
+ } | undefined;
36
+ } | {
37
+ uri: string;
38
+ name: string;
39
+ type: "resource_link";
40
+ description?: string | undefined;
41
+ mimeType?: string | undefined;
42
+ _meta?: {
43
+ [x: string]: unknown;
44
+ } | undefined;
45
+ icons?: {
46
+ src: string;
47
+ mimeType?: string | undefined;
48
+ sizes?: string[] | undefined;
49
+ }[] | undefined;
50
+ title?: string | undefined;
51
+ } | {
52
+ type: "resource";
53
+ resource: {
54
+ uri: string;
55
+ text: string;
56
+ mimeType?: string | undefined;
57
+ _meta?: {
58
+ [x: string]: unknown;
59
+ } | undefined;
60
+ } | {
61
+ uri: string;
62
+ blob: string;
63
+ mimeType?: string | undefined;
64
+ _meta?: {
65
+ [x: string]: unknown;
66
+ } | undefined;
67
+ };
68
+ _meta?: {
69
+ [x: string]: unknown;
70
+ } | undefined;
71
+ })[];
72
+ _meta?: {
73
+ [x: string]: unknown;
74
+ } | undefined;
75
+ structuredContent?: {
76
+ [x: string]: unknown;
77
+ } | undefined;
78
+ isError?: boolean | undefined;
79
+ }>;
80
+ }
81
+ export {};