@bettercms-ai/mcp 0.24.0 → 0.25.0

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.
package/dist/index.js CHANGED
@@ -3299,6 +3299,13 @@ function buildToolDefs(deps) {
3299
3299
  z.object({ slot: z.enum(["current", "staging"]).optional().describe("which release tree to read; defaults to the one this project deploys to") }).shape,
3300
3300
  async (c, a) => ok("Binding report.", await data(c, "GET", `/management/projects/current/binding-report${q({ slot: a.slot })}`))
3301
3301
  ),
3302
+ def(
3303
+ "get_conversion_brief",
3304
+ "Get the brief for making this site's bindings durable",
3305
+ "The per-project brief for making this site's bindings DURABLE \u2014 read it before you touch the templates. Returns what already exists in the CMS: every live page with its route, and every bindable field path with its `label`, `kind`, the value the CMS holds now (`current`) and the copy the repo renders today (`original`, the field's defaultValue) \u2014 plus the exact attributes to declare, and the ordered steps. Call it for any site whose pages were DERIVED at import, and whenever get_next_steps reports `bindings-not-declared`. It REPLACES re-registering a schema: these pages, fields and values exist already, so create_page / add_page_field / create_content_model would build a second schema over the first \u2014 edit values with set_page_content instead. `lane` says how to get the source ('git-connected' = pull_project_source returns a repo; 'archive' = a tarball). The full recipe is section 13 of the bettercms://playbook/schema resource; get_binding_report is the receipt that says you finished.",
3306
+ z.object({}).shape,
3307
+ async (c) => ok("Conversion brief.", await data(c, "GET", `/management/projects/current/conversion-brief`))
3308
+ ),
3302
3309
  def(
3303
3310
  "get_analytics_overview",
3304
3311
  "Get traffic overview",
@@ -4300,6 +4307,13 @@ and only the canvas sees it \u2014 a release scan cannot.
4300
4307
  draft reads
4301
4308
  Presentation tool overlays -> the visual editor canvas, framing your own build
4302
4309
 
4310
+ **Imported site whose pages were DERIVED.** If this project was imported and made editable from
4311
+ its build, the schema and the values already exist \u2014 a page per route, a field per element, and
4312
+ the original copy carried on each field as its \`defaultValue\`. Call \`get_conversion_brief\`
4313
+ first: it lists those pages, their routes, every bindable path with its current and original
4314
+ value, and the attributes to declare. SKIP steps 3 and 4 below and bind the keys it names \u2014
4315
+ registering the schema again builds a second one over the first.
4316
+
4303
4317
  **The steps.**
4304
4318
 
4305
4319
  1. \`pull_project_source\` (or clone the \`github\` remote it returns). Read the SOURCE. Never