@hol-org/hashnet-mcp 1.0.8 → 1.0.9

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/dist/cli/up.js CHANGED
@@ -26,15 +26,15 @@ var logInfo = (...messages) => preferStderr ? console.error(...messages) : conso
26
26
  var logWarn = (...messages) => preferStderr ? console.error(...messages) : console.warn(...messages);
27
27
  try {
28
28
  ensureNodeVersion();
29
- const packageManager = detectPackageManager();
29
+ const packageManager = detectPackageManager(preferStderr);
30
30
  ensurePnpmConfig();
31
- installDependencies(packageManager);
31
+ installDependencies(packageManager, preferStderr);
32
32
  ensureEnvFile();
33
33
  if (installOnly) {
34
34
  logInfo("Dependencies installed. Skipping server launch (--install-only set).");
35
35
  process.exit(0);
36
36
  }
37
- runServer(packageManager, transport);
37
+ runServer(packageManager, transport, preferStderr);
38
38
  } catch (error) {
39
39
  console.error(error instanceof Error ? error.message : error);
40
40
  process.exit(1);
@@ -74,12 +74,17 @@ function ensureNodeVersion() {
74
74
  throw new Error(`Node.js 18+ is required (detected ${process.versions.node}).`);
75
75
  }
76
76
  }
77
- function detectPackageManager() {
77
+ function detectPackageManager(preferStderr2) {
78
78
  if (commandExists("pnpm")) {
79
79
  return "pnpm";
80
80
  }
81
81
  logWarn("pnpm not detected. Attempting to enable via corepack...");
82
- const enabled = spawnSync("corepack", ["enable", "pnpm"], { stdio: "inherit" });
82
+ const enabled = spawnSync("corepack", ["enable", "pnpm"], {
83
+ stdio: preferStderr2 ? ["ignore", "pipe", "inherit"] : "inherit"
84
+ });
85
+ if (preferStderr2 && enabled.stdout?.length) {
86
+ process.stderr.write(enabled.stdout);
87
+ }
83
88
  if (enabled.status === 0 && commandExists("pnpm")) {
84
89
  return "pnpm";
85
90
  }
@@ -94,7 +99,7 @@ function commandExists(bin) {
94
99
  return false;
95
100
  }
96
101
  }
97
- function installDependencies(pm) {
102
+ function installDependencies(pm, preferStderr2) {
98
103
  logInfo(`Installing dependencies with ${pm}...`);
99
104
  const baseEnv = {
100
105
  ...process.env,
@@ -103,9 +108,12 @@ function installDependencies(pm) {
103
108
  const npmArgs = ["install", "--legacy-peer-deps"];
104
109
  const installResult = spawnSync(pm, pm === "pnpm" ? ["install"] : npmArgs, {
105
110
  cwd: projectRoot,
106
- stdio: "inherit",
111
+ stdio: preferStderr2 ? ["ignore", "pipe", "inherit"] : "inherit",
107
112
  env: baseEnv
108
113
  });
114
+ if (preferStderr2 && installResult.stdout?.length) {
115
+ process.stderr.write(installResult.stdout);
116
+ }
109
117
  if (installResult.status !== 0) {
110
118
  throw new Error(`${pm} install failed.`);
111
119
  }
@@ -134,7 +142,7 @@ function ensureEnvFile() {
134
142
  logInfo("Created .env from .env.example. Remember to fill in your credentials.");
135
143
  }
136
144
  }
137
- function runServer(pm, transport2) {
145
+ function runServer(pm, transport2, preferStderr2) {
138
146
  if (!["stdio", "sse"].includes(transport2)) {
139
147
  throw new Error(`Unsupported transport "${transport2}". Use stdio or sse.`);
140
148
  }
@@ -144,9 +152,12 @@ function runServer(pm, transport2) {
144
152
  logInfo("dist/index.js not found. Building project before start...");
145
153
  const buildResult = spawnSync(pm, ["run", "build"], {
146
154
  cwd: projectRoot,
147
- stdio: "inherit",
155
+ stdio: preferStderr2 ? ["ignore", "pipe", "inherit"] : "inherit",
148
156
  env
149
157
  });
158
+ if (preferStderr2 && buildResult.stdout?.length) {
159
+ process.stderr.write(buildResult.stdout);
160
+ }
150
161
  if (buildResult.status !== 0) {
151
162
  throw new Error(`${pm} run build exited with code ${buildResult.status}`);
152
163
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/cli/up.ts"],"sourcesContent":["import { spawnSync } from 'node:child_process';\nimport { copyFileSync, existsSync, writeFileSync } from 'node:fs';\nimport path from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nconst dirname = path.dirname(fileURLToPath(import.meta.url));\nconst projectRoot = path.resolve(dirname, '../..');\n\nconst args = process.argv.slice(2);\nconst command = args[0];\n\nif (!command || command === '--help' || command === '-h') {\n printHelp();\n process.exit(0);\n}\n\nif (command !== 'up') {\n console.error(`Unknown command: ${command}`);\n printHelp();\n process.exit(1);\n}\n\nconst flags = parseFlags(args.slice(1));\nconst transport = (flags.transport ?? 'stdio').toLowerCase();\nconst installOnly = Boolean(flags['install-only']);\nconst preferStderr = transport === 'stdio';\nconst logInfo = (...messages: any[]) => (preferStderr ? console.error(...messages) : console.log(...messages));\nconst logWarn = (...messages: any[]) => (preferStderr ? console.error(...messages) : console.warn(...messages));\n\ntry {\n ensureNodeVersion();\n const packageManager = detectPackageManager();\n ensurePnpmConfig();\n installDependencies(packageManager);\n ensureEnvFile();\n\n if (installOnly) {\n logInfo('Dependencies installed. Skipping server launch (--install-only set).');\n process.exit(0);\n }\n\n runServer(packageManager, transport);\n} catch (error) {\n console.error(error instanceof Error ? error.message : error);\n process.exit(1);\n}\n\nfunction printHelp() {\n console.log(`Usage: npx @hol-org/hashnet-mcp up [options]\\n\\nOptions:\\n --transport <stdio|sse> Choose the transport to start (default: stdio)\\n --install-only Install deps and sync .env, then exit\\n -h, --help Show this help message`);\n}\n\nfunction parseFlags(values: string[]) {\n const cloned = [...values];\n return cloned.reduce<Record<string, any>>((acc, entry, index) => {\n if (entry.startsWith('--')) {\n const [key, inlineValue] = entry.split('=');\n const normalized = key.replace(/^--/, '');\n if (inlineValue !== undefined) {\n acc[normalized] = inlineValue;\n } else {\n const next = cloned[index + 1];\n if (next && !next.startsWith('--')) {\n acc[normalized] = next;\n cloned.splice(index + 1, 1);\n } else {\n acc[normalized] = true;\n }\n }\n }\n return acc;\n }, {});\n}\n\nfunction ensureNodeVersion() {\n const major = Number(process.versions.node.split('.')[0]);\n if (Number.isNaN(major) || major < 18) {\n throw new Error(`Node.js 18+ is required (detected ${process.versions.node}).`);\n }\n}\n\nfunction detectPackageManager(): 'pnpm' | 'npm' {\n if (commandExists('pnpm')) {\n return 'pnpm';\n }\n\n logWarn('pnpm not detected. Attempting to enable via corepack...');\n const enabled = spawnSync('corepack', ['enable', 'pnpm'], { stdio: 'inherit' });\n if (enabled.status === 0 && commandExists('pnpm')) {\n return 'pnpm';\n }\n\n logWarn('Falling back to npm. Install pnpm globally for faster installs.');\n return 'npm';\n}\n\nfunction commandExists(bin: string) {\n try {\n const result = spawnSync(bin, ['--version'], { stdio: 'ignore' });\n return result.status === 0;\n } catch {\n return false;\n }\n}\n\nfunction installDependencies(pm: 'pnpm' | 'npm') {\n logInfo(`Installing dependencies with ${pm}...`);\n const baseEnv = {\n ...process.env,\n NODE_OPTIONS: process.env.NODE_OPTIONS ?? '--max-old-space-size=8192',\n };\n\n const npmArgs = ['install', '--legacy-peer-deps'];\n\n const installResult = spawnSync(pm, pm === 'pnpm' ? ['install'] : npmArgs, {\n cwd: projectRoot,\n stdio: 'inherit',\n env: baseEnv,\n });\n if (installResult.status !== 0) {\n throw new Error(`${pm} install failed.`);\n }\n}\n\nfunction ensurePnpmConfig() {\n const npmrcPath = path.join(projectRoot, '.npmrc');\n if (existsSync(npmrcPath)) {\n return;\n }\n\n const content = [\n 'node-linker=isolated',\n 'shamefully-hoist=false',\n 'strict-peer-dependencies=false',\n 'auto-install-peers=false',\n 'resolution-mode=lowest-direct',\n 'node-options=--max-old-space-size=8192',\n 'child-concurrency=4',\n ].join('\\n');\n\n writeFileSync(npmrcPath, content);\n}\n\nfunction ensureEnvFile() {\n const envPath = path.join(projectRoot, '.env');\n const examplePath = path.join(projectRoot, '.env.example');\n if (!existsSync(envPath) && existsSync(examplePath)) {\n copyFileSync(examplePath, envPath);\n logInfo('Created .env from .env.example. Remember to fill in your credentials.');\n }\n}\n\nfunction runServer(pm: 'pnpm' | 'npm', transport: string) {\n if (!['stdio', 'sse'].includes(transport)) {\n throw new Error(`Unsupported transport \"${transport}\". Use stdio or sse.`);\n }\n const distEntry = path.join(projectRoot, 'dist', 'index.js');\n const env = { ...process.env, MCP_TRANSPORT: transport };\n\n if (!existsSync(distEntry)) {\n logInfo('dist/index.js not found. Building project before start...');\n const buildResult = spawnSync(pm, ['run', 'build'], {\n cwd: projectRoot,\n stdio: 'inherit',\n env,\n });\n if (buildResult.status !== 0) {\n throw new Error(`${pm} run build exited with code ${buildResult.status}`);\n }\n }\n\n logInfo(`Starting ${transport} transport via ${pm} run start...`);\n const child = spawnSync(pm, ['run', 'start'], {\n cwd: projectRoot,\n stdio: 'inherit',\n env,\n });\n if (child.status !== 0) {\n throw new Error(`${pm} run start exited with code ${child.status}`);\n }\n}\n"],"mappings":";;;AAAA,SAAS,iBAAiB;AAC1B,SAAS,cAAc,YAAY,qBAAqB;AACxD,OAAO,UAAU;AACjB,SAAS,qBAAqB;AAE9B,IAAM,UAAU,KAAK,QAAQ,cAAc,YAAY,GAAG,CAAC;AAC3D,IAAM,cAAc,KAAK,QAAQ,SAAS,OAAO;AAEjD,IAAM,OAAO,QAAQ,KAAK,MAAM,CAAC;AACjC,IAAM,UAAU,KAAK,CAAC;AAEtB,IAAI,CAAC,WAAW,YAAY,YAAY,YAAY,MAAM;AACxD,YAAU;AACV,UAAQ,KAAK,CAAC;AAChB;AAEA,IAAI,YAAY,MAAM;AACpB,UAAQ,MAAM,oBAAoB,OAAO,EAAE;AAC3C,YAAU;AACV,UAAQ,KAAK,CAAC;AAChB;AAEA,IAAM,QAAQ,WAAW,KAAK,MAAM,CAAC,CAAC;AACtC,IAAM,aAAa,MAAM,aAAa,SAAS,YAAY;AAC3D,IAAM,cAAc,QAAQ,MAAM,cAAc,CAAC;AACjD,IAAM,eAAe,cAAc;AACnC,IAAM,UAAU,IAAI,aAAqB,eAAe,QAAQ,MAAM,GAAG,QAAQ,IAAI,QAAQ,IAAI,GAAG,QAAQ;AAC5G,IAAM,UAAU,IAAI,aAAqB,eAAe,QAAQ,MAAM,GAAG,QAAQ,IAAI,QAAQ,KAAK,GAAG,QAAQ;AAE7G,IAAI;AACF,oBAAkB;AAClB,QAAM,iBAAiB,qBAAqB;AAC5C,mBAAiB;AACjB,sBAAoB,cAAc;AAClC,gBAAc;AAEd,MAAI,aAAa;AACf,YAAQ,sEAAsE;AAC9E,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,YAAU,gBAAgB,SAAS;AACrC,SAAS,OAAO;AACd,UAAQ,MAAM,iBAAiB,QAAQ,MAAM,UAAU,KAAK;AAC5D,UAAQ,KAAK,CAAC;AAChB;AAEA,SAAS,YAAY;AACnB,UAAQ,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA,iDAAwP;AACtQ;AAEA,SAAS,WAAW,QAAkB;AACpC,QAAM,SAAS,CAAC,GAAG,MAAM;AACzB,SAAO,OAAO,OAA4B,CAAC,KAAK,OAAO,UAAU;AAC/D,QAAI,MAAM,WAAW,IAAI,GAAG;AAC1B,YAAM,CAAC,KAAK,WAAW,IAAI,MAAM,MAAM,GAAG;AAC1C,YAAM,aAAa,IAAI,QAAQ,OAAO,EAAE;AACxC,UAAI,gBAAgB,QAAW;AAC7B,YAAI,UAAU,IAAI;AAAA,MACpB,OAAO;AACL,cAAM,OAAO,OAAO,QAAQ,CAAC;AAC7B,YAAI,QAAQ,CAAC,KAAK,WAAW,IAAI,GAAG;AAClC,cAAI,UAAU,IAAI;AAClB,iBAAO,OAAO,QAAQ,GAAG,CAAC;AAAA,QAC5B,OAAO;AACL,cAAI,UAAU,IAAI;AAAA,QACpB;AAAA,MACF;AAAA,IACF;AACA,WAAO;AAAA,EACT,GAAG,CAAC,CAAC;AACP;AAEA,SAAS,oBAAoB;AAC3B,QAAM,QAAQ,OAAO,QAAQ,SAAS,KAAK,MAAM,GAAG,EAAE,CAAC,CAAC;AACxD,MAAI,OAAO,MAAM,KAAK,KAAK,QAAQ,IAAI;AACrC,UAAM,IAAI,MAAM,qCAAqC,QAAQ,SAAS,IAAI,IAAI;AAAA,EAChF;AACF;AAEA,SAAS,uBAAuC;AAC9C,MAAI,cAAc,MAAM,GAAG;AACzB,WAAO;AAAA,EACT;AAEA,UAAQ,yDAAyD;AACjE,QAAM,UAAU,UAAU,YAAY,CAAC,UAAU,MAAM,GAAG,EAAE,OAAO,UAAU,CAAC;AAC9E,MAAI,QAAQ,WAAW,KAAK,cAAc,MAAM,GAAG;AACjD,WAAO;AAAA,EACT;AAEA,UAAQ,iEAAiE;AACzE,SAAO;AACT;AAEA,SAAS,cAAc,KAAa;AAClC,MAAI;AACF,UAAM,SAAS,UAAU,KAAK,CAAC,WAAW,GAAG,EAAE,OAAO,SAAS,CAAC;AAChE,WAAO,OAAO,WAAW;AAAA,EAC3B,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAEA,SAAS,oBAAoB,IAAoB;AAC/C,UAAQ,gCAAgC,EAAE,KAAK;AAC/C,QAAM,UAAU;AAAA,IACd,GAAG,QAAQ;AAAA,IACX,cAAc,QAAQ,IAAI,gBAAgB;AAAA,EAC5C;AAEA,QAAM,UAAU,CAAC,WAAW,oBAAoB;AAEhD,QAAM,gBAAgB,UAAU,IAAI,OAAO,SAAS,CAAC,SAAS,IAAI,SAAS;AAAA,IACzE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,KAAK;AAAA,EACP,CAAC;AACD,MAAI,cAAc,WAAW,GAAG;AAC9B,UAAM,IAAI,MAAM,GAAG,EAAE,kBAAkB;AAAA,EACzC;AACF;AAEA,SAAS,mBAAmB;AAC1B,QAAM,YAAY,KAAK,KAAK,aAAa,QAAQ;AACjD,MAAI,WAAW,SAAS,GAAG;AACzB;AAAA,EACF;AAEA,QAAM,UAAU;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,EAAE,KAAK,IAAI;AAEX,gBAAc,WAAW,OAAO;AAClC;AAEA,SAAS,gBAAgB;AACvB,QAAM,UAAU,KAAK,KAAK,aAAa,MAAM;AAC7C,QAAM,cAAc,KAAK,KAAK,aAAa,cAAc;AACzD,MAAI,CAAC,WAAW,OAAO,KAAK,WAAW,WAAW,GAAG;AACnD,iBAAa,aAAa,OAAO;AACjC,YAAQ,uEAAuE;AAAA,EACjF;AACF;AAEA,SAAS,UAAU,IAAoBA,YAAmB;AACxD,MAAI,CAAC,CAAC,SAAS,KAAK,EAAE,SAASA,UAAS,GAAG;AACzC,UAAM,IAAI,MAAM,0BAA0BA,UAAS,sBAAsB;AAAA,EAC3E;AACA,QAAM,YAAY,KAAK,KAAK,aAAa,QAAQ,UAAU;AAC3D,QAAM,MAAM,EAAE,GAAG,QAAQ,KAAK,eAAeA,WAAU;AAEvD,MAAI,CAAC,WAAW,SAAS,GAAG;AAC1B,YAAQ,2DAA2D;AACnE,UAAM,cAAc,UAAU,IAAI,CAAC,OAAO,OAAO,GAAG;AAAA,MAClD,KAAK;AAAA,MACL,OAAO;AAAA,MACP;AAAA,IACF,CAAC;AACD,QAAI,YAAY,WAAW,GAAG;AAC5B,YAAM,IAAI,MAAM,GAAG,EAAE,+BAA+B,YAAY,MAAM,EAAE;AAAA,IAC1E;AAAA,EACF;AAEA,UAAQ,YAAYA,UAAS,kBAAkB,EAAE,eAAe;AAChE,QAAM,QAAQ,UAAU,IAAI,CAAC,OAAO,OAAO,GAAG;AAAA,IAC5C,KAAK;AAAA,IACL,OAAO;AAAA,IACP;AAAA,EACF,CAAC;AACD,MAAI,MAAM,WAAW,GAAG;AACtB,UAAM,IAAI,MAAM,GAAG,EAAE,+BAA+B,MAAM,MAAM,EAAE;AAAA,EACpE;AACF;","names":["transport"]}
1
+ {"version":3,"sources":["../../src/cli/up.ts"],"sourcesContent":["import { spawnSync } from 'node:child_process';\nimport { copyFileSync, existsSync, writeFileSync } from 'node:fs';\nimport path from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nconst dirname = path.dirname(fileURLToPath(import.meta.url));\nconst projectRoot = path.resolve(dirname, '../..');\n\nconst args = process.argv.slice(2);\nconst command = args[0];\n\nif (!command || command === '--help' || command === '-h') {\n printHelp();\n process.exit(0);\n}\n\nif (command !== 'up') {\n console.error(`Unknown command: ${command}`);\n printHelp();\n process.exit(1);\n}\n\nconst flags = parseFlags(args.slice(1));\nconst transport = (flags.transport ?? 'stdio').toLowerCase();\nconst installOnly = Boolean(flags['install-only']);\nconst preferStderr = transport === 'stdio';\nconst logInfo = (...messages: any[]) => (preferStderr ? console.error(...messages) : console.log(...messages));\nconst logWarn = (...messages: any[]) => (preferStderr ? console.error(...messages) : console.warn(...messages));\n\ntry {\n ensureNodeVersion();\n const packageManager = detectPackageManager(preferStderr);\n ensurePnpmConfig();\n installDependencies(packageManager, preferStderr);\n ensureEnvFile();\n\n if (installOnly) {\n logInfo('Dependencies installed. Skipping server launch (--install-only set).');\n process.exit(0);\n }\n\n runServer(packageManager, transport, preferStderr);\n} catch (error) {\n console.error(error instanceof Error ? error.message : error);\n process.exit(1);\n}\n\nfunction printHelp() {\n console.log(`Usage: npx @hol-org/hashnet-mcp up [options]\\n\\nOptions:\\n --transport <stdio|sse> Choose the transport to start (default: stdio)\\n --install-only Install deps and sync .env, then exit\\n -h, --help Show this help message`);\n}\n\nfunction parseFlags(values: string[]) {\n const cloned = [...values];\n return cloned.reduce<Record<string, any>>((acc, entry, index) => {\n if (entry.startsWith('--')) {\n const [key, inlineValue] = entry.split('=');\n const normalized = key.replace(/^--/, '');\n if (inlineValue !== undefined) {\n acc[normalized] = inlineValue;\n } else {\n const next = cloned[index + 1];\n if (next && !next.startsWith('--')) {\n acc[normalized] = next;\n cloned.splice(index + 1, 1);\n } else {\n acc[normalized] = true;\n }\n }\n }\n return acc;\n }, {});\n}\n\nfunction ensureNodeVersion() {\n const major = Number(process.versions.node.split('.')[0]);\n if (Number.isNaN(major) || major < 18) {\n throw new Error(`Node.js 18+ is required (detected ${process.versions.node}).`);\n }\n}\n\nfunction detectPackageManager(preferStderr: boolean): 'pnpm' | 'npm' {\n if (commandExists('pnpm')) {\n return 'pnpm';\n }\n\n logWarn('pnpm not detected. Attempting to enable via corepack...');\n const enabled = spawnSync('corepack', ['enable', 'pnpm'], {\n stdio: preferStderr ? ['ignore', 'pipe', 'inherit'] : 'inherit',\n });\n if (preferStderr && enabled.stdout?.length) {\n process.stderr.write(enabled.stdout);\n }\n if (enabled.status === 0 && commandExists('pnpm')) {\n return 'pnpm';\n }\n\n logWarn('Falling back to npm. Install pnpm globally for faster installs.');\n return 'npm';\n}\n\nfunction commandExists(bin: string) {\n try {\n const result = spawnSync(bin, ['--version'], { stdio: 'ignore' });\n return result.status === 0;\n } catch {\n return false;\n }\n}\n\nfunction installDependencies(pm: 'pnpm' | 'npm', preferStderr: boolean) {\n logInfo(`Installing dependencies with ${pm}...`);\n const baseEnv = {\n ...process.env,\n NODE_OPTIONS: process.env.NODE_OPTIONS ?? '--max-old-space-size=8192',\n };\n\n const npmArgs = ['install', '--legacy-peer-deps'];\n\n const installResult = spawnSync(pm, pm === 'pnpm' ? ['install'] : npmArgs, {\n cwd: projectRoot,\n stdio: preferStderr ? ['ignore', 'pipe', 'inherit'] : 'inherit',\n env: baseEnv,\n });\n if (preferStderr && installResult.stdout?.length) {\n process.stderr.write(installResult.stdout);\n }\n if (installResult.status !== 0) {\n throw new Error(`${pm} install failed.`);\n }\n}\n\nfunction ensurePnpmConfig() {\n const npmrcPath = path.join(projectRoot, '.npmrc');\n if (existsSync(npmrcPath)) {\n return;\n }\n\n const content = [\n 'node-linker=isolated',\n 'shamefully-hoist=false',\n 'strict-peer-dependencies=false',\n 'auto-install-peers=false',\n 'resolution-mode=lowest-direct',\n 'node-options=--max-old-space-size=8192',\n 'child-concurrency=4',\n ].join('\\n');\n\n writeFileSync(npmrcPath, content);\n}\n\nfunction ensureEnvFile() {\n const envPath = path.join(projectRoot, '.env');\n const examplePath = path.join(projectRoot, '.env.example');\n if (!existsSync(envPath) && existsSync(examplePath)) {\n copyFileSync(examplePath, envPath);\n logInfo('Created .env from .env.example. Remember to fill in your credentials.');\n }\n}\n\nfunction runServer(pm: 'pnpm' | 'npm', transport: string, preferStderr: boolean) {\n if (!['stdio', 'sse'].includes(transport)) {\n throw new Error(`Unsupported transport \"${transport}\". Use stdio or sse.`);\n }\n const distEntry = path.join(projectRoot, 'dist', 'index.js');\n const env = { ...process.env, MCP_TRANSPORT: transport };\n\n if (!existsSync(distEntry)) {\n logInfo('dist/index.js not found. Building project before start...');\n const buildResult = spawnSync(pm, ['run', 'build'], {\n cwd: projectRoot,\n stdio: preferStderr ? ['ignore', 'pipe', 'inherit'] : 'inherit',\n env,\n });\n if (preferStderr && buildResult.stdout?.length) {\n process.stderr.write(buildResult.stdout);\n }\n if (buildResult.status !== 0) {\n throw new Error(`${pm} run build exited with code ${buildResult.status}`);\n }\n }\n\n logInfo(`Starting ${transport} transport via ${pm} run start...`);\n const child = spawnSync(pm, ['run', 'start'], {\n cwd: projectRoot,\n stdio: 'inherit',\n env,\n });\n if (child.status !== 0) {\n throw new Error(`${pm} run start exited with code ${child.status}`);\n }\n}\n"],"mappings":"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","names":["preferStderr","transport"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hol-org/hashnet-mcp",
3
- "version": "1.0.8",
3
+ "version": "1.0.9",
4
4
  "description": "FastMCP server exposing Hashgraph Online Registry Broker tooling.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",