@bettercms-ai/mcp 0.72.1 → 0.72.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -76,7 +76,7 @@ names the field accepts.
76
76
  | decorators (span `marks`) | `strong`, `em`, `underline`, `strike-through`, `code`, `highlight` | `b`, `i`, `u`, `s`, `code`, `mark` |
77
77
  | annotations (`markDefs`) | `link` {href, target, className}; `styled` {tag, className, attrs} | `link`/`internalLink`; always |
78
78
  | `listItem` | `bullet`, `number`, `check` | `ul`, `ol`, `checklist` |
79
- | block objects | `bcmsDivider`; `bcmsCode` {code, language}; `bcmsBlock` {schemaKey, schemaLabel, fields}; `table` {rows} | `p`; `pre`; `image`/`embed`/`columns`; `table` |
79
+ | block objects | `bcmsDivider`, `pullQuote` {quote, name, role?, link?}; `keyTakeaways` {title?, points}; `bcmsCode` {code, language}; `bcmsBlock` {schemaKey, schemaLabel, fields}; `table` {rows} | `p`; `ul`; `pre`; `image`/`embed`/`columns`; `table` |
80
80
  | inline objects | `bcmsMention` {label} | always |
81
81
 
82
82
  - **Keys**: every block, span, markDef, row and cell has `_key` matching `^[A-Za-z0-9-]{1,32}$`,
@@ -85,16 +85,22 @@ names the field accepts.
85
85
  block. Every markDef is referenced by at least one span.
86
86
  - **Lists are flat**: a list item is a normal block with `listItem` and `level` (1 = top). Never
87
87
  nest blocks inside a list container. A `check` item carries `checked: true|false`.
88
+ - **Pull quote**: `{_type:"pullQuote", _key, quote, name, role?, link?}`; `quote` and `name` are
89
+ strings, `link` is a URL (or a link object with `href`) the name links to. A `pullQuote` without
90
+ string `quote` and `name` is refused on write. Renders `<figure data-rt="pullquote">`.
91
+ - **Key takeaways**: `{_type:"keyTakeaways", _key, title?, points}`; `points` is an array of plain
92
+ strings, one per bullet. More than 8 points or a title over 40 characters is refused on write,
93
+ by code and path. Renders `<aside data-rt="takeaways">`.
88
94
  - **Tables**: a cell holds blocks in `content`, not a string. `header: true` marks a `<th>` cell;
89
95
  `head: true` puts a row in `<thead>`.
90
96
  - **`styled`** carries a site's own inline markup; `tag` is one of `span`, `small`, `sup`, `sub`,
91
97
  `kbd`, `abbr`, `time`, or a decorator tag (`strong`, `em`, `b`, `i`, `u`, `s`, `mark`, `code`, …)
92
98
  that carries a class. A `link` keeps its class as `className`.
93
99
  - **Top-level `_type`** is one of `block`, `bcmsBlock`, `table`, `bcmsCode`, `bcmsDivider`,
94
- `bcmsMention`. A name outside that list is refused on write, by name and `_key`, because the
95
- block would disappear from the live site. The refusal is **top level only**: a foreign mark
96
- passes and its text renders unmarked; a foreign inline child passes and renders nothing. Check
97
- those yourself.
100
+ `bcmsMention`, `pullQuote`, `keyTakeaways`. A name outside that list is refused on write, by
101
+ name and `_key`, because the block would disappear from the live site. The refusal is **top level
102
+ only**: a foreign mark passes and its text renders unmarked; a foreign inline child passes
103
+ and renders nothing. Check those yourself.
98
104
 
99
105
  A paragraph with a bold word and a link:
100
106
 
@@ -501,7 +501,7 @@ in the tabs above. Rules and refusal codes: [components.md](components.md).
501
501
 
502
502
  Not available today: a tab icon (a tab has a label only) and a
503
503
  "first open tab" setting. Per-column widths: columns are equal, and `gap` is a whole number of
504
- pixels, not a named size. Per-breakpoint sizes are not available; `style.hideOn` (`["mobile"]`, `["tablet","desktop"]`; never all three) hides a block at up to two breakpoints, under 768, 768-1023 and 1024 and up, as `display:none` that keeps it in the HTML.
504
+ pixels, not a named size. Per-breakpoint sizes are not available; `style.hideOn` (`["mobile"]`, `["tablet","desktop"]`) hides a block at those breakpoints, under 768, 768-1023 and 1024 and up, as `display:none` that keeps it in the HTML; all three hides it on the page, and no published page, Markdown twin or search index carries it.
505
505
 
506
506
  ## Checks
507
507
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bettercms-ai/mcp",
3
- "version": "0.72.1",
3
+ "version": "0.72.2",
4
4
  "type": "module",
5
5
  "description": "BetterCMS MCP server — schema, content, forms + components authoring tools over the Management API, authed via OAuth device-code.",
6
6
  "bin": {