anki_create_deck
Create a new Anki deck programmatically using the Model Context Protocol. Specify the deck name to manage flashcards and organize study materials efficiently.
Instructions
Create a new Anki deck
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| deckName | Yes | The name of the deck to create |
Implementation Reference
- src/tool-manager.ts:1042-1056 (handler)The execution handler for the 'create_deck' MCP tool. It retrieves the deckName argument, validates it, calls the YankiConnect client's deck.createDeck method, and returns a success message.case "create_deck": { const client = getClient(); const deckName = String(toolArgs.deckName); if (!deckName) { throw new Error( "deckName parameter is required for create_deck tool." ); } await client.deck.createDeck({ deck: deckName }); return { content: [ { type: "text", text: `Successfully created deck: ${deckName}` }, ], }; }
- src/tool-manager.ts:386-398 (schema)The tool schema definition for 'create_deck', including name, description, and inputSchema requiring a 'deckName' string.name: "create_deck", description: "Create a new Anki deck.", inputSchema: { type: "object", properties: { deckName: { type: "string", description: "The name of the deck to create.", }, }, required: ["deckName"], }, },
- src/tool-manager.ts:694-700 (registration)Registration of the tool list handler, which includes the 'create_deck' tool from getToolDefinitions() in the response to ListToolsRequest.server.setRequestHandler(ListToolsRequestSchema, async () => { console.error( "[MCP Anki Client - tool-manager.ts] Received ListToolsRequest from client." ); const tools = [...getToolDefinitions(), getDeckModelInfoToolDefinition]; return { tools: tools }; });