decocms-home-widgets

Build responsive deco CMS home widgets as resizable MCP-App tiles.

9|4|Updated Nov 5, 2025
One-click install
npx skills add https://github.com/decocms/mcps --skill decocms-home-widgets-decocms
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: decocms-home-widgets
Source: https://github.com/decocms/mcps/tree/main/.claude/skills/decocms-home-widgets
Command: npx skills add https://github.com/decocms/mcps --skill decocms-home-widgets-decocms

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Home widgets on the deco CMS home screen are clipped, fail to scroll, or break layout when users resize tiles, because the home controls tile size and the MCP cannot declare a default size. ## Core Features & Use Cases - Responsive tile layout rules: Enforces golden rules such as a root that fills the tile (flex h-full min-h-0 flex-col), internal scroll regions (flex-1 min-h-0 overflow-y-auto), and ResizeObserver-based breakpoints instead of media queries. - Observed size guidance: Documents the tile grid (up to 4×5, roughly 316px per column and 100px per row) so widgets adapt across 1×2 through 4×5 sizes. - Widget registration workflow: Walks through the five wiring points — constants, tool _meta.ui.resourceUri, resource, vite entry, and HTML/React component — with a shipping checklist. - Use Case: When building a new MCP-App widget whose list content gets clipped at small tile sizes, apply the internal scroll and ResizeObserver patterns so it renders correctly at every grid size. ## Quick Start Ask the assistant to create a new deco CMS home widget for your MCP that fills its tile, scrolls internally, and adapts its layout to tile width.

Frequently Asked Questions about decocms-home-widgets

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a responsive home widget for deco CMS?▼

Make the widget root fill the tile with flex h-full min-h-0 flex-col, put long lists in a flex-1 min-h-0 overflow-y-auto region, and switch layouts based on tile width measured with a ResizeObserver. Register it via a tool _meta.ui.resourceUri, a resource, a vite entry, and an HTML file.

How do I register a new MCP-App widget resource?▼

Wire five points: a resource URI constant, a tool returning data with _meta.ui.resourceUri and readOnlyHint annotation, a createMcpAppResource entry added to server resources, a vite build entry in MCP_APP_ENTRIES, and an HTML file loading the React component.

Why is my widget content clipped with no scrollbar?▼

The home tile uses overflow-hidden, so content taller than the tile is clipped unless you add an internal scroll region. Use flex-1 min-h-0 overflow-y-auto on the list container; without min-h-0 the flex child refuses to shrink and scrolling never engages.

Can I use media queries or Tailwind breakpoints inside a home tile?▼

No, media queries and Tailwind responsive prefixes react to the viewport, not the tile. Measure the tile element with a ResizeObserver hook, or use Tailwind v4 container queries by marking the root as a container.

What sizes can a deco home tile be resized to?▼

Users resize tiles on a grid up to 4 columns by 5 rows, roughly 316px per column and 100px per row, from about 282×166px minimum up to 1256×492px. There is no API to declare a default size, so design for the full range.