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
What does this PR do? A clear and concise description with your runway ticket url.
Adds playbook-mcp, a hosted MCP-UI render server that turns Playbook kits into ui:// HTML for LibreChat (and other MCP-UI hosts) via server-side pb_rails + dist/ai validation.
Consumers do not need a Playbook (or Highcharts) install. CSS/JS/fonts are self-served from /assets. Icons are inlined as SVG from @powerhome/playbook-icons. Charts ship as one self-contained IIFE that bundles React + Highcharts at image build time.
MCP tools
list_kits / get_kit_schema
render_kit / render_layout / render_chart
Server instructions document tool-usage mechanics (schema-first, layout vs kit vs chart, snake_case kits / camelCase props, Highcharts options keys verbatim, no UI Actions) so hosts/agents get them on connect
The reason will be displayed to describe this comment to others. Learn more.
The new playbook-mcp service is generally well structured (fail-closed boot, allowlisting, sanitization), but two high-severity issues should be fixed before production traffic: /assets path traversal past the intended allowlist, and a process-wide shared Renderer/ActionView context under Puma’s default multi-thread pool.
nidaqg
added
milano
20 MAX - Deploy this PR to a review environment via Milano
and removed
milano
20 MAX - Deploy this PR to a review environment via Milano
labels
Aug 11, 2026
nidaqg
added
milano
20 MAX - Deploy this PR to a review environment via Milano
and removed
milano
20 MAX - Deploy this PR to a review environment via Milano
labels
Aug 11, 2026
The reason will be displayed to describe this comment to others. Learn more.
Blocking reliability issues for production: in-memory /ui HTML storage cannot work with the default 2 replicas, and IP allowlisting does not exempt browser-loaded /ui and /assets the way the other gates do.
nidaqg
added
milano
20 MAX - Deploy this PR to a review environment via Milano
and removed
milano
20 MAX - Deploy this PR to a review environment via Milano
labels
Aug 12, 2026
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 24 hours if no further activity occurs.
If this change is desirable, please accelerate completing it. If it is not, please close the PR. If you're blocked on something, please ensure there's a reference to this PR in a story on your team's board so the team will follow up, and consider closing the PR for now.
Please do not artificially extend the deadline with a dummy comment. If necessary, provide a status update, such as "this change is being actively tested".
Thank you for your contributions and your collaboration in reducing WIP and cycle time.
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
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.
What does this PR do? A clear and concise description with your runway ticket url.
Adds playbook-mcp, a hosted MCP-UI render server that turns Playbook kits into ui:// HTML for LibreChat (and other MCP-UI hosts) via server-side pb_rails + dist/ai validation.
Consumers do not need a Playbook (or Highcharts) install. CSS/JS/fonts are self-served from /assets. Icons are inlined as SVG from @powerhome/playbook-icons. Charts ship as one self-contained IIFE that bundles React + Highcharts at image build time.
MCP tools
Deploy / review
Security
LibreChat / Phase 0 (verified with DW feedback)
Screenshots: Screenshots to visualize your addition/change
How to test? Steps to confirm the desired behavior:
Checklist:
enhancement,bug,improvement,new kit,deprecated, orbreaking. See Changelog & Labels for details.milanolabel to show I'm ready for a review.minor,major, orpatchlabel for release.inactive RClabel if not an active RC.