@ankimcp/anki-mcp-server
Version:
Model Context Protocol server for Anki - enables AI assistants to interact with your Anki flashcards
239 lines • 19.2 kB
JavaScript
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
var McpPrimitivesAnkiEssentialModule_1;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ESSENTIAL_MCP_TOOLS = exports.SystemInfoResource = exports.TwentyRulesPrompt = exports.ReviewSessionPrompt = exports.ReviewStatsTool = exports.CollectionStatsTool = exports.ClearUnusedTagsTool = exports.ReplaceTagsTool = exports.RemoveTagsTool = exports.AddTagsTool = exports.DeleteMediaFileTool = exports.StoreMediaFileTool = exports.GetMediaFilesNamesTool = exports.RetrieveMediaFileTool = exports.ChangeDeckTool = exports.CreateDeckTool = exports.DeckStatsTool = exports.ListDecksTool = exports.GetTagsTool = exports.DeleteNotesTool = exports.UpdateNoteFieldsTool = exports.NotesInfoTool = exports.FindNotesTool = exports.AddNotesTool = exports.AddNoteTool = exports.RepositionModelFieldTool = exports.RenameModelFieldTool = exports.RemoveModelFieldTool = exports.AddModelFieldTool = exports.UpdateModelTemplatesTool = exports.ModelTemplatesTool = exports.UpdateModelStylingTool = exports.CreateModelTool = exports.ModelStylingTool = exports.ModelFieldNamesTool = exports.ModelNamesTool = exports.UnsuspendCardsTool = exports.SuspendCardsTool = exports.AreSuspendedTool = exports.SetDueDateTool = exports.ForgetCardsTool = exports.RateCardTool = exports.PresentCardTool = exports.GetCardsTool = exports.GetDueCardsTool = exports.SyncTool = exports.ReadOnlyModeError = exports.AnkiConnectError = exports.AnkiConnectClient = exports.ANKI_CONFIG = void 0;
exports.McpPrimitivesAnkiEssentialModule = void 0;
var anki_config_interface_1 = require("../../config/anki-config.interface");
Object.defineProperty(exports, "ANKI_CONFIG", { enumerable: true, get: function () { return anki_config_interface_1.ANKI_CONFIG; } });
__exportStar(require("../../types/anki.types"), exports);
__exportStar(require("../../utils/anki.utils"), exports);
var anki_connect_client_1 = require("../../clients/anki-connect.client");
Object.defineProperty(exports, "AnkiConnectClient", { enumerable: true, get: function () { return anki_connect_client_1.AnkiConnectClient; } });
Object.defineProperty(exports, "AnkiConnectError", { enumerable: true, get: function () { return anki_connect_client_1.AnkiConnectError; } });
Object.defineProperty(exports, "ReadOnlyModeError", { enumerable: true, get: function () { return anki_connect_client_1.ReadOnlyModeError; } });
var sync_tool_1 = require("./tools/sync.tool");
Object.defineProperty(exports, "SyncTool", { enumerable: true, get: function () { return sync_tool_1.SyncTool; } });
var get_due_cards_tool_1 = require("./tools/get-due-cards.tool");
Object.defineProperty(exports, "GetDueCardsTool", { enumerable: true, get: function () { return get_due_cards_tool_1.GetDueCardsTool; } });
var get_cards_tool_1 = require("./tools/get-cards.tool");
Object.defineProperty(exports, "GetCardsTool", { enumerable: true, get: function () { return get_cards_tool_1.GetCardsTool; } });
var present_card_tool_1 = require("./tools/present-card.tool");
Object.defineProperty(exports, "PresentCardTool", { enumerable: true, get: function () { return present_card_tool_1.PresentCardTool; } });
var rate_card_tool_1 = require("./tools/rate-card.tool");
Object.defineProperty(exports, "RateCardTool", { enumerable: true, get: function () { return rate_card_tool_1.RateCardTool; } });
var forget_cards_tool_1 = require("./tools/forget-cards.tool");
Object.defineProperty(exports, "ForgetCardsTool", { enumerable: true, get: function () { return forget_cards_tool_1.ForgetCardsTool; } });
var set_due_date_tool_1 = require("./tools/set-due-date.tool");
Object.defineProperty(exports, "SetDueDateTool", { enumerable: true, get: function () { return set_due_date_tool_1.SetDueDateTool; } });
var are_suspended_tool_1 = require("./tools/are-suspended.tool");
Object.defineProperty(exports, "AreSuspendedTool", { enumerable: true, get: function () { return are_suspended_tool_1.AreSuspendedTool; } });
var suspend_cards_tool_1 = require("./tools/suspend-cards.tool");
Object.defineProperty(exports, "SuspendCardsTool", { enumerable: true, get: function () { return suspend_cards_tool_1.SuspendCardsTool; } });
var unsuspend_cards_tool_1 = require("./tools/unsuspend-cards.tool");
Object.defineProperty(exports, "UnsuspendCardsTool", { enumerable: true, get: function () { return unsuspend_cards_tool_1.UnsuspendCardsTool; } });
var model_names_tool_1 = require("./tools/model-names.tool");
Object.defineProperty(exports, "ModelNamesTool", { enumerable: true, get: function () { return model_names_tool_1.ModelNamesTool; } });
var model_field_names_tool_1 = require("./tools/model-field-names.tool");
Object.defineProperty(exports, "ModelFieldNamesTool", { enumerable: true, get: function () { return model_field_names_tool_1.ModelFieldNamesTool; } });
var model_styling_tool_1 = require("./tools/model-styling.tool");
Object.defineProperty(exports, "ModelStylingTool", { enumerable: true, get: function () { return model_styling_tool_1.ModelStylingTool; } });
var create_model_tool_1 = require("./tools/create-model.tool");
Object.defineProperty(exports, "CreateModelTool", { enumerable: true, get: function () { return create_model_tool_1.CreateModelTool; } });
var update_model_styling_tool_1 = require("./tools/update-model-styling.tool");
Object.defineProperty(exports, "UpdateModelStylingTool", { enumerable: true, get: function () { return update_model_styling_tool_1.UpdateModelStylingTool; } });
var model_templates_tool_1 = require("./tools/model-templates.tool");
Object.defineProperty(exports, "ModelTemplatesTool", { enumerable: true, get: function () { return model_templates_tool_1.ModelTemplatesTool; } });
var update_model_templates_tool_1 = require("./tools/update-model-templates.tool");
Object.defineProperty(exports, "UpdateModelTemplatesTool", { enumerable: true, get: function () { return update_model_templates_tool_1.UpdateModelTemplatesTool; } });
var add_model_field_tool_1 = require("./tools/add-model-field.tool");
Object.defineProperty(exports, "AddModelFieldTool", { enumerable: true, get: function () { return add_model_field_tool_1.AddModelFieldTool; } });
var remove_model_field_tool_1 = require("./tools/remove-model-field.tool");
Object.defineProperty(exports, "RemoveModelFieldTool", { enumerable: true, get: function () { return remove_model_field_tool_1.RemoveModelFieldTool; } });
var rename_model_field_tool_1 = require("./tools/rename-model-field.tool");
Object.defineProperty(exports, "RenameModelFieldTool", { enumerable: true, get: function () { return rename_model_field_tool_1.RenameModelFieldTool; } });
var reposition_model_field_tool_1 = require("./tools/reposition-model-field.tool");
Object.defineProperty(exports, "RepositionModelFieldTool", { enumerable: true, get: function () { return reposition_model_field_tool_1.RepositionModelFieldTool; } });
var add_note_tool_1 = require("./tools/add-note.tool");
Object.defineProperty(exports, "AddNoteTool", { enumerable: true, get: function () { return add_note_tool_1.AddNoteTool; } });
var add_notes_tool_1 = require("./tools/add-notes.tool");
Object.defineProperty(exports, "AddNotesTool", { enumerable: true, get: function () { return add_notes_tool_1.AddNotesTool; } });
var find_notes_tool_1 = require("./tools/find-notes.tool");
Object.defineProperty(exports, "FindNotesTool", { enumerable: true, get: function () { return find_notes_tool_1.FindNotesTool; } });
var notes_info_tool_1 = require("./tools/notes-info.tool");
Object.defineProperty(exports, "NotesInfoTool", { enumerable: true, get: function () { return notes_info_tool_1.NotesInfoTool; } });
var update_note_fields_tool_1 = require("./tools/update-note-fields.tool");
Object.defineProperty(exports, "UpdateNoteFieldsTool", { enumerable: true, get: function () { return update_note_fields_tool_1.UpdateNoteFieldsTool; } });
var delete_notes_tool_1 = require("./tools/delete-notes.tool");
Object.defineProperty(exports, "DeleteNotesTool", { enumerable: true, get: function () { return delete_notes_tool_1.DeleteNotesTool; } });
var get_tags_tool_1 = require("./tools/get-tags.tool");
Object.defineProperty(exports, "GetTagsTool", { enumerable: true, get: function () { return get_tags_tool_1.GetTagsTool; } });
var list_decks_tool_1 = require("./tools/list-decks.tool");
Object.defineProperty(exports, "ListDecksTool", { enumerable: true, get: function () { return list_decks_tool_1.ListDecksTool; } });
var deck_stats_tool_1 = require("./tools/deck-stats.tool");
Object.defineProperty(exports, "DeckStatsTool", { enumerable: true, get: function () { return deck_stats_tool_1.DeckStatsTool; } });
var create_deck_tool_1 = require("./tools/create-deck.tool");
Object.defineProperty(exports, "CreateDeckTool", { enumerable: true, get: function () { return create_deck_tool_1.CreateDeckTool; } });
var change_deck_tool_1 = require("./tools/change-deck.tool");
Object.defineProperty(exports, "ChangeDeckTool", { enumerable: true, get: function () { return change_deck_tool_1.ChangeDeckTool; } });
var retrieve_media_file_tool_1 = require("./tools/retrieve-media-file.tool");
Object.defineProperty(exports, "RetrieveMediaFileTool", { enumerable: true, get: function () { return retrieve_media_file_tool_1.RetrieveMediaFileTool; } });
var get_media_files_names_tool_1 = require("./tools/get-media-files-names.tool");
Object.defineProperty(exports, "GetMediaFilesNamesTool", { enumerable: true, get: function () { return get_media_files_names_tool_1.GetMediaFilesNamesTool; } });
var store_media_file_tool_1 = require("./tools/store-media-file.tool");
Object.defineProperty(exports, "StoreMediaFileTool", { enumerable: true, get: function () { return store_media_file_tool_1.StoreMediaFileTool; } });
var delete_media_file_tool_1 = require("./tools/delete-media-file.tool");
Object.defineProperty(exports, "DeleteMediaFileTool", { enumerable: true, get: function () { return delete_media_file_tool_1.DeleteMediaFileTool; } });
var add_tags_tool_1 = require("./tools/add-tags.tool");
Object.defineProperty(exports, "AddTagsTool", { enumerable: true, get: function () { return add_tags_tool_1.AddTagsTool; } });
var remove_tags_tool_1 = require("./tools/remove-tags.tool");
Object.defineProperty(exports, "RemoveTagsTool", { enumerable: true, get: function () { return remove_tags_tool_1.RemoveTagsTool; } });
var replace_tags_tool_1 = require("./tools/replace-tags.tool");
Object.defineProperty(exports, "ReplaceTagsTool", { enumerable: true, get: function () { return replace_tags_tool_1.ReplaceTagsTool; } });
var clear_unused_tags_tool_1 = require("./tools/clear-unused-tags.tool");
Object.defineProperty(exports, "ClearUnusedTagsTool", { enumerable: true, get: function () { return clear_unused_tags_tool_1.ClearUnusedTagsTool; } });
var collection_stats_1 = require("./tools/collection-stats");
Object.defineProperty(exports, "CollectionStatsTool", { enumerable: true, get: function () { return collection_stats_1.CollectionStatsTool; } });
var review_stats_1 = require("./tools/review-stats");
Object.defineProperty(exports, "ReviewStatsTool", { enumerable: true, get: function () { return review_stats_1.ReviewStatsTool; } });
var review_session_prompt_1 = require("./prompts/review-session.prompt");
Object.defineProperty(exports, "ReviewSessionPrompt", { enumerable: true, get: function () { return review_session_prompt_1.ReviewSessionPrompt; } });
var twenty_rules_prompt_1 = require("./prompts/twenty-rules.prompt");
Object.defineProperty(exports, "TwentyRulesPrompt", { enumerable: true, get: function () { return twenty_rules_prompt_1.TwentyRulesPrompt; } });
var system_info_resource_1 = require("./resources/system-info.resource");
Object.defineProperty(exports, "SystemInfoResource", { enumerable: true, get: function () { return system_info_resource_1.SystemInfoResource; } });
const common_1 = require("@nestjs/common");
const anki_connect_client_2 = require("../../clients/anki-connect.client");
const sync_tool_2 = require("./tools/sync.tool");
const get_due_cards_tool_2 = require("./tools/get-due-cards.tool");
const get_cards_tool_2 = require("./tools/get-cards.tool");
const present_card_tool_2 = require("./tools/present-card.tool");
const rate_card_tool_2 = require("./tools/rate-card.tool");
const forget_cards_tool_2 = require("./tools/forget-cards.tool");
const set_due_date_tool_2 = require("./tools/set-due-date.tool");
const are_suspended_tool_2 = require("./tools/are-suspended.tool");
const suspend_cards_tool_2 = require("./tools/suspend-cards.tool");
const unsuspend_cards_tool_2 = require("./tools/unsuspend-cards.tool");
const model_names_tool_2 = require("./tools/model-names.tool");
const model_field_names_tool_2 = require("./tools/model-field-names.tool");
const model_styling_tool_2 = require("./tools/model-styling.tool");
const create_model_tool_2 = require("./tools/create-model.tool");
const update_model_styling_tool_2 = require("./tools/update-model-styling.tool");
const model_templates_tool_2 = require("./tools/model-templates.tool");
const update_model_templates_tool_2 = require("./tools/update-model-templates.tool");
const add_model_field_tool_2 = require("./tools/add-model-field.tool");
const remove_model_field_tool_2 = require("./tools/remove-model-field.tool");
const rename_model_field_tool_2 = require("./tools/rename-model-field.tool");
const reposition_model_field_tool_2 = require("./tools/reposition-model-field.tool");
const add_note_tool_2 = require("./tools/add-note.tool");
const add_notes_tool_2 = require("./tools/add-notes.tool");
const find_notes_tool_2 = require("./tools/find-notes.tool");
const notes_info_tool_2 = require("./tools/notes-info.tool");
const update_note_fields_tool_2 = require("./tools/update-note-fields.tool");
const delete_notes_tool_2 = require("./tools/delete-notes.tool");
const get_tags_tool_2 = require("./tools/get-tags.tool");
const list_decks_tool_2 = require("./tools/list-decks.tool");
const deck_stats_tool_2 = require("./tools/deck-stats.tool");
const create_deck_tool_2 = require("./tools/create-deck.tool");
const change_deck_tool_2 = require("./tools/change-deck.tool");
const retrieve_media_file_tool_2 = require("./tools/retrieve-media-file.tool");
const get_media_files_names_tool_2 = require("./tools/get-media-files-names.tool");
const store_media_file_tool_2 = require("./tools/store-media-file.tool");
const delete_media_file_tool_2 = require("./tools/delete-media-file.tool");
const add_tags_tool_2 = require("./tools/add-tags.tool");
const remove_tags_tool_2 = require("./tools/remove-tags.tool");
const replace_tags_tool_2 = require("./tools/replace-tags.tool");
const clear_unused_tags_tool_2 = require("./tools/clear-unused-tags.tool");
const collection_stats_2 = require("./tools/collection-stats");
const review_stats_2 = require("./tools/review-stats");
const review_session_prompt_2 = require("./prompts/review-session.prompt");
const twenty_rules_prompt_2 = require("./prompts/twenty-rules.prompt");
const system_info_resource_2 = require("./resources/system-info.resource");
exports.ESSENTIAL_MCP_TOOLS = [
sync_tool_2.SyncTool,
get_due_cards_tool_2.GetDueCardsTool,
get_cards_tool_2.GetCardsTool,
present_card_tool_2.PresentCardTool,
rate_card_tool_2.RateCardTool,
forget_cards_tool_2.ForgetCardsTool,
set_due_date_tool_2.SetDueDateTool,
are_suspended_tool_2.AreSuspendedTool,
suspend_cards_tool_2.SuspendCardsTool,
unsuspend_cards_tool_2.UnsuspendCardsTool,
model_names_tool_2.ModelNamesTool,
model_field_names_tool_2.ModelFieldNamesTool,
model_styling_tool_2.ModelStylingTool,
create_model_tool_2.CreateModelTool,
update_model_styling_tool_2.UpdateModelStylingTool,
model_templates_tool_2.ModelTemplatesTool,
update_model_templates_tool_2.UpdateModelTemplatesTool,
add_model_field_tool_2.AddModelFieldTool,
remove_model_field_tool_2.RemoveModelFieldTool,
rename_model_field_tool_2.RenameModelFieldTool,
reposition_model_field_tool_2.RepositionModelFieldTool,
add_note_tool_2.AddNoteTool,
add_notes_tool_2.AddNotesTool,
find_notes_tool_2.FindNotesTool,
notes_info_tool_2.NotesInfoTool,
update_note_fields_tool_2.UpdateNoteFieldsTool,
delete_notes_tool_2.DeleteNotesTool,
get_tags_tool_2.GetTagsTool,
list_decks_tool_2.ListDecksTool,
deck_stats_tool_2.DeckStatsTool,
create_deck_tool_2.CreateDeckTool,
change_deck_tool_2.ChangeDeckTool,
retrieve_media_file_tool_2.RetrieveMediaFileTool,
get_media_files_names_tool_2.GetMediaFilesNamesTool,
store_media_file_tool_2.StoreMediaFileTool,
delete_media_file_tool_2.DeleteMediaFileTool,
add_tags_tool_2.AddTagsTool,
remove_tags_tool_2.RemoveTagsTool,
replace_tags_tool_2.ReplaceTagsTool,
clear_unused_tags_tool_2.ClearUnusedTagsTool,
collection_stats_2.CollectionStatsTool,
review_stats_2.ReviewStatsTool,
review_session_prompt_2.ReviewSessionPrompt,
twenty_rules_prompt_2.TwentyRulesPrompt,
system_info_resource_2.SystemInfoResource,
];
let McpPrimitivesAnkiEssentialModule = McpPrimitivesAnkiEssentialModule_1 = class McpPrimitivesAnkiEssentialModule {
static forRoot(options) {
const providers = [
options.ankiConfigProvider,
anki_connect_client_2.AnkiConnectClient,
];
if (options.appConfigProvider) {
providers.push(options.appConfigProvider);
}
return {
module: McpPrimitivesAnkiEssentialModule_1,
controllers: exports.ESSENTIAL_MCP_TOOLS,
providers,
exports: [anki_connect_client_2.AnkiConnectClient],
};
}
};
exports.McpPrimitivesAnkiEssentialModule = McpPrimitivesAnkiEssentialModule;
exports.McpPrimitivesAnkiEssentialModule = McpPrimitivesAnkiEssentialModule = McpPrimitivesAnkiEssentialModule_1 = __decorate([
(0, common_1.Module)({})
], McpPrimitivesAnkiEssentialModule);
//# sourceMappingURL=index.js.map