@insforge/mcp@latest is 1.2.11 — the last build before the Redis removal. The deployed service runs 1.2.12. So the published package and the running service are a full architecture apart, and nothing in the Redis-free lineage has ever been published.
Measured
npm view @insforge/mcp dist-tags latest 1.2.11
1.2.11 package.json depends on ioredis
deployed slug /health version 1.2.12 (Redis removed, sessions in-process)
npm i @insforge/mcp@1.2.11 && ./node_modules/.bin/insforge-mcp-server
-> [Redis] Connection error x4
-> Failed to start server: MaxRetriesPerRequestError
-> no listener
Who this affects
Narrower than it first looks — Redis is confined to src/http/:
| bin |
target |
affected |
insforge-mcp-server |
dist/http-server.js |
yes — needs a Redis that the current architecture no longer uses |
mcp, insforge-mcp |
dist/index.js (stdio) |
no — the stdio path imports nothing from src/http/ |
So the ordinary npm i -g @insforge/mcp + stdio user is fine. A self-hoster running the HTTP server from npm gets a hard startup failure. It fails loudly (Failed to start server + exit), which makes it discoverable, but only at the moment someone needs it to work.
Not a cutover blocker — the hosted deployment builds from git and its rollback is a revert on master, not an npm install.
Ask
Publish the current lineage so the package matches the service. Worth pairing with the publish-time gate discussed alongside this. Correcting my own earlier wording here: I asked for "assert both bins serve". That is wrong — only insforge-mcp-server binds a port; dist/index.js is stdio and never listens, so it needs a weaker but equivalent assertion (the bundle loaded and main() ran). The two-bins design in the comments is the version to implement, and the gate should land before the 1.2.12 publish rather than after it.
Context: found while checking whether npm was a viable rollback path for the Manufact environment. It isn't, and that turned out to be the smaller half.
@insforge/mcp@latestis 1.2.11 — the last build before the Redis removal. The deployed service runs 1.2.12. So the published package and the running service are a full architecture apart, and nothing in the Redis-free lineage has ever been published.Measured
Who this affects
Narrower than it first looks — Redis is confined to
src/http/:insforge-mcp-serverdist/http-server.jsmcp,insforge-mcpdist/index.js(stdio)src/http/So the ordinary
npm i -g @insforge/mcp+ stdio user is fine. A self-hoster running the HTTP server from npm gets a hard startup failure. It fails loudly (Failed to start server+ exit), which makes it discoverable, but only at the moment someone needs it to work.Not a cutover blocker — the hosted deployment builds from git and its rollback is a revert on master, not an npm install.
Ask
Publish the current lineage so the package matches the service. Worth pairing with the publish-time gate discussed alongside this. Correcting my own earlier wording here: I asked for "assert both bins serve". That is wrong — only
insforge-mcp-serverbinds a port;dist/index.jsis stdio and never listens, so it needs a weaker but equivalent assertion (the bundle loaded andmain()ran). The two-bins design in the comments is the version to implement, and the gate should land before the 1.2.12 publish rather than after it.Context: found while checking whether npm was a viable rollback path for the Manufact environment. It isn't, and that turned out to be the smaller half.