You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The MCP server hardcodes serverInfo.version: "1.0.0" in its initialize response (plugins/stuffbucket/skills/skill-router/scripts/mcp-server.js:436), unrelated to the real package version (currently 0.2.18). A client cannot read the true running version to reason about upgrades.
Update detection is surfaced only as a side effect of list_skills — a text banner in the grouped/empty path and a synthetic update-skills entry prepended to JSON results (mcp-server.js:262-308). There is no MCP tool a client can call to explicitly check for updates. The only tools exposed are list_skills and get_skill (mcp-server.js:49-82).
Proposed
Read the real version from the package package.json at startup and use it for serverInfo.version (and as the "current" version in detection).
Add an explicit MCP tool — e.g. check_updates — returning a structured status that mirrors maximal's UpdateStatus shape: { current, latest, update_available, checked_at, last_error, enabled }
(see maximal src/lib/config/settings-types.tsUpdateStatusResponse and src/lib/update/update-check.ts:55-74). Notify-only — never auto-installs.
Keep the passive list_skills banner as a convenience, but drive it from the same detector so there is one source of truth.
Acceptance criteria
initialize reports the real package version, not 1.0.0.
A client can call check_updates and receive { current, latest, update_available, ... }without having to call list_skills.
The banner and the tool return consistent results (same detector).
Depends on
The distribution-correct detector (the npm/registry-based "latest" source). This tool is the surface; that issue is the engine.
Problem
serverInfo.version: "1.0.0"in itsinitializeresponse (plugins/stuffbucket/skills/skill-router/scripts/mcp-server.js:436), unrelated to the real package version (currently0.2.18). A client cannot read the true running version to reason about upgrades.list_skills— a text banner in the grouped/empty path and a syntheticupdate-skillsentry prepended to JSON results (mcp-server.js:262-308). There is no MCP tool a client can call to explicitly check for updates. The only tools exposed arelist_skillsandget_skill(mcp-server.js:49-82).Proposed
package.jsonat startup and use it forserverInfo.version(and as the "current" version in detection).check_updates— returning a structured status that mirrors maximal'sUpdateStatusshape:{ current, latest, update_available, checked_at, last_error, enabled }(see maximal
src/lib/config/settings-types.tsUpdateStatusResponseandsrc/lib/update/update-check.ts:55-74). Notify-only — never auto-installs.list_skillsbanner as a convenience, but drive it from the same detector so there is one source of truth.Acceptance criteria
initializereports the real package version, not1.0.0.check_updatesand receive{ current, latest, update_available, ... }without having to calllist_skills.Depends on
References
plugins/stuffbucket/skills/skill-router/scripts/mcp-server.js:436(hardcoded version),:262-308(list_skills banner),:49-82(tool list)UpdateStatusResponse(src/lib/config/settings-types.ts:77-86),src/lib/update/update-check.ts:55-74