@beignet/cli 0.0.10 → 0.0.11

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # @beignet/cli
2
2
 
3
+ ## 0.0.11
4
+
5
+ ### Patch Changes
6
+
7
+ - 72601c8: `beignet mcp` runs a Model Context Protocol server over stdio exposing routes, doctor (with fix), lint, and the generators as structured tools, so MCP clients like Claude Code and Cursor can inspect and maintain a Beignet app directly.
8
+ - 72601c8: Generated apps now include an AGENTS.md agent guide (registration checklist, validation loop, placement rules) and a .mcp.json registering the beignet mcp server, so coding agents get the non-obvious conventions and structured tools out of the box.
9
+ - @beignet/core@0.0.11
10
+
3
11
  ## 0.0.10
4
12
 
5
13
  ### Patch Changes
package/README.md CHANGED
@@ -57,6 +57,8 @@ By default the CLI creates a Next.js app with:
57
57
  - Validated application use cases
58
58
  - A Beignet server wired through Next.js route handlers
59
59
  - App error helpers, auth helpers, env validation, health checks, and devtools
60
+ - An `AGENTS.md` agent guide and a `.mcp.json` that registers the
61
+ `beignet mcp` server for MCP clients such as Claude Code
60
62
  - A typed client
61
63
  - TanStack Query
62
64
  - React Hook Form
@@ -182,8 +184,9 @@ beignet db reset [--dry-run] [--json]
182
184
  beignet routes [--json] [--cwd <dir>]
183
185
  beignet lint [--json] [--cwd <dir>] [--format human|json|github]
184
186
  beignet doctor [--json] [--strict] [--fix] [--cwd <dir>] [--format human|json|github]
185
- beignet completion install [--shell bash|zsh]
186
- beignet completion uninstall [--shell bash|zsh]
187
+ beignet mcp
188
+ beignet completion install [--shell bash|zsh] [--json]
189
+ beignet completion uninstall [--shell bash|zsh] [--json]
187
190
  beignet --version
188
191
 
189
192
  Options:
@@ -202,6 +205,7 @@ Options:
202
205
  --payload '{"date":"..."}' JSON payload for `beignet schedule run`.
203
206
  --module server/tasks.ts Override the task, outbox, or schedule registry path.
204
207
  --batch-size 100 Maximum outbox messages to claim in one drain pass.
208
+ --id run_123 Provider or app schedule run ID for schedule runs.
205
209
  --scheduled-at 2026-01-01 Provider scheduled timestamp for schedule runs.
206
210
  --triggered-at 2026-01-01 Trigger timestamp for schedule runs.
207
211
  --attempt 1 One-based provider attempt number for schedule runs.
@@ -849,6 +853,35 @@ artifacts are already registered individually, the fix bails out and the
849
853
  diagnostic stays. Listener registration is report-only because apps own their
850
854
  event-bus wiring.
851
855
 
856
+ ## MCP server for coding agents
857
+
858
+ Run an MCP (Model Context Protocol) server over stdio so coding agents can
859
+ call the CLI as tools:
860
+
861
+ ```bash
862
+ beignet mcp
863
+ ```
864
+
865
+ The server exposes five tools:
866
+
867
+ - `routes` - list app routes and contracts (read-only)
868
+ - `doctor` - drift diagnostics as JSON, `{ strict?: boolean }` defaults to
869
+ `true` (read-only)
870
+ - `doctor_fix` - apply doctor's low-risk fixes; repairs route-group,
871
+ schedule, task, and outbox registration drift, while listener drift stays
872
+ report-only
873
+ - `lint` - architecture dependency-direction diagnostics (read-only)
874
+ - `make` - run a generator with `{ artifact, name, ...options }`, the same
875
+ artifact kinds as `beignet make`
876
+
877
+ Tool outputs match the JSON the matching `--json` flags print. Generated apps
878
+ ship a `.mcp.json` that registers the server through the app's package runner
879
+ (`bunx` in bun apps, `npx` in npm, pnpm, and yarn apps), so Claude Code picks
880
+ it up with no configuration; Cursor and VS Code users add the same command to
881
+ `.cursor/mcp.json` or `.vscode/mcp.json`. Generated apps also include an
882
+ `AGENTS.md` covering registration, generator, placement, and validation
883
+ conventions.
884
+
852
885
  ## License
853
886
 
854
887
  MIT
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAIL,KAAK,cAAc,EAInB,KAAK,4BAA4B,EACjC,KAAK,cAAc,EAEpB,MAAM,eAAe,CAAC;AAoBvB,KAAK,UAAU,GAAG,cAAc,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;CAClC,CAAC;AAm8CF,wBAAsB,IAAI,CACxB,MAAM,WAAwB,EAC9B,OAAO,GAAE,4BAA4B,CAAC,UAAU,CAAe,GAC9D,OAAO,CAAC,IAAI,CAAC,CAiBf"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAIL,KAAK,cAAc,EAInB,KAAK,4BAA4B,EACjC,KAAK,cAAc,EAEpB,MAAM,eAAe,CAAC;AAoBvB,KAAK,UAAU,GAAG,cAAc,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;CAClC,CAAC;AAg+CF,wBAAsB,IAAI,CACxB,MAAM,WAAwB,EAC9B,OAAO,GAAE,4BAA4B,CAAC,UAAU,CAAe,GAC9D,OAAO,CAAC,IAAI,CAAC,CAiBf"}
package/dist/index.js CHANGED
@@ -323,6 +323,27 @@ const lintCommand = buildCommand({
323
323
  };
324
324
  },
325
325
  });
