@unified-product-graph/mcp-server 0.6.1 → 0.6.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/CHANGELOG.md +12 -0
- package/dist/index.js +10 -2
- package/dist/index.js.map +1 -1
- package/dist/tools-manifest.json +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to `@unified-product-graph/mcp-server` are documented in this file. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
|
4
4
|
|
|
5
|
+
## [0.6.2] - 2026-05-26
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
- **Server failed to start when launched through a symlinked path** — which broke the primary install path `claude mcp add upg -- npx @unified-product-graph/mcp-server`, npx `.bin` shims, global installs, and macOS `/tmp`. The entrypoint guard compared `process.argv[1]` (literal invocation path) to `import.meta.url` (symlink-resolved by the ESM loader) as raw strings; when they diverged the server exited 0 with no output, which MCP clients report as "Failed to connect." The guard now compares realpaths. Added a regression test that spawns the built binary through a symlink.
|
|
10
|
+
|
|
11
|
+
## [0.6.1] - 2026-05-26
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
|
|
15
|
+
- Metadata only: `UPG_VERSION` aligned to 0.6.1 and `repository` repointed to the public `unified-product-graph/tools` mirror. No runtime changes.
|
|
16
|
+
|
|
5
17
|
## [0.6.0] - 2026-05-22
|
|
6
18
|
|
|
7
19
|
Aligned with `@unified-product-graph/core@0.6.0` launch train.
|
package/dist/index.js
CHANGED
|
@@ -50098,6 +50098,7 @@ function createServer(store) {
|
|
|
50098
50098
|
// src/index.ts
|
|
50099
50099
|
import { nanoid } from "nanoid";
|
|
50100
50100
|
import { fileURLToPath as fileURLToPath2 } from "url";
|
|
50101
|
+
import { realpathSync as realpathSync2 } from "fs";
|
|
50101
50102
|
async function discoverUPGFile(explicitFile) {
|
|
50102
50103
|
if (explicitFile) return path6.resolve(explicitFile);
|
|
50103
50104
|
const cwd = process.cwd();
|
|
@@ -50270,8 +50271,15 @@ ${lines.join("\n")}
|
|
|
50270
50271
|
process.on("SIGINT", shutdown);
|
|
50271
50272
|
process.on("SIGTERM", shutdown);
|
|
50272
50273
|
}
|
|
50273
|
-
|
|
50274
|
-
if (
|
|
50274
|
+
function isEntrypoint() {
|
|
50275
|
+
if (!process.argv[1]) return false;
|
|
50276
|
+
try {
|
|
50277
|
+
return realpathSync2(process.argv[1]) === realpathSync2(fileURLToPath2(import.meta.url));
|
|
50278
|
+
} catch {
|
|
50279
|
+
return false;
|
|
50280
|
+
}
|
|
50281
|
+
}
|
|
50282
|
+
if (isEntrypoint()) {
|
|
50275
50283
|
runMcpServer().catch((err) => {
|
|
50276
50284
|
process.stderr.write(`Fatal: ${err}
|
|
50277
50285
|
`);
|