@vinkius-core/mcp-fusion 3.0.1 → 3.1.2

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/README.md CHANGED
@@ -1,161 +1,161 @@
1
- <div align="center">
2
-
3
- <picture>
4
- <source media="(prefers-color-scheme: dark)" srcset="https://site-assets.vinkius.com/vk/logo-v-black-square.png" width="80" height="80">
5
- <img src="https://site-assets.vinkius.com/vk/logo-v-black-square.png" style="border-radius:8px;background:#000000;padding:10px;border:1px solid #414141;" width="80" height="80" alt="MCP Fusion">
6
- </picture>
7
-
8
- # MCP Fusion
9
-
10
- **The framework for AI-native MCP servers.**<br>
11
- Type-safe tools, Presenters for LLM perception, governance lockfiles, and zero boilerplate.
12
-
13
- [![npm version](https://img.shields.io/npm/v/@vinkius-core/mcp-fusion.svg?color=0ea5e9)](https://www.npmjs.com/package/@vinkius-core/mcp-fusion)
14
- [![Downloads](https://img.shields.io/npm/dw/@vinkius-core/mcp-fusion)](https://www.npmjs.com/package/@vinkius-core/mcp-fusion)
15
- [![TypeScript](https://img.shields.io/badge/TypeScript-5.7+-blue?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
16
- [![MCP Standard](https://img.shields.io/badge/MCP-Standard-purple)](https://modelcontextprotocol.io/)
17
- [![License](https://img.shields.io/badge/License-Apache_2.0-green)](LICENSE)
18
-
19
- [Documentation](https://mcp-fusion.vinkius.com/) · [Quick Start](https://mcp-fusion.vinkius.com/quickstart-lightspeed) · [API Reference](https://mcp-fusion.vinkius.com/api/)
20
-
21
- </div>
22
-
23
- ---
24
-
25
- ## Quick Start
26
-
27
- ```bash
28
- npx fusion create my-server
29
- cd my-server && npm run dev
30
- ```
31
-
32
- 14 files scaffolded in 6ms — file-based routing, Presenters, Prompts, middleware, Cursor integration, and tests. Ready to go.
33
-
34
- ## The MVA Pattern
35
-
36
- MCP Fusion separates three concerns that raw MCP servers mix into a single handler:
37
-
38
- ```
39
- Model (Zod Schema) → View (Presenter) → Agent (LLM)
40
- validates perceives acts
41
- ```
42
-
43
- The **handler** returns raw data. The **Presenter** shapes what the agent sees. The **middleware** governs access. Works with any MCP client — Cursor, Claude Desktop, Claude Code, Windsurf, Cline, VS Code + GitHub Copilot.
44
-
45
- ## Why MCP Fusion
46
-
47
- - **Fluent API** — Semantic verbs (`f.query`, `f.mutation`, `f.action`) with type-chaining. Full IDE autocomplete in `.handle()` — zero manual interfaces.
48
- - **Presenters** — Egress firewall for LLMs. Zod-validated schemas strip undeclared fields in RAM. JIT system rules, server-rendered UI, cognitive guardrails, and HATEOAS-style next actions.
49
- - **Zero-Trust Sandbox** — V8 Isolate engine (`isolated-vm`). The LLM sends logic to your data instead of data to the LLM. Sealed execution — no `process`, `require`, `fs`, `net`.
50
- - **File-Based Routing** — Drop a file in `src/tools/`, it becomes a tool. No central import file, no merge conflicts.
51
- - **Testing** — In-memory pipeline testing without MCP transport. Schema validation, middleware, handler, presenter — all tested directly.
52
- - **Governance** — Capability lockfile (`mcp-fusion.lock`), contract diffing, HMAC attestation, semantic probing, entitlement scanning, blast radius analysis.
53
- - **State Sync** — RFC 7234-inspired cache-control for LLM agents. `invalidates()`, `cached()`, `stale()` — the agent knows whether its data is still valid.
54
- - **Inspector** — Real-time terminal dashboard via Shadow Socket (IPC). Zero stdio interference. Live tool registry, traffic log, X-RAY deep inspection, Late Guillotine token metrics.
55
- - **tRPC-Style Client** — Compile-time route validation with `InferRouter<typeof registry>`. Autocomplete for tool names, inputs, and responses.
56
- - **Adapters** — Deploy to Vercel, Cloudflare Workers, or plain Node.js.
57
-
58
- ## Code Example
59
-
60
- ```typescript
61
- import { initFusion } from '@vinkius-core/mcp-fusion';
62
-
63
- type AppContext = { db: PrismaClient; user: User };
64
- const f = initFusion<AppContext>();
65
-
66
- // Define a tool with one line
67
- export default f.query('system.health')
68
- .describe('Returns server operational status')
69
- .returns(SystemPresenter)
70
- .handle(async (_, ctx) => ({
71
- status: 'healthy',
72
- uptime: process.uptime(),
73
- version: '1.0.0',
74
- }));
75
- ```
76
-
77
- ```typescript
78
- // Presenter — the egress firewall
79
- const SystemPresenter = createPresenter('System')
80
- .schema({
81
- status: t.enum('healthy', 'degraded', 'down'),
82
- uptime: t.number.describe('Seconds since boot'),
83
- version: t.string,
84
- })
85
- .rules(['Version follows semver. Compare with latest to suggest updates.']);
86
- ```
87
-
88
- ```typescript
89
- // Self-healing errors — the LLM can recover
90
- return f.error('NOT_FOUND', `Project "${input.id}" not found`)
91
- .suggest('Use projects.list to find valid IDs')
92
- .actions('projects.list', 'projects.search');
93
- ```
94
-
95
- > **Full guide**: [mcp-fusion.vinkius.com/building-tools](https://mcp-fusion.vinkius.com/building-tools)
96
-
97
- ## Inspector — Real-Time Dashboard
98
-
99
- ```bash
100
- npx fusion inspect # Auto-discover and connect
101
- npx fusion inspect --demo # Built-in simulator
102
- ```
103
-
104
- ```
105
- ┌──────────────────────────────────────────────────────────────┐
106
- │ ● LIVE: PID 12345 │ RAM: [█████░░░] 28MB │ UP: 01:23 │
107
- ├───────────────────────┬──────────────────────────────────────┤
108
- │ TOOL LIST │ X-RAY: billing.create_invoice │
109
- │ ✓ billing.create │ LATE GUILLOTINE: │
110
- │ ✓ billing.get │ DB Raw : 4.2KB │
111
- │ ✗ users.delete │ Wire : 1.1KB │
112
- │ ✓ system.health │ SAVINGS : ████████░░ 73.8% │
113
- ├───────────────────────┴──────────────────────────────────────┤
114
- │ 19:32:01 ROUTE billing.create │ 19:32:01 EXEC ✓ 45ms│
115
- └──────────────────────────────────────────────────────────────┘
116
- ```
117
-
118
- Connects via **Shadow Socket** (Named Pipe / Unix Domain Socket) — no stdio interference, no port conflicts.
119
-
120
- > **Docs**: [mcp-fusion.vinkius.com/inspector](https://mcp-fusion.vinkius.com/inspector)
121
-
122
- ## Ecosystem
123
-
124
- ### Adapters
125
-
126
- | Package | Target |
127
- |---|---|
128
- | [`mcp-fusion-vercel`](https://mcp-fusion.vinkius.com/vercel-adapter) | Vercel Functions (Edge / Node.js) |
129
- | [`mcp-fusion-cloudflare`](https://mcp-fusion.vinkius.com/cloudflare-adapter) | Cloudflare Workers — zero polyfills |
130
-
131
- ### Generators & Connectors
132
-
133
- | Package | Source |
134
- |---|---|
135
- | [`mcp-fusion-openapi-gen`](https://mcp-fusion.vinkius.com/openapi-gen) | Generate typed tools from OpenAPI 3.x specs |
136
- | [`mcp-fusion-prisma-gen`](https://mcp-fusion.vinkius.com/prisma-gen) | Generate CRUD tools from Prisma schemas |
137
- | [`mcp-fusion-n8n`](https://mcp-fusion.vinkius.com/n8n-connector) | Auto-discover n8n workflows as tools |
138
- | [`mcp-fusion-aws`](https://mcp-fusion.vinkius.com/aws-connector) | Auto-discover AWS Lambda & Step Functions |
139
- | [`mcp-fusion-oauth`](https://mcp-fusion.vinkius.com/oauth) | RFC 8628 Device Flow authentication |
140
- | [`mcp-fusion-jwt`](https://mcp-fusion.vinkius.com/jwt) | JWT verification — HS256/RS256/ES256 + JWKS |
141
- | [`mcp-fusion-api-key`](https://mcp-fusion.vinkius.com/api-key) | API key validation with timing-safe comparison |
142
- | [`mcp-fusion-testing`](https://mcp-fusion.vinkius.com/testing) | In-memory pipeline testing |
143
- | [`mcp-fusion-inspector`](https://mcp-fusion.vinkius.com/inspector) | Real-time terminal dashboard |
144
-
145
- ## Documentation
146
-
147
- Full guides, API reference, and cookbook recipes:
148
-
149
- **[mcp-fusion.vinkius.com](https://mcp-fusion.vinkius.com/)**
150
-
151
- ## Contributing
152
-
153
- See [CONTRIBUTING.md](CONTRIBUTING.md) for development setup and PR guidelines.
154
-
155
- ## Security
156
-
157
- See [SECURITY.md](SECURITY.md) for reporting vulnerabilities.
158
-
159
- ## License
160
-
161
- [Apache 2.0](LICENSE)
1
+ <div align="center">
2
+
3
+ <picture>
4
+ <source media="(prefers-color-scheme: dark)" srcset="https://site-assets.vinkius.com/vk/logo-v-black-square.png" width="80" height="80">
5
+ <img src="https://site-assets.vinkius.com/vk/logo-v-black-square.png" style="border-radius:8px;background:#000000;padding:10px;border:1px solid #414141;" width="80" height="80" alt="MCP Fusion">
6
+ </picture>
7
+
8
+ # MCP Fusion
9
+
10
+ **The framework for AI-native MCP servers.**<br>
11
+ Type-safe tools, Presenters for LLM perception, governance lockfiles, and zero boilerplate.
12
+
13
+ [![npm version](https://img.shields.io/npm/v/@vinkius-core/mcp-fusion.svg?color=0ea5e9)](https://www.npmjs.com/package/@vinkius-core/mcp-fusion)
14
+ [![Downloads](https://img.shields.io/npm/dw/@vinkius-core/mcp-fusion)](https://www.npmjs.com/package/@vinkius-core/mcp-fusion)
15
+ [![TypeScript](https://img.shields.io/badge/TypeScript-5.7+-blue?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
16
+ [![MCP Standard](https://img.shields.io/badge/MCP-Standard-purple)](https://modelcontextprotocol.io/)
17
+ [![License](https://img.shields.io/badge/License-Apache_2.0-green)](https://github.com/vinkius-labs/mcp-fusion/blob/main/LICENSE)
18
+
19
+ [Documentation](https://mcp-fusion.vinkius.com/) · [Quick Start](https://mcp-fusion.vinkius.com/quickstart-lightspeed) · [API Reference](https://mcp-fusion.vinkius.com/api/)
20
+
21
+ </div>
22
+
23
+ ---
24
+
25
+ ## Quick Start
26
+
27
+ ```bash
28
+ npx fusion create my-server
29
+ cd my-server && fusion dev
30
+ ```
31
+
32
+ 14 files scaffolded in 6ms — file-based routing, Presenters, Prompts, middleware, Cursor integration, and tests. Ready to go.
33
+
34
+ ## The MVA Pattern
35
+
36
+ MCP Fusion separates three concerns that raw MCP servers mix into a single handler:
37
+
38
+ ```
39
+ Model (Zod Schema) → View (Presenter) → Agent (LLM)
40
+ validates perceives acts
41
+ ```
42
+
43
+ The **handler** returns raw data. The **Presenter** shapes what the agent sees. The **middleware** governs access. Works with any MCP client — Cursor, Claude Desktop, Claude Code, Windsurf, Cline, VS Code + GitHub Copilot.
44
+
45
+ ## Why MCP Fusion
46
+
47
+ - **Fluent API** — Semantic verbs (`f.query`, `f.mutation`, `f.action`) with type-chaining. Full IDE autocomplete in `.handle()` — zero manual interfaces.
48
+ - **Presenters** — Egress firewall for LLMs. Zod-validated schemas strip undeclared fields in RAM. JIT system rules, server-rendered UI, cognitive guardrails, and HATEOAS-style next actions.
49
+ - **Zero-Trust Sandbox** — V8 Isolate engine (`isolated-vm`). The LLM sends logic to your data instead of data to the LLM. Sealed execution — no `process`, `require`, `fs`, `net`.
50
+ - **File-Based Routing** — Drop a file in `src/tools/`, it becomes a tool. No central import file, no merge conflicts.
51
+ - **Testing** — In-memory pipeline testing without MCP transport. Schema validation, middleware, handler, presenter — all tested directly.
52
+ - **Governance** — Capability lockfile (`mcp-fusion.lock`), contract diffing, HMAC attestation, semantic probing, entitlement scanning, blast radius analysis.
53
+ - **State Sync** — RFC 7234-inspired cache-control for LLM agents. `invalidates()`, `cached()`, `stale()` — the agent knows whether its data is still valid.
54
+ - **Inspector** — Real-time terminal dashboard via Shadow Socket (IPC). Zero stdio interference. Live tool registry, traffic log, X-RAY deep inspection, Late Guillotine token metrics.
55
+ - **tRPC-Style Client** — Compile-time route validation with `InferRouter<typeof registry>`. Autocomplete for tool names, inputs, and responses.
56
+ - **Adapters** — Deploy to Vercel, Cloudflare Workers, or plain Node.js.
57
+
58
+ ## Code Example
59
+
60
+ ```typescript
61
+ import { initFusion } from '@vinkius-core/mcp-fusion';
62
+
63
+ type AppContext = { db: PrismaClient; user: User };
64
+ const f = initFusion<AppContext>();
65
+
66
+ // Define a tool with one line
67
+ export default f.query('system.health')
68
+ .describe('Returns server operational status')
69
+ .returns(SystemPresenter)
70
+ .handle(async (_, ctx) => ({
71
+ status: 'healthy',
72
+ uptime: process.uptime(),
73
+ version: '1.0.0',
74
+ }));
75
+ ```
76
+
77
+ ```typescript
78
+ // Presenter — the egress firewall
79
+ const SystemPresenter = createPresenter('System')
80
+ .schema({
81
+ status: t.enum('healthy', 'degraded', 'down'),
82
+ uptime: t.number.describe('Seconds since boot'),
83
+ version: t.string,
84
+ })
85
+ .rules(['Version follows semver. Compare with latest to suggest updates.']);
86
+ ```
87
+
88
+ ```typescript
89
+ // Self-healing errors — the LLM can recover
90
+ return f.error('NOT_FOUND', `Project "${input.id}" not found`)
91
+ .suggest('Use projects.list to find valid IDs')
92
+ .actions('projects.list', 'projects.search');
93
+ ```
94
+
95
+ > **Full guide**: [mcp-fusion.vinkius.com/building-tools](https://mcp-fusion.vinkius.com/building-tools)
96
+
97
+ ## Inspector — Real-Time Dashboard
98
+
99
+ ```bash
100
+ npx fusion inspect # Auto-discover and connect
101
+ npx fusion inspect --demo # Built-in simulator
102
+ ```
103
+
104
+ ```
105
+ ┌──────────────────────────────────────────────────────────────┐
106
+ │ ● LIVE: PID 12345 │ RAM: [█████░░░] 28MB │ UP: 01:23 │
107
+ ├───────────────────────┬──────────────────────────────────────┤
108
+ │ TOOL LIST │ X-RAY: billing.create_invoice │
109
+ │ ✓ billing.create │ LATE GUILLOTINE: │
110
+ │ ✓ billing.get │ DB Raw : 4.2KB │
111
+ │ ✗ users.delete │ Wire : 1.1KB │
112
+ │ ✓ system.health │ SAVINGS : ████████░░ 73.8% │
113
+ ├───────────────────────┴──────────────────────────────────────┤
114
+ │ 19:32:01 ROUTE billing.create │ 19:32:01 EXEC ✓ 45ms│
115
+ └──────────────────────────────────────────────────────────────┘
116
+ ```
117
+
118
+ Connects via **Shadow Socket** (Named Pipe / Unix Domain Socket) — no stdio interference, no port conflicts.
119
+
120
+ > **Docs**: [mcp-fusion.vinkius.com/inspector](https://mcp-fusion.vinkius.com/inspector)
121
+
122
+ ## Ecosystem
123
+
124
+ ### Adapters
125
+
126
+ | Package | Target |
127
+ |---|---|
128
+ | [`mcp-fusion-vercel`](https://mcp-fusion.vinkius.com/vercel-adapter) | Vercel Functions (Edge / Node.js) |
129
+ | [`mcp-fusion-cloudflare`](https://mcp-fusion.vinkius.com/cloudflare-adapter) | Cloudflare Workers — zero polyfills |
130
+
131
+ ### Generators & Connectors
132
+
133
+ | Package | Source |
134
+ |---|---|
135
+ | [`mcp-fusion-openapi-gen`](https://mcp-fusion.vinkius.com/openapi-gen) | Generate typed tools from OpenAPI 3.x specs |
136
+ | [`mcp-fusion-prisma-gen`](https://mcp-fusion.vinkius.com/prisma-gen) | Generate CRUD tools from Prisma schemas |
137
+ | [`mcp-fusion-n8n`](https://mcp-fusion.vinkius.com/n8n-connector) | Auto-discover n8n workflows as tools |
138
+ | [`mcp-fusion-aws`](https://mcp-fusion.vinkius.com/aws-connector) | Auto-discover AWS Lambda & Step Functions |
139
+ | [`mcp-fusion-oauth`](https://mcp-fusion.vinkius.com/oauth) | RFC 8628 Device Flow authentication |
140
+ | [`mcp-fusion-jwt`](https://mcp-fusion.vinkius.com/jwt) | JWT verification — HS256/RS256/ES256 + JWKS |
141
+ | [`mcp-fusion-api-key`](https://mcp-fusion.vinkius.com/api-key) | API key validation with timing-safe comparison |
142
+ | [`mcp-fusion-testing`](https://mcp-fusion.vinkius.com/testing) | In-memory pipeline testing |
143
+ | [`mcp-fusion-inspector`](https://mcp-fusion.vinkius.com/inspector) | Real-time terminal dashboard |
144
+
145
+ ## Documentation
146
+
147
+ Full guides, API reference, and cookbook recipes:
148
+
149
+ **[mcp-fusion.vinkius.com](https://mcp-fusion.vinkius.com/)**
150
+
151
+ ## Contributing
152
+
153
+ See [CONTRIBUTING.md](https://github.com/vinkius-labs/mcp-fusion/blob/main/CONTRIBUTING.md) for development setup and PR guidelines.
154
+
155
+ ## Security
156
+
157
+ See [SECURITY.md](https://github.com/vinkius-labs/mcp-fusion/blob/main/SECURITY.md) for reporting vulnerabilities.
158
+
159
+ ## License
160
+
161
+ [Apache 2.0](https://github.com/vinkius-labs/mcp-fusion/blob/main/LICENSE)
@@ -107,51 +107,51 @@ export class ProgressTracker {
107
107
  /** @internal exported for testing */
108
108
  export const MCP_FUSION_VERSION = '1.1.0';
109
109
  /** @internal exported for testing */
110
- export const HELP = `
111
- fusion — MCP Fusion CLI
112
-
113
- USAGE
114
- fusion create <name> Scaffold a new MCP Fusion server
115
- fusion dev --server <entry> Start HMR dev server with auto-reload
116
- fusion lock Generate or update ${LOCKFILE_NAME}
117
- fusion lock --check Verify lockfile is up to date (CI gate)
118
- fusion inspect Launch the real-time TUI dashboard
119
- fusion insp --demo Launch TUI with built-in simulator
120
-
121
- CREATE OPTIONS
122
- --transport <stdio|sse> Transport layer (default: stdio)
123
- --vector <type> Ingestion vector: vanilla, prisma, n8n, openapi, oauth
124
- --testing Include test suite (default: true)
125
- --no-testing Skip test suite
126
- --yes, -y Skip prompts, use defaults
127
-
128
- DEV OPTIONS
129
- --server, -s <path> Path to server entrypoint (default: auto-detect)
130
- --dir, -d <path> Directory to watch for changes (default: auto-detect from server)
131
-
132
- INSPECTOR OPTIONS
133
- --demo, -d Launch with built-in simulator (no server needed)
134
- --out, -o <mode> Output: tui (default), stderr (headless ECS/K8s)
135
- --pid, -p <pid> Connect to a specific server PID
136
- --path <path> Custom IPC socket/pipe path
137
-
138
- LOCK OPTIONS
139
- --server, -s <path> Path to server entrypoint
140
- --name, -n <name> Server name for lockfile header
141
- --cwd <dir> Project root directory
142
-
143
- GLOBAL
144
- --help, -h Show this help message
145
-
146
- EXAMPLES
147
- fusion create my-server
148
- fusion create my-server -y
149
- fusion create my-server --vector prisma --transport sse
150
- fusion dev --server ./src/server.ts
151
- fusion dev --server ./src/server.ts --dir ./src/tools
152
- fusion lock --server ./src/server.ts
153
- fusion inspect --demo
154
- fusion insp --pid 12345
110
+ export const HELP = `
111
+ fusion — MCP Fusion CLI
112
+
113
+ USAGE
114
+ fusion create <name> Scaffold a new MCP Fusion server
115
+ fusion dev --server <entry> Start HMR dev server with auto-reload
116
+ fusion lock Generate or update ${LOCKFILE_NAME}
117
+ fusion lock --check Verify lockfile is up to date (CI gate)
118
+ fusion inspect Launch the real-time TUI dashboard
119
+ fusion insp --demo Launch TUI with built-in simulator
120
+
121
+ CREATE OPTIONS
122
+ --transport <stdio|sse> Transport layer (default: stdio)
123
+ --vector <type> Ingestion vector: vanilla, prisma, n8n, openapi, oauth
124
+ --testing Include test suite (default: true)
125
+ --no-testing Skip test suite
126
+ --yes, -y Skip prompts, use defaults
127
+
128
+ DEV OPTIONS
129
+ --server, -s <path> Path to server entrypoint (default: auto-detect)
130
+ --dir, -d <path> Directory to watch for changes (default: auto-detect from server)
131
+
132
+ INSPECTOR OPTIONS
133
+ --demo, -d Launch with built-in simulator (no server needed)
134
+ --out, -o <mode> Output: tui (default), stderr (headless ECS/K8s)
135
+ --pid, -p <pid> Connect to a specific server PID
136
+ --path <path> Custom IPC socket/pipe path
137
+
138
+ LOCK OPTIONS
139
+ --server, -s <path> Path to server entrypoint
140
+ --name, -n <name> Server name for lockfile header
141
+ --cwd <dir> Project root directory
142
+
143
+ GLOBAL
144
+ --help, -h Show this help message
145
+
146
+ EXAMPLES
147
+ fusion create my-server
148
+ fusion create my-server -y
149
+ fusion create my-server --vector prisma --transport sse
150
+ fusion dev --server ./src/server.ts
151
+ fusion dev --server ./src/server.ts --dir ./src/tools
152
+ fusion lock --server ./src/server.ts
153
+ fusion inspect --demo
154
+ fusion insp --pid 12345
155
155
  `.trim();
156
156
  /** @internal exported for testing */
157
157
  export function parseArgs(argv) {
@@ -624,10 +624,10 @@ export async function commandCreate(args, reporter) {
624
624
  // ── Done ─────────────────────────────────────────────
625
625
  const steps = [`cd ${config.name}`];
626
626
  if (config.transport === 'sse') {
627
- steps.push('npm start', '# then connect Cursor or Claude to http://localhost:3001/sse');
627
+ steps.push('fusion dev', '# then connect Cursor or Claude to http://localhost:3001/sse');
628
628
  }
629
629
  else {
630
- steps.push('npm run dev');
630
+ steps.push('fusion dev');
631
631
  }
632
632
  if (config.testing)
633
633
  steps.push('npm test');
@@ -1 +1 @@
1
- {"version":3,"file":"fusion.js","sourceRoot":"","sources":["../../src/cli/fusion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fusion.js","sourceRoot":"","sources":["../../src/cli/fusion.ts"],"names":[],"mappings":"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"}
@@ -32,8 +32,8 @@ export function packageJson(config) {
32
32
  devDeps['@vinkius-core/mcp-fusion-testing'] = TESTING_VERSION;
33
33
  }
34
34
  const scripts = {
35
- 'dev': 'tsx watch src/server.ts',
36
- 'start': 'tsx src/server.ts',
35
+ 'dev': 'fusion dev',
36
+ 'start': 'fusion dev',
37
37
  'build': 'tsc',
38
38
  'typecheck': 'tsc --noEmit',
39
39
  };
@@ -85,47 +85,47 @@ export function tsconfig() {
85
85
  }
86
86
  /** Generate `.gitignore` */
87
87
  export function gitignore() {
88
- return `node_modules/
89
- dist/
90
- *.tsbuildinfo
91
- .env
92
- .env.local
93
- coverage/
88
+ return `node_modules/
89
+ dist/
90
+ *.tsbuildinfo
91
+ .env
92
+ .env.local
93
+ coverage/
94
94
  `;
95
95
  }
96
96
  /** Generate `.env.example` with vector-specific vars */
97
97
  export function envExample(config) {
98
- let env = `# ── MCP Fusion Server Environment ─────────────────────
99
- # Copy this to .env and fill in your values.
100
-
101
- # Server
102
- NODE_ENV=development
98
+ let env = `# ── MCP Fusion Server Environment ─────────────────────
99
+ # Copy this to .env and fill in your values.
100
+
101
+ # Server
102
+ NODE_ENV=development
103
103
  `;
104
104
  if (config.vector === 'prisma') {
105
- env += `
106
- # Database (Prisma)
107
- DATABASE_URL="postgresql://user:password@localhost:5432/mydb?schema=public"
105
+ env += `
106
+ # Database (Prisma)
107
+ DATABASE_URL="postgresql://user:password@localhost:5432/mydb?schema=public"
108
108
  `;
109
109
  }
110
110
  if (config.vector === 'n8n') {
111
- env += `
112
- # n8n Workflow Automation
113
- N8N_BASE_URL=http://localhost:5678
114
- N8N_API_KEY=your-api-key-here
111
+ env += `
112
+ # n8n Workflow Automation
113
+ N8N_BASE_URL=http://localhost:5678
114
+ N8N_API_KEY=your-api-key-here
115
115
  `;
116
116
  }
117
117
  if (config.vector === 'oauth') {
118
- env += `
119
- # OAuth Device Flow (RFC 8628)
120
- OAUTH_CLIENT_ID=your-client-id
121
- OAUTH_AUTH_ENDPOINT=https://api.example.com/oauth/device/code
122
- OAUTH_TOKEN_ENDPOINT=https://api.example.com/oauth/device/token
118
+ env += `
119
+ # OAuth Device Flow (RFC 8628)
120
+ OAUTH_CLIENT_ID=your-client-id
121
+ OAUTH_AUTH_ENDPOINT=https://api.example.com/oauth/device/code
122
+ OAUTH_TOKEN_ENDPOINT=https://api.example.com/oauth/device/token
123
123
  `;
124
124
  }
125
125
  if (config.transport === 'sse') {
126
- env += `
127
- # SSE Transport
128
- PORT=3001
126
+ env += `
127
+ # SSE Transport
128
+ PORT=3001
129
129
  `;
130
130
  }
131
131
  return env;