Group switches everywhere, load-more, on-demand re-read; drop CIPP tag scoping - #23
Merged
Conversation
Managing 231 CIPP tools by URL tags turned out to be the wrong knob: you have to know the tag vocabulary up front and the catalog silently hides what you did not name. So all tools load, and *visibility* is what you manage. - Admin and /me now nest tools under server -> category, and every level has switches for the whole set or just its read / write / destructive tools. A single unnamed category stays flat (no redundant header). - Categories come from the server: _meta.group / _meta.toolset first (the MSPStack family tags its toolsets that way — costs no description tokens), else a bracketed description prefix like CIPP's "[Identity > ...]". An explicit group_label still wins. - Long lists page in 25 at a time with "show N more of M" instead of forcing a filter — you can browse what a server offers without knowing its names. - POST /api/catalog/refresh re-reads every upstream on demand, surfaced as "Re-read from servers"; discovery already re-ran on tools/list_changed and after reconnects, but silent surface changes needed a nudge. - userDefault is now a control when adding a server and a per-row toggle in the servers table, not just a preset field. - The CIPP preset drops its tags param: load everything, switch by category. Preflight timeout raised to 45s since 231 tools take a while to enumerate. Release v0.12.0. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Feedback on v0.11.0: URL tag scoping is the wrong knob (you must know the vocabulary up front, and the catalog silently hides whatever you didn't name), the 50-row cap forced a filter to see what a server even offers, and
userDefaultwas only reachable from a preset.What changed
?tags=; preflight timeout is 45s so a 231-tool enumeration finishes.read/write/destructiveswitches and counts, in the admin catalog and on/me. A single unnamed category renders flat (no redundant header)._meta.group/_meta.toolsetfirst — the spec-sanctioned way, no description tokens spent — else a bracketed description prefix ([Identity > Administration > Users], CIPP). An explicitgroup_labelstill wins. (mcp-connectwise-psa is getting the_meta.grouptag in its own release, so its toolsets — tickets/time/companies/configurations/schedule/finance/advanced — become switchable groups.)POST /api/catalog/refreshre-reads every upstream's tools on demand ("Re-read from servers"). Automatic refresh ontools/list_changedand after reconnects was already there; this covers servers that change surface silently.userDefaultis a first-class control: a select in the add-server form and a per-row toggle in the servers table, not just a preset field.Tests
230 passing (3 new for
derivedGroupOf:_metaprecedence, description-prefix fallback, nothing-to-derive). Verified live against the real cwpsa upstream:/api/catalog/refresh→ 39 tools re-read; group + tier switches act on the right sets; "show 14 more of 14" grows 26→40 rows in admin and 25→39 on/me; the add-form select and the row toggle both round-tripuserDefault(opt-in ↔ default on) through a spec upsert that leaves grants and tool settings intact.Release v0.12.0.
🤖 Generated with Claude Code