listTanStackAddOns
List available TanStack Start add-ons for React or Solid frameworks to extend your project.
Instructions
List all available TanStack Start add-ons for a given framework
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| framework | No | Project framework | React |
Implementation Reference
- src/index.ts:60-62 (registration)Registers the 'listTanStackAddOns' tool on the MCP server with its name.
// 1. listTanStackAddOns server.tool( "listTanStackAddOns", - src/index.ts:63-69 (schema)Defines the input schema for listTanStackAddOns: accepts an optional 'framework' parameter (enum: React/Solid, default React).
"List all available TanStack Start add-ons for a given framework", { framework: z .enum(["React", "Solid"]) .default("React") .describe("Project framework"), }, - src/index.ts:70-79 (handler)Handler function that runs `npx @tanstack/cli create --list-add-ons --framework <framework> --json`, parses the JSON output, and returns it.
async ({ framework }) => { const { stdout } = await runCli([ "create", "--list-add-ons", "--framework", framework, "--json", ]); return jsonResult(parseJsonOutput(stdout)); }, - src/index.ts:18-32 (helper)runCli helper used by the handler to execute the CLI command.
async function runCli( args: string[], timeoutMs = 60_000, ): Promise<{ stdout: string; stderr: string }> { const { stdout, stderr } = await execFileAsync( TANSTACK_CLI, [...TANSTACK_ARGS, ...args], { timeout: timeoutMs, maxBuffer: 10 * 1024 * 1024, // 10 MB env: { ...process.env, NO_COLOR: "1" }, }, ); return { stdout: stdout.trim(), stderr: stderr.trim() }; } - src/index.ts:47-49 (helper)jsonResult helper used to format the JSON response.
function jsonResult(data: unknown) { return textResult(JSON.stringify(data, null, 2)); }