server@0.84.0
Minor Changes
-
da79525: Redesign the Plugins pages and add MCP server readiness surfacing:
- Marketplace card now reflects real setup state: an uninitialized/warning
variant (skeleton repo link, "Not published" badge, "Publish now"/"Add
collaborators" CTA) shown until the marketplace repo exists and has at
least one collaborator who has accepted their GitHub invite, distinct from
the connected/published state. - Install flow reworked: a single "Install" dropdown (GitHub installation via
marketplace, preferred, or direct zip download) replaces the old split
button, on both the Plugins index and detail pages, and no longer disables
zip download just because the marketplace isn't set up yet. - Default plugin gets special treatment (badge, description, auto-heal on
read for projects that predate the feature) and plugin membership no
longer N+1-queries its servers. - New collapsible readiness bar on the MCP server ("x" route) sidebar,
summarizing Server URL / Authentication / Source / Included in Plugin
status with links to fix each. - Server:
GetPublishStatusnow reports whether the marketplace repo has a
real (accepted, not just invited) collaborator, cached briefly to avoid
hitting GitHub's API on every dashboard poll, and invalidated immediately
after publishing adds one.
- Marketplace card now reflects real setup state: an uninitialized/warning
-
48a97e2: Implement remote MCP server header management API
Patch Changes
- da79525: Attach MCP servers to the Default plugin when they're enabled, not just when their first endpoint is created — remote MCP servers are created disabled with a pre-staged endpoint, so they previously never auto-attached and manually adding them failed with "mcp server is disabled or has no published endpoint". Also fixes creating a second endpoint for an already-attached server (previously failed on a duplicate-attach conflict), hides endpointless servers from the plugin's add-server picker, and asks for confirmation before removing a server's last address.
- ae3fc4b: The billing page's Model breakdown now splits into "Risk Policy Analysis Model" — the platform's own risk-policy scanning inference, the metered unit of the TUM contracts — and "Completion Model" for user-facing completion surfaces (playground, elements, MCP chat, Slack). The "Sessions & messages" section and the risk-findings chart stacking are removed: billing meters the act of scanning observed traffic, not the customer's message population. Risk-analysis inference is attributed to the scanned user, so the User, Role, and Division breakdowns now report whose traffic was analyzed.
- b06aa04: The enrollment page no longer shows 0 tokens and a stale last activity for employees whose telemetry rows split across identity keys: usage rows carrying a user id but no email now merge into the employee's email-keyed summary, linked AI accounts attach to that merged summary, and role breakdowns resolve those users instead of bucketing them as Unassigned. The employees and agents tables also render their pagination footer flush against the table instead of floating below a gap.
- e3cf1d1: The hooks setup dialog's Claude Code instructions now install from your org's published plugin marketplace (with copyable commands and managed-settings snippets), instead of a public repository marketplace that carried no credentials. Publish status now reports the observability plugin slugs so install instructions always show the exact plugin name.
- 020dfdf: Avoid rebuilding every platform tool descriptor for each tool returned by
toolsets.list, significantly reducing latency for projects with large toolsets.