326
+ const mcpCommand = buildCommand({
327
+ docs: {
328
+ brief: "Run a Model Context Protocol server exposing this app's routes, doctor, lint, and generators over stdio.",
329
+ },
330
+ parameters: {
331
+ flags: {
332
+ cwd: cwdFlag,
333
+ },
334
+ },
335
+ loader: async () => {
336
+ const { runMcpServer } = await import("./mcp.js");
337
+ return async function runMcp(flags) {
338
+ // Stdout belongs to the MCP transport, so nothing routes through
339
+ // writeOutput here.
340
+ await runMcpServer({
341
+ cwd: flags.cwd ?? process.cwd(),
342
+ version: getCliVersion(),
343
+ });
344
+ };
345
+ },
346
+ });
326
347
  function databaseCommand(command) {
327
348
  return buildCommand({
328
349
  docs: {
@@ -719,6 +740,7 @@ Run npm create beignet@latest (or bun create beignet) to scaffold a new app.`,
719
740
  doctor: doctorCommand,
720
741
  lint: lintCommand,
721
742
  make: makeRoutes,
743
+ mcp: mcpCommand,
722
744
  outbox: outboxRoutes,
723
745
  routes: routesCommand,
724
746
  schedule: scheduleRoutes,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/mcp.d.ts ADDED
@@ -0,0 +1,19 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ /**
3
+ * Options for building or running the Beignet MCP server.
4
+ */
5
+ export type McpServerOptions = {
6
+ cwd: string;
7
+ version: string;
8
+ };
9
+ /**
10
+ * Build the Beignet MCP server with routes, doctor, lint, and make tools.
11
+ * Every tool resolves against the app directory captured at launch.
12
+ */
13
+ export declare function buildBeignetMcpServer(options: McpServerOptions): McpServer;
14
+ /**
15
+ * Run the Beignet MCP server over stdio until the client disconnects.
16
+ * Stdout belongs to the transport; diagnostics must go to stderr.
17
+ */
18
+ export declare function runMcpServer(options: McpServerOptions): Promise<void>;
19
+ //# sourceMappingURL=mcp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA2BpE;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AA6MF;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,CA2G1E;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAU3E"}
package/dist/mcp.js ADDED
@@ -0,0 +1,250 @@
1
+ import path from "node:path";
2
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
3
+ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
4
+ import { z } from "zod";
5
+ import { applyDoctorFixes, inspectApp } from "./inspect.js";
6
+ import { lintApp } from "./lint.js";
7
+ import { makeAdapter, makeContract, makeEvent, makeFactory, makeFeature, makeFeatureAddonChoices, makeJob, makeListener, makeNotification, makePolicy, makePort, makeResource, makeSchedule, makeSeed, makeTask, makeTest, makeUpload, makeUseCase, } from "./make.js";
8
+ const makeArtifactChoices = [
9
+ "adapter",
10
+ "contract",
11
+ "event",
12
+ "factory",
13
+ "feature",
14
+ "job",
15
+ "listener",
16
+ "notification",
17
+ "policy",
18
+ "port",
19
+ "resource",
20
+ "schedule",
21
+ "seed",
22
+ "task",
23
+ "test",
24
+ "upload",
25
+ "use-case",
26
+ ];
27
+ const makeInputSchema = {
28
+ artifact: z
29
+ .enum(makeArtifactChoices)
30
+ .describe("Kind of artifact to generate."),
31
+ name: z
32
+ .string()
33
+ .describe("Artifact name. Feature-owned artifacts use feature-scoped paths such as posts/backfill."),
34
+ with: z
35
+ .array(z.enum(makeFeatureAddonChoices))
36
+ .optional()
37
+ .describe("feature only: add feature-owned artifacts such as policy, events, jobs, notifications, tasks, ui, and uploads."),
38
+ event: z
39
+ .string()
40
+ .optional()
41
+ .describe("listener only (required): event to listen to, for example posts/published."),
42
+ cron: z
43
+ .string()
44
+ .optional()
45
+ .describe("schedule only: cron expression. Defaults to 0 9 * * *."),
46
+ timezone: z
47
+ .string()
48
+ .optional()
49
+ .describe("schedule only: IANA timezone, for example America/Chicago."),
50
+ route: z
51
+ .boolean()
52
+ .optional()
53
+ .describe("schedule only: generate a Next.js cron route for the schedule."),
54
+ auth: z
55
+ .boolean()
56
+ .optional()
57
+ .describe("resource only: generate policy metadata and use-case authorization checks for mutating routes."),
58
+ tenant: z
59
+ .boolean()
60
+ .optional()
61
+ .describe("resource only: generate tenant-scoped schemas, repository methods, and use-case checks."),
62
+ events: z
63
+ .boolean()
64
+ .optional()
65
+ .describe("resource only: generate domain event definitions and publish resource events."),
66
+ softDelete: z
67
+ .boolean()
68
+ .optional()
69
+ .describe("resource only: generate soft-delete persistence that archives rows with deletedAt."),
70
+ force: z
71
+ .boolean()
72
+ .optional()
73
+ .describe("Overwrite conflicting files instead of failing."),
74
+ dryRun: z
75
+ .boolean()
76
+ .optional()
77
+ .describe("Preview generated changes without writing files."),
78
+ };
79
+ function jsonResult(value) {
80
+ return {
81
+ content: [{ type: "text", text: JSON.stringify(value, null, 2) }],
82
+ };
83
+ }
84
+ function errorResult(error) {
85
+ return {
86
+ isError: true,
87
+ content: [
88
+ {
89
+ type: "text",
90
+ text: error instanceof Error ? error.message : String(error),
91
+ },
92
+ ],
93
+ };
94
+ }
95
+ async function safeToolResult(run) {
96
+ try {
97
+ return await run();
98
+ }
99
+ catch (error) {
100
+ return errorResult(error);
101
+ }
102
+ }
103
+ async function runMakeTool(cwd, input) {
104
+ const base = {
105
+ name: input.name,
106
+ cwd,
107
+ force: input.force,
108
+ dryRun: input.dryRun,
109
+ };
110
+ switch (input.artifact) {
111
+ case "adapter":
112
+ return makeAdapter(base);
113
+ case "contract":
114
+ return makeContract(base);
115
+ case "event":
116
+ return makeEvent(base);
117
+ case "factory":
118
+ return makeFactory(base);
119
+ case "feature":
120
+ return makeFeature({ ...base, with: input.with });
121
+ case "job":
122
+ return makeJob(base);
123
+ case "listener":
124
+ if (!input.event) {
125
+ throw new Error("make listener requires an event, for example event: posts/published.");
126
+ }
127
+ return makeListener({ ...base, event: input.event });
128
+ case "notification":
129
+ return makeNotification(base);
130
+ case "policy":
131
+ return makePolicy(base);
132
+ case "port":
133
+ return makePort(base);
134
+ case "resource":
135
+ return makeResource({
136
+ ...base,
137
+ auth: input.auth,
138
+ tenant: input.tenant,
139
+ events: input.events,
140
+ softDelete: input.softDelete,
141
+ });
142
+ case "schedule":
143
+ return makeSchedule({
144
+ ...base,
145
+ cron: input.cron,
146
+ timezone: input.timezone,
147
+ route: input.route,
148
+ });
149
+ case "seed":
150
+ return makeSeed(base);
151
+ case "task":
152
+ return makeTask(base);
153
+ case "test":
154
+ return makeTest(base);
155
+ case "upload":
156
+ return makeUpload(base);
157
+ case "use-case":
158
+ return makeUseCase(base);
159
+ }
160
+ }
161
+ /**
162
+ * Build the Beignet MCP server with routes, doctor, lint, and make tools.
163
+ * Every tool resolves against the app directory captured at launch.
164
+ */
165
+ export function buildBeignetMcpServer(options) {
166
+ const cwd = path.resolve(options.cwd);
167
+ const server = new McpServer({
168
+ name: "beignet",
169
+ version: options.version,
170
+ });
171
+ server.registerTool("routes", {
172
+ description: "List the app's registered Beignet HTTP routes as JSON: method, path, contract export, contract file, and route handler mapping.",
173
+ annotations: { readOnlyHint: true },
174
+ }, async () => safeToolResult(async () => {
175
+ const result = await inspectApp({ cwd });
176
+ return jsonResult(result.routes.map((route) => ({
177
+ method: route.method,
178
+ path: route.path,
179
+ contract: route.exportName,
180
+ file: route.file,
181
+ handlerFile: route.handlerFile,
182
+ handlerSource: route.handlerSource,
183
+ metadata: route.metadata,
184
+ })));
185
+ }));
186
+ server.registerTool("doctor", {
187
+ description: "Check app wiring and Beignet conventions, returning diagnostics, the detected convention, and applied fixes as JSON. Strict mode (the default) is the CI bar and includes CI-oriented warnings. Read-only; use doctor_fix to repair registration drift.",
188
+ inputSchema: {
189
+ strict: z
190
+ .boolean()
191
+ .optional()
192
+ .describe("Include CI-oriented warnings. Defaults to true."),
193
+ },
194
+ annotations: { readOnlyHint: true },
195
+ }, async (input) => safeToolResult(async () => {
196
+ const result = await inspectApp({ cwd, strict: input.strict ?? true });
197
+ return jsonResult({
198
+ diagnostics: result.diagnostics,
199
+ convention: result.convention,
200
+ fixes: result.fixes,
201
+ });
202
+ }));
203
+ server.registerTool("doctor_fix", {
204
+ description: "Apply low-risk doctor fixes, then re-check the app. Repairs route-group, schedule, task, and outbox registration drift; listener registration drift is report-only. Returns applied fixes and remaining diagnostics as JSON.",
205
+ inputSchema: {
206
+ strict: z
207
+ .boolean()
208
+ .optional()
209
+ .describe("Include CI-oriented warnings. Defaults to true."),
210
+ },
211
+ }, async (input) => safeToolResult(async () => {
212
+ const strict = input.strict ?? true;
213
+ const fixes = await applyDoctorFixes({ cwd, strict });
214
+ const result = await inspectApp({ cwd, strict });
215
+ return jsonResult({
216
+ diagnostics: result.diagnostics,
217
+ convention: result.convention,
218
+ fixes,
219
+ });
220
+ }));
221
+ server.registerTool("lint", {
222
+ description: "Check Beignet dependency-direction conventions across domain, use cases, routes, components, and infra. Returns lint diagnostics as JSON.",
223
+ annotations: { readOnlyHint: true },
224
+ }, async () => safeToolResult(async () => {
225
+ return jsonResult(await lintApp({ cwd }));
226
+ }));
227
+ server.registerTool("make", {
228
+ description: "Generate Beignet app files for one artifact: adapter, contract, event, factory, feature, job, listener, notification, policy, port, resource, schedule, seed, task, test, upload, or use-case. Generators auto-register artifacts, so doctor stays clean. Options by artifact: feature accepts with (addons); resource accepts auth, tenant, events, softDelete; listener requires event; schedule accepts cron, timezone, route. All artifacts accept force and dryRun. Returns created, updated, and skipped files as JSON.",
229
+ inputSchema: makeInputSchema,
230
+ }, async (input) => safeToolResult(async () => {
231
+ return jsonResult(await runMakeTool(cwd, input));
232
+ }));
233
+ return server;
234
+ }
235
+ /**
236
+ * Run the Beignet MCP server over stdio until the client disconnects.
237
+ * Stdout belongs to the transport; diagnostics must go to stderr.
238
+ */
239
+ export async function runMcpServer(options) {
240
+ const server = buildBeignetMcpServer(options);
241
+ const transport = new StdioServerTransport();
242
+ const closed = new Promise((resolve) => {
243
+ server.server.onclose = () => {
244
+ resolve();
245
+ };
246
+ });
247
+ await server.connect(transport);
248
+ await closed;
249
+ }
250
+ //# sourceMappingURL=mcp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { type TemplateContext } from "./shared.js";
2
+ /**
3
+ * AGENTS.md teaches coding agents the conventions that are not discoverable
4
+ * from the code: registration wiring, generators, and the validation loop.
5
+ * README.md owns setup and the app map; this file must not duplicate it.
6
+ */
7
+ export declare function agentsMd(ctx: TemplateContext): string;
8
+ /**
9
+ * .mcp.json registers the `beignet mcp` stdio server for MCP-aware clients.
10
+ * The runner must not print banners on stdout, which corrupts JSON-RPC, so
11
+ * the config launches the locally installed CLI bin via bunx/npx.
12
+ */
13
+ export declare function mcpJson(ctx: TemplateContext): string;
14
+ //# sourceMappingURL=agents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/templates/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAExE;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CA6ErD;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAWpD"}
@@ -0,0 +1,98 @@
1
+ import { json, packageRunner } from "./shared.js";
2
+ /**
3
+ * AGENTS.md teaches coding agents the conventions that are not discoverable
4
+ * from the code: registration wiring, generators, and the validation loop.
5
+ * README.md owns setup and the app map; this file must not duplicate it.
6
+ */
7
+ export function agentsMd(ctx) {
8
+ const cli = packageRunner(ctx);
9
+ const test = ctx.packageManager === "npm"
10
+ ? "npm run test"
11
+ : `${ctx.packageManager} run test`;
12
+ const typecheck = ctx.packageManager === "npm"
13
+ ? "npm run typecheck"
14
+ : `${ctx.packageManager} run typecheck`;
15
+ return `# ${ctx.name} — agent guide
16
+
17
+ This is a Beignet contract-first app. Full framework docs live at
18
+ https://beignetjs.com (agent-friendly index at https://beignetjs.com/llms.txt).
19
+ README.md covers setup and the app map; this file covers what is not
20
+ discoverable from the code.
21
+
22
+ ## Registration is not automatic
23
+
24
+ Creating an artifact file does not wire it into the app. Non-registration is
25
+ a silent failure — the file exists but never runs:
26
+
27
+ - Feature route groups in \`features/<feature>/routes.ts\` must be composed in
28
+ \`server/routes.ts\` via \`defineRoutes([...])\`.
29
+ - Schedules must be added to the \`schedules\` array in \`server/schedules.ts\`.
30
+ - Tasks must be added to \`defineTasks([...])\` in \`server/tasks.ts\`.
31
+ - Outbox events and jobs must be registered in \`defineOutboxRegistry({...})\`
32
+ in \`server/outbox.ts\`.
33
+ - Listeners must be wired through a \`registerListeners(...)\` call in infra
34
+ wiring.
35
+
36
+ The starter ships no workflow registries — generators create them on first
37
+ use, so their absence is fine. \`${cli} doctor\` detects registration drift.
38
+ \`${cli} doctor --fix\` repairs route-group, schedule, task, and outbox
39
+ registration; listener drift is report-only and must be fixed by hand.
40
+
41
+ ## Prefer generators
42
+
43
+ \`${cli} make <artifact> <name>\` creates correctly placed, pre-registered
44
+ files — prefer it over hand-writing them. See \`${cli} make --help\` for the
45
+ artifact list. After changing the Drizzle schema in \`infra/db/schema/\`, run
46
+ \`${cli} db generate\` then \`${cli} db migrate\`.
47
+
48
+ ## Validation loop
49
+
50
+ Run after every change:
51
+
52
+ \`\`\`bash
53
+ ${cli} lint
54
+ ${cli} doctor --strict
55
+ ${test}
56
+ ${typecheck}
57
+ \`\`\`
58
+
59
+ ## Placement rules
60
+
61
+ - Feature artifacts live under \`features/<feature>/\`, with tests in
62
+ \`features/<feature>/tests/\` (not \`__tests__/\`).
63
+ - Domain and use-case code must not import infra, providers, or React.
64
+ - Routes must not import concrete infra.
65
+
66
+ ## Naming grammar
67
+
68
+ - \`defineX\` declares things you register: contracts, routes, jobs,
69
+ schedules, and the rest.
70
+ - \`createX\` builds runtime objects you call: servers, clients, providers,
71
+ and the \`createX<AppContext>()\` factories that return app-bound
72
+ \`defineX\` builders.
73
+
74
+ ## MCP server
75
+
76
+ \`.mcp.json\` registers the \`beignet mcp\` stdio server, which exposes
77
+ routes/doctor/lint/make as structured tools named exactly: \`routes\`,
78
+ \`doctor\`, \`doctor_fix\`, \`lint\`, \`make\`. Clients that do not read
79
+ \`.mcp.json\` can launch \`${cli} mcp\` directly.
80
+ `;
81
+ }
82
+ /**
83
+ * .mcp.json registers the `beignet mcp` stdio server for MCP-aware clients.
84
+ * The runner must not print banners on stdout, which corrupts JSON-RPC, so
85
+ * the config launches the locally installed CLI bin via bunx/npx.
86
+ */
87
+ export function mcpJson(ctx) {
88
+ const command = ctx.packageManager === "bun" ? "bunx" : "npx";
89
+ return json({
90
+ mcpServers: {
91
+ beignet: {
92
+ command,
93
+ args: ["beignet", "mcp"],
94
+ },
95
+ },
96
+ });
97
+ }
98
+ //# sourceMappingURL=agents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/templates/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,aAAa,EAAwB,MAAM,aAAa,CAAC;AAExE;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAoB;IAC3C,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,IAAI,GACR,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,WAAW,CAAC;IACvC,MAAM,SAAS,GACb,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,mBAAmB;QACrB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,gBAAgB,CAAC;IAE5C,OAAO,KAAK,GAAG,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;mCAsBa,GAAG;IAClC,GAAG;;;;;IAKH,GAAG;kDAC2C,GAAG;;IAEjD,GAAG,yBAAyB,GAAG;;;;;;;EAOjC,GAAG;EACH,GAAG;EACH,IAAI;EACJ,SAAS;;;;;;;;;;;;;;;;;;;;;;;6BAuBkB,GAAG;CAC/B,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,OAAO,CAAC,GAAoB;IAC1C,MAAM,OAAO,GAAG,GAAG,CAAC,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;IAE9D,OAAO,IAAI,CAAC;QACV,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,OAAO;gBACP,IAAI,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC;aACzB;SACF;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,YAAY,GACb,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACpE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAoBjE,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIjE;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,eAAe,GAAG,YAAY,EAAE,CAkHrE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,YAAY,GACb,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACpE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAqBjE,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIjE;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,eAAe,GAAG,YAAY,EAAE,CAoHrE"}
@@ -1,4 +1,5 @@
1
1
  export { databaseChoices, integrationChoices } from "../choices.js";
2
+ import { agentsMd, mcpJson } from "./agents.js";
2
3
  import { baseFiles, envExample, integrationsDoc, packageJson, readme, } from "./base.js";
3
4
  import { dbFiles } from "./db/index.js";
4
5
  import { betterAuth, env, infrastructurePorts, ports, server, serverFiles, serverProviders, } from "./server.js";
@@ -18,6 +19,8 @@ export function getTemplateFiles(ctx) {
18
19
  const templateFiles = [
19
20
  { path: "package.json", content: packageJson(ctx) },
20
21
  { path: "README.md", content: readme(ctx) },
22
+ { path: "AGENTS.md", content: agentsMd(ctx) },
23
+ { path: ".mcp.json", content: mcpJson(ctx) },
21
24
  { path: ".gitignore", content: baseFiles.gitignore },
22
25
  { path: ".env.example", content: envExample(ctx) },
23
26
  { path: "next-env.d.ts", content: baseFiles.nextEnv },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGpE,OAAO,EACL,SAAS,EACT,UAAU,EACV,eAAe,EACf,WAAW,EACX,MAAM,GACP,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,UAAU,EACV,GAAG,EACH,mBAAmB,EACnB,KAAK,EACL,MAAM,EACN,WAAW,EACX,eAAe,GAChB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAoB;IACnD,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACxB,MAAM,aAAa,GAAmB;QACpC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE;QACnD,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE;QAC3C,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,CAAC,SAAS,EAAE;QACpD,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE;QAClD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE;QACrD,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE;QACzD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE;QACtD,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,WAAW,CAAC,UAAU,EAAE;QAC3D;YACE,IAAI,EAAE,8BAA8B;YACpC,OAAO,EAAE,WAAW,CAAC,gBAAgB;SACtC;QACD,EAAE,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE;QACrE;YACE,IAAI,EAAE,uCAAuC;YAC7C,OAAO,EAAE,WAAW,CAAC,aAAa;SACnC;QACD,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,WAAW,CAAC,YAAY,EAAE;QACvE;YACE,IAAI,EAAE,gCAAgC;YACtC,OAAO,EAAE,WAAW,CAAC,SAAS;SAC/B;QACD,EAAE,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,WAAW,CAAC,YAAY,EAAE;QACxE,EAAE,IAAI,EAAE,6BAA6B,EAAE,OAAO,EAAE,UAAU,CAAC,SAAS,EAAE;QACtE,EAAE,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE;QAClE,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE;QAChE,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE;QAChE,EAAE,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE;QAC9D;YACE,IAAI,EAAE,yCAAyC;YAC/C,OAAO,EAAE,UAAU,CAAC,iBAAiB;SACtC;QACD;YACE,IAAI,EAAE,yCAAyC;YAC/C,OAAO,EAAE,UAAU,CAAC,iBAAiB;SACtC;QACD;YACE,IAAI,EAAE,wCAAwC;YAC9C,OAAO,EAAE,UAAU,CAAC,gBAAgB;SACrC;QACD;YACE,IAAI,EAAE,yCAAyC;YAC/C,OAAO,EAAE,UAAU,CAAC,iBAAiB;SACtC;QACD;YACE,IAAI,EAAE,mCAAmC;YACzC,OAAO,EAAE,UAAU,CAAC,aAAa;SAClC;QACD;YACE,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,UAAU,CAAC,WAAW;SAChC;QACD;YACE,IAAI,EAAE,oCAAoC;YAC1C,OAAO,EAAE,UAAU,CAAC,WAAW;SAChC;QACD;YACE,IAAI,EAAE,qCAAqC;YAC3C,OAAO,EAAE,UAAU,CAAC,UAAU;SAC/B;QACD,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE;QAC/C,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE;QACxD,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,mBAAmB,CAAC,GAAG,CAAC,EAAE;QACjE,EAAE,IAAI,EAAE,4BAA4B,EAAE,OAAO,EAAE,EAAE,CAAC,aAAa,EAAE;QACjE,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,EAAE,CAAC,UAAU,EAAE;QACxD,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,EAAE,CAAC,cAAc,EAAE;QAChE,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE;QAClD,EAAE,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,EAAE,CAAC,cAAc,EAAE;QACjE,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,EAAE,CAAC,QAAQ,EAAE;QAC1D;YACE,IAAI,EAAE,wCAAwC;YAC9C,OAAO,EAAE,EAAE,CAAC,qBAAqB;SAClC;QACD,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,EAAE,CAAC,aAAa,EAAE;QACxD,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,EAAE,CAAC,mBAAmB,EAAE;QACrE;YACE,IAAI,EAAE,4BAA4B;YAClC,OAAO,EAAE,EAAE,CAAC,uBAAuB;SACpC;QACD;YACE,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,EAAE,CAAC,wBAAwB;SACrC;QACD,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE;QACzC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE;QACzD,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE;QACxD,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,CAAC,cAAc,EAAE;QAChE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE;QACjD,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,WAAW,CAAC,aAAa,EAAE;QACjE,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,WAAW,CAAC,YAAY,EAAE;QAC/D,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE;KAC/D,CAAC;IAEF,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;QACZ,aAAa,CAAC,IAAI,CAChB,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,WAAW,CAAC,SAAS,EAAE,EAC1D,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,EACtD,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,CAAC,cAAc,EAAE,CACjE,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,aAAa,CAAC,IAAI,CAAC,GAAG,mBAAmB,EAAE,EAAE,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,aAAa,CAAC,IAAI,CAAC;YACjB,IAAI,EAAE,sBAAsB;YAC5B,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC;SAC9B,CAAC,CAAC;IACL,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@beignet/cli",
3
- "version": "0.0.10",
3
+ "version": "0.0.11",
4
4
  "type": "module",
5
5
  "description": "CLI for creating and maintaining Beignet apps.",
6
6
  "main": "./dist/lib.js",
@@ -66,9 +66,11 @@
66
66
  "typescript": "^5.3.0"
67
67
  },
68
68
  "dependencies": {
69
- "@beignet/core": "^0.0.10",
69
+ "@beignet/core": "^0.0.11",
70
70
  "@clack/prompts": "^1.5.1",
71
+ "@modelcontextprotocol/sdk": "^1.29.0",
71
72
  "@stricli/core": "^1.2.7",
72
- "jiti": "^2.7.0"
73
+ "jiti": "^2.7.0",
74
+ "zod": "^4.0.0"
73
75
  }
74
76
  }
package/src/index.ts CHANGED
@@ -127,6 +127,10 @@ type ScheduleRunFlags = {
127
127
  source?: string;
128
128
  };
129
129
 
130
+ type McpFlags = {
131
+ cwd?: string;
132
+ };
133
+
130
134
  type DoctorFlags = {
131
135
  json?: boolean;
132
136
  strict?: boolean;
@@ -526,6 +530,30 @@ const lintCommand = buildCommand<LintFlags, [], CliContext>({
526
530
  },
527
531
  });
528
532
 
533
+ const mcpCommand = buildCommand<McpFlags, [], CliContext>({
534
+ docs: {
535
+ brief:
536
+ "Run a Model Context Protocol server exposing this app's routes, doctor, lint, and generators over stdio.",
537
+ },
538
+ parameters: {
539
+ flags: {
540
+ cwd: cwdFlag,
541
+ } satisfies FlagParametersForType<McpFlags, CliContext>,
542
+ },
543
+ loader: async () => {
544
+ const { runMcpServer } = await import("./mcp.js");
545
+
546
+ return async function runMcp(this: CliContext, flags: McpFlags) {
547
+ // Stdout belongs to the MCP transport, so nothing routes through
548
+ // writeOutput here.
549
+ await runMcpServer({
550
+ cwd: flags.cwd ?? process.cwd(),
551
+ version: getCliVersion(),
552
+ });
553
+ };
554
+ },
555
+ });
556
+
529
557
  type DatabaseCommandName = "generate" | "migrate" | "reset" | "seed";
530
558
 
531
559
  function databaseCommand(command: DatabaseCommandName) {
@@ -1121,6 +1149,7 @@ Run npm create beignet@latest (or bun create beignet) to scaffold a new app.`,
1121
1149
  doctor: doctorCommand,
1122
1150
  lint: lintCommand,
1123
1151
  make: makeRoutes,
1152
+ mcp: mcpCommand,
1124
1153
  outbox: outboxRoutes,
1125
1154
  routes: routesCommand,
1126
1155
  schedule: scheduleRoutes,
package/src/mcp.ts ADDED
@@ -0,0 +1,367 @@
1
+ import path from "node:path";
2
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
3
+ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
4
+ import { z } from "zod";
5
+ import { applyDoctorFixes, inspectApp } from "./inspect.js";
6
+ import { lintApp } from "./lint.js";
7
+ import {
8
+ type MakeResourceResult,
9
+ makeAdapter,
10
+ makeContract,
11
+ makeEvent,
12
+ makeFactory,
13
+ makeFeature,
14
+ makeFeatureAddonChoices,
15
+ makeJob,
16
+ makeListener,
17
+ makeNotification,
18
+ makePolicy,
19
+ makePort,
20
+ makeResource,
21
+ makeSchedule,
22
+ makeSeed,
23
+ makeTask,
24
+ makeTest,
25
+ makeUpload,
26
+ makeUseCase,
27
+ } from "./make.js";
28
+
29
+ /**
30
+ * Options for building or running the Beignet MCP server.
31
+ */
32
+ export type McpServerOptions = {
33
+ cwd: string;
34
+ version: string;
35
+ };
36
+
37
+ const makeArtifactChoices = [
38
+ "adapter",
39
+ "contract",
40
+ "event",
41
+ "factory",
42
+ "feature",
43
+ "job",
44
+ "listener",
45
+ "notification",
46
+ "policy",
47
+ "port",
48
+ "resource",
49
+ "schedule",
50
+ "seed",
51
+ "task",
52
+ "test",
53
+ "upload",
54
+ "use-case",
55
+ ] as const;
56
+
57
+ type MakeArtifact = (typeof makeArtifactChoices)[number];
58
+
59
+ const makeInputSchema = {
60
+ artifact: z
61
+ .enum(makeArtifactChoices)
62
+ .describe("Kind of artifact to generate."),
63
+ name: z
64
+ .string()
65
+ .describe(
66
+ "Artifact name. Feature-owned artifacts use feature-scoped paths such as posts/backfill.",
67
+ ),
68
+ with: z
69
+ .array(z.enum(makeFeatureAddonChoices))
70
+ .optional()
71
+ .describe(
72
+ "feature only: add feature-owned artifacts such as policy, events, jobs, notifications, tasks, ui, and uploads.",
73
+ ),
74
+ event: z
75
+ .string()
76
+ .optional()
77
+ .describe(
78
+ "listener only (required): event to listen to, for example posts/published.",
79
+ ),
80
+ cron: z
81
+ .string()
82
+ .optional()
83
+ .describe("schedule only: cron expression. Defaults to 0 9 * * *."),
84
+ timezone: z
85
+ .string()
86
+ .optional()
87
+ .describe("schedule only: IANA timezone, for example America/Chicago."),
88
+ route: z
89
+ .boolean()
90
+ .optional()
91
+ .describe("schedule only: generate a Next.js cron route for the schedule."),
92
+ auth: z
93
+ .boolean()
94
+ .optional()
95
+ .describe(
96
+ "resource only: generate policy metadata and use-case authorization checks for mutating routes.",
97
+ ),
98
+ tenant: z
99
+ .boolean()
100
+ .optional()
101
+ .describe(
102
+ "resource only: generate tenant-scoped schemas, repository methods, and use-case checks.",
103
+ ),
104
+ events: z
105
+ .boolean()
106
+ .optional()
107
+ .describe(
108
+ "resource only: generate domain event definitions and publish resource events.",
109
+ ),
110
+ softDelete: z
111
+ .boolean()
112
+ .optional()
113
+ .describe(
114
+ "resource only: generate soft-delete persistence that archives rows with deletedAt.",
115
+ ),
116
+ force: z
117
+ .boolean()
118
+ .optional()
119
+ .describe("Overwrite conflicting files instead of failing."),
120
+ dryRun: z
121
+ .boolean()
122
+ .optional()
123
+ .describe("Preview generated changes without writing files."),
124
+ };
125
+
126
+ type MakeToolInput = {
127
+ artifact: MakeArtifact;
128
+ name: string;
129
+ with?: Array<(typeof makeFeatureAddonChoices)[number]>;
130
+ event?: string;
131
+ cron?: string;
132
+ timezone?: string;
133
+ route?: boolean;
134
+ auth?: boolean;
135
+ tenant?: boolean;
136
+ events?: boolean;
137
+ softDelete?: boolean;
138
+ force?: boolean;
139
+ dryRun?: boolean;
140
+ };
141
+
142
+ type McpToolResult = {
143
+ content: Array<{ type: "text"; text: string }>;
144
+ isError?: boolean;
145
+ };
146
+
147
+ function jsonResult(value: unknown): McpToolResult {
148
+ return {
149
+ content: [{ type: "text", text: JSON.stringify(value, null, 2) }],
150
+ };
151
+ }
152
+
153
+ function errorResult(error: unknown): McpToolResult {
154
+ return {
155
+ isError: true,
156
+ content: [
157
+ {
158
+ type: "text",
159
+ text: error instanceof Error ? error.message : String(error),
160
+ },
161
+ ],
162
+ };
163
+ }
164
+
165
+ async function safeToolResult(
166
+ run: () => Promise<McpToolResult>,
167
+ ): Promise<McpToolResult> {
168
+ try {
169
+ return await run();
170
+ } catch (error) {
171
+ return errorResult(error);
172
+ }
173
+ }
174
+
175
+ async function runMakeTool(
176
+ cwd: string,
177
+ input: MakeToolInput,
178
+ ): Promise<MakeResourceResult> {
179
+ const base = {
180
+ name: input.name,
181
+ cwd,
182
+ force: input.force,
183
+ dryRun: input.dryRun,
184
+ };
185
+
186
+ switch (input.artifact) {
187
+ case "adapter":
188
+ return makeAdapter(base);
189
+ case "contract":
190
+ return makeContract(base);
191
+ case "event":
192
+ return makeEvent(base);
193
+ case "factory":
194
+ return makeFactory(base);
195
+ case "feature":
196
+ return makeFeature({ ...base, with: input.with });
197
+ case "job":
198
+ return makeJob(base);
199
+ case "listener":
200
+ if (!input.event) {
201
+ throw new Error(
202
+ "make listener requires an event, for example event: posts/published.",
203
+ );
204
+ }
205
+ return makeListener({ ...base, event: input.event });
206
+ case "notification":
207
+ return makeNotification(base);
208
+ case "policy":
209
+ return makePolicy(base);
210
+ case "port":
211
+ return makePort(base);
212
+ case "resource":
213
+ return makeResource({
214
+ ...base,
215
+ auth: input.auth,
216
+ tenant: input.tenant,
217
+ events: input.events,
218
+ softDelete: input.softDelete,
219
+ });
220
+ case "schedule":
221
+ return makeSchedule({
222
+ ...base,
223
+ cron: input.cron,
224
+ timezone: input.timezone,
225
+ route: input.route,
226
+ });
227
+ case "seed":
228
+ return makeSeed(base);
229
+ case "task":
230
+ return makeTask(base);
231
+ case "test":
232
+ return makeTest(base);
233
+ case "upload":
234
+ return makeUpload(base);
235
+ case "use-case":
236
+ return makeUseCase(base);
237
+ }
238
+ }
239
+
240
+ /**
241
+ * Build the Beignet MCP server with routes, doctor, lint, and make tools.
242
+ * Every tool resolves against the app directory captured at launch.
243
+ */
244
+ export function buildBeignetMcpServer(options: McpServerOptions): McpServer {
245
+ const cwd = path.resolve(options.cwd);
246
+ const server = new McpServer({
247
+ name: "beignet",
248
+ version: options.version,
249
+ });
250
+
251
+ server.registerTool(
252
+ "routes",
253
+ {
254
+ description:
255
+ "List the app's registered Beignet HTTP routes as JSON: method, path, contract export, contract file, and route handler mapping.",
256
+ annotations: { readOnlyHint: true },
257
+ },
258
+ async () =>
259
+ safeToolResult(async () => {
260
+ const result = await inspectApp({ cwd });
261
+ return jsonResult(
262
+ result.routes.map((route) => ({
263
+ method: route.method,
264
+ path: route.path,
265
+ contract: route.exportName,
266
+ file: route.file,
267
+ handlerFile: route.handlerFile,
268
+ handlerSource: route.handlerSource,
269
+ metadata: route.metadata,
270
+ })),
271
+ );
272
+ }),
273
+ );
274
+
275
+ server.registerTool(
276
+ "doctor",
277
+ {
278
+ description:
279
+ "Check app wiring and Beignet conventions, returning diagnostics, the detected convention, and applied fixes as JSON. Strict mode (the default) is the CI bar and includes CI-oriented warnings. Read-only; use doctor_fix to repair registration drift.",
280
+ inputSchema: {
281
+ strict: z
282
+ .boolean()
283
+ .optional()
284
+ .describe("Include CI-oriented warnings. Defaults to true."),
285
+ },
286
+ annotations: { readOnlyHint: true },
287
+ },
288
+ async (input) =>
289
+ safeToolResult(async () => {
290
+ const result = await inspectApp({ cwd, strict: input.strict ?? true });
291
+ return jsonResult({
292
+ diagnostics: result.diagnostics,
293
+ convention: result.convention,
294
+ fixes: result.fixes,
295
+ });
296
+ }),
297
+ );
298
+
299
+ server.registerTool(
300
+ "doctor_fix",
301
+ {
302
+ description:
303
+ "Apply low-risk doctor fixes, then re-check the app. Repairs route-group, schedule, task, and outbox registration drift; listener registration drift is report-only. Returns applied fixes and remaining diagnostics as JSON.",
304
+ inputSchema: {
305
+ strict: z
306
+ .boolean()
307
+ .optional()
308
+ .describe("Include CI-oriented warnings. Defaults to true."),
309
+ },
310
+ },
311
+ async (input) =>
312
+ safeToolResult(async () => {
313
+ const strict = input.strict ?? true;
314
+ const fixes = await applyDoctorFixes({ cwd, strict });
315
+ const result = await inspectApp({ cwd, strict });
316
+ return jsonResult({
317
+ diagnostics: result.diagnostics,
318
+ convention: result.convention,
319
+ fixes,
320
+ });
321
+ }),
322
+ );
323
+
324
+ server.registerTool(
325
+ "lint",
326
+ {
327
+ description:
328
+ "Check Beignet dependency-direction conventions across domain, use cases, routes, components, and infra. Returns lint diagnostics as JSON.",
329
+ annotations: { readOnlyHint: true },
330
+ },
331
+ async () =>
332
+ safeToolResult(async () => {
333
+ return jsonResult(await lintApp({ cwd }));
334
+ }),
335
+ );
336
+
337
+ server.registerTool(
338
+ "make",
339
+ {
340
+ description:
341
+ "Generate Beignet app files for one artifact: adapter, contract, event, factory, feature, job, listener, notification, policy, port, resource, schedule, seed, task, test, upload, or use-case. Generators auto-register artifacts, so doctor stays clean. Options by artifact: feature accepts with (addons); resource accepts auth, tenant, events, softDelete; listener requires event; schedule accepts cron, timezone, route. All artifacts accept force and dryRun. Returns created, updated, and skipped files as JSON.",
342
+ inputSchema: makeInputSchema,
343
+ },
344
+ async (input) =>
345
+ safeToolResult(async () => {
346
+ return jsonResult(await runMakeTool(cwd, input));
347
+ }),
348
+ );
349
+
350
+ return server;
351
+ }
352
+
353
+ /**
354
+ * Run the Beignet MCP server over stdio until the client disconnects.
355
+ * Stdout belongs to the transport; diagnostics must go to stderr.
356
+ */
357
+ export async function runMcpServer(options: McpServerOptions): Promise<void> {
358
+ const server = buildBeignetMcpServer(options);
359
+ const transport = new StdioServerTransport();
360
+ const closed = new Promise<void>((resolve) => {
361
+ server.server.onclose = () => {
362
+ resolve();
363
+ };
364
+ });
365
+ await server.connect(transport);
366
+ await closed;
367
+ }
@@ -0,0 +1,103 @@
1
+ import { json, packageRunner, type TemplateContext } from "./shared.js";
2
+
3
+ /**
4
+ * AGENTS.md teaches coding agents the conventions that are not discoverable
5
+ * from the code: registration wiring, generators, and the validation loop.
6
+ * README.md owns setup and the app map; this file must not duplicate it.
7
+ */
8
+ export function agentsMd(ctx: TemplateContext): string {
9
+ const cli = packageRunner(ctx);
10
+ const test =
11
+ ctx.packageManager === "npm"
12
+ ? "npm run test"
13
+ : `${ctx.packageManager} run test`;
14
+ const typecheck =
15
+ ctx.packageManager === "npm"
16
+ ? "npm run typecheck"
17
+ : `${ctx.packageManager} run typecheck`;
18
+
19
+ return `# ${ctx.name} — agent guide
20
+
21
+ This is a Beignet contract-first app. Full framework docs live at
22
+ https://beignetjs.com (agent-friendly index at https://beignetjs.com/llms.txt).
23
+ README.md covers setup and the app map; this file covers what is not
24
+ discoverable from the code.
25
+
26
+ ## Registration is not automatic
27
+
28
+ Creating an artifact file does not wire it into the app. Non-registration is
29
+ a silent failure — the file exists but never runs:
30
+
31
+ - Feature route groups in \`features/<feature>/routes.ts\` must be composed in
32
+ \`server/routes.ts\` via \`defineRoutes([...])\`.
33
+ - Schedules must be added to the \`schedules\` array in \`server/schedules.ts\`.
34
+ - Tasks must be added to \`defineTasks([...])\` in \`server/tasks.ts\`.
35
+ - Outbox events and jobs must be registered in \`defineOutboxRegistry({...})\`
36
+ in \`server/outbox.ts\`.
37
+ - Listeners must be wired through a \`registerListeners(...)\` call in infra
38
+ wiring.
39
+
40
+ The starter ships no workflow registries — generators create them on first
41
+ use, so their absence is fine. \`${cli} doctor\` detects registration drift.
42
+ \`${cli} doctor --fix\` repairs route-group, schedule, task, and outbox
43
+ registration; listener drift is report-only and must be fixed by hand.
44
+
45
+ ## Prefer generators
46
+
47
+ \`${cli} make <artifact> <name>\` creates correctly placed, pre-registered
48
+ files — prefer it over hand-writing them. See \`${cli} make --help\` for the
49
+ artifact list. After changing the Drizzle schema in \`infra/db/schema/\`, run
50
+ \`${cli} db generate\` then \`${cli} db migrate\`.
51
+
52
+ ## Validation loop
53
+
54
+ Run after every change:
55
+
56
+ \`\`\`bash
57
+ ${cli} lint
58
+ ${cli} doctor --strict
59
+ ${test}
60
+ ${typecheck}
61
+ \`\`\`
62
+
63
+ ## Placement rules
64
+
65
+ - Feature artifacts live under \`features/<feature>/\`, with tests in
66
+ \`features/<feature>/tests/\` (not \`__tests__/\`).
67
+ - Domain and use-case code must not import infra, providers, or React.
68
+ - Routes must not import concrete infra.
69
+
70
+ ## Naming grammar
71
+
72
+ - \`defineX\` declares things you register: contracts, routes, jobs,
73
+ schedules, and the rest.
74
+ - \`createX\` builds runtime objects you call: servers, clients, providers,
75
+ and the \`createX<AppContext>()\` factories that return app-bound
76
+ \`defineX\` builders.
77
+
78
+ ## MCP server
79
+
80
+ \`.mcp.json\` registers the \`beignet mcp\` stdio server, which exposes
81
+ routes/doctor/lint/make as structured tools named exactly: \`routes\`,
82
+ \`doctor\`, \`doctor_fix\`, \`lint\`, \`make\`. Clients that do not read
83
+ \`.mcp.json\` can launch \`${cli} mcp\` directly.
84
+ `;
85
+ }
86
+
87
+ /**
88
+ * .mcp.json registers the `beignet mcp` stdio server for MCP-aware clients.
89
+ * The runner must not print banners on stdout, which corrupts JSON-RPC, so
90
+ * the config launches the locally installed CLI bin via bunx/npx.
91
+ */
92
+ export function mcpJson(ctx: TemplateContext): string {
93
+ const command = ctx.packageManager === "bun" ? "bunx" : "npx";
94
+
95
+ return json({
96
+ mcpServers: {
97
+ beignet: {
98
+ command,
99
+ args: ["beignet", "mcp"],
100
+ },
101
+ },
102
+ });
103
+ }
@@ -7,6 +7,7 @@ export type {
7
7
  export { databaseChoices, integrationChoices } from "../choices.js";
8
8
  export type { TemplateContext, TemplateFile } from "./shared.js";
9
9
 
10
+ import { agentsMd, mcpJson } from "./agents.js";
10
11
  import {
11
12
  baseFiles,
12
13
  envExample,
@@ -42,6 +43,8 @@ export function getTemplateFiles(ctx: TemplateContext): TemplateFile[] {
42
43
  const templateFiles: TemplateFile[] = [
43
44
  { path: "package.json", content: packageJson(ctx) },
44
45
  { path: "README.md", content: readme(ctx) },
46
+ { path: "AGENTS.md", content: agentsMd(ctx) },
47
+ { path: ".mcp.json", content: mcpJson(ctx) },
45
48
  { path: ".gitignore", content: baseFiles.gitignore },
46
49
  { path: ".env.example", content: envExample(ctx) },
47
50
  { path: "next-env.d.ts", content: baseFiles.nextEnv },