csb_find_combos_by_card_ids
Identify Magic: The Gathering combos enabled by specific cards using Commander Spellbook numeric IDs to discover synergistic interactions.
Instructions
Find combos that the provided cards enable (exact and almost-included).
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | Commander Spellbook numeric card IDs | |
| limit | No | ||
| offset | No |
Implementation Reference
- src/mcp-server.ts:452-455 (handler)MCP tool handler function that receives input parameters and delegates to CSB.findMyCombos to fetch combos by card IDs.async ({ ids, limit, offset }: { ids: number[]; limit?: number; offset?: number }) => { const res = await CSB.findMyCombos(ids, limit, offset); return { structuredContent: res } as any; }
- src/mcp-server.ts:440-444 (schema)Zod input schema defining parameters: ids (array of card IDs), optional limit and offset.const csbFindCombosInput = { ids: z.array(z.number().int().nonnegative()).min(1).describe("Commander Spellbook numeric card IDs"), limit: z.number().int().min(1).max(100).optional(), offset: z.number().int().min(0).optional() } as const;
- src/mcp-server.ts:445-456 (registration)Registers the "csb_find_combos_by_card_ids" tool with MCP server, including title, description, input schema, and handler.server.registerTool( "csb_find_combos_by_card_ids", { title: "CSB: Find combos by card IDs", description: "Find combos that the provided cards enable (exact and almost-included).", inputSchema: csbFindCombosInput }, async ({ ids, limit, offset }: { ids: number[]; limit?: number; offset?: number }) => { const res = await CSB.findMyCombos(ids, limit, offset); return { structuredContent: res } as any; } );
- src/csb.ts:111-112 (helper)Helper method in CSB object that constructs API request to CSB backend endpoint /find-my-combos with card IDs, limit, and offset.findMyCombos: (ids: number[], limit?: number, offset?: number) => getJson("/find-my-combos", { ids: ids.join(","), limit, offset }),