@typeroll/mcp-server 0.24.0 → 0.25.1
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/AGENTS.md +60 -13
- package/dist/bundled-content.js +3 -2
- package/dist/index.js +1 -1
- package/dist/server.js +2 -1
- package/dist/tools/pages.js +9 -2
- package/dist/version.js +11 -0
- package/package.json +1 -1
- package/skills/tr-design-review.md +298 -0
- package/skills/tr-redesign-branch.md +109 -38
package/AGENTS.md
CHANGED
|
@@ -106,6 +106,14 @@ maps to one HTTP endpoint; the actual logic runs in the customer's portal
|
|
|
106
106
|
working with blocks — never hardcode block ids or field names, the
|
|
107
107
|
available set is per-site.
|
|
108
108
|
|
|
109
|
+
**The core library is larger than you'd guess (~30+ blocks): `core/image`,
|
|
110
|
+
`core/media_card`, `core/gallery`, `core/hero`, `core/feature_grid`,
|
|
111
|
+
`core/icon_box`, `core/cta`, `core/testimonial`, `core/accordion`, …** Before
|
|
112
|
+
you report a block as "missing" or reach for a `core/html` workaround, call
|
|
113
|
+
`list_block_types` and check — a real build once hand-built every illustration
|
|
114
|
+
in `core/html` and filed a false "no image block" gap because the library was
|
|
115
|
+
never enumerated. Prefer a native block; `core/html` is the last resort.
|
|
116
|
+
|
|
109
117
|
Block-library specifics worth knowing (template_capabilities_version
|
|
110
118
|
0.15.0):
|
|
111
119
|
- **`core/media_card`** — image + text side by side (image left/right,
|
|
@@ -204,7 +212,11 @@ maps to one HTTP endpoint; the actual logic runs in the customer's portal
|
|
|
204
212
|
everything you write through `?version=<branch-id>` lives on the
|
|
205
213
|
branch until you `merge_branch` it back to main. Branches default
|
|
206
214
|
`robots_blocked: true` so a half-finished redesign can't be indexed,
|
|
207
|
-
and deploys land at a stable `{branch}.{project}.pages.dev` URL.
|
|
215
|
+
and deploys land at a stable `{branch}.{project}.pages.dev` URL. That
|
|
216
|
+
branch deploy renders the site's full inherited brand (settings, fonts,
|
|
217
|
+
favicon, header/footer — everything not overridden on the branch), so
|
|
218
|
+
it's a faithful preview of what merging to main will look like, not just
|
|
219
|
+
a content diff — trust it for stakeholder review.
|
|
208
220
|
|
|
209
221
|
- **Deploys.** Customers see live changes only after a deploy. Preview
|
|
210
222
|
always sees drafts. `trigger_deploy` enqueues; `get_deploy_status`
|
|
@@ -216,6 +228,16 @@ maps to one HTTP endpoint; the actual logic runs in the customer's portal
|
|
|
216
228
|
- `preview_base` — the portal preview origin (for token URLs)
|
|
217
229
|
Use these in answers to "what's the URL?" — never invent.
|
|
218
230
|
|
|
231
|
+
- **Share STABLE preview URLs, never throwaway ones.** When you give the
|
|
232
|
+
user a link they'll open more than once (a branch preview, a redesign to
|
|
233
|
+
review), give the **stable branch alias** `https://{branch}.{project}.pages.dev`
|
|
234
|
+
— it always serves that branch's latest deploy, so the link survives every
|
|
235
|
+
re-deploy. The immutable per-deploy hash URL (`{hash}.{project}.pages.dev`,
|
|
236
|
+
a new hash each deploy) and an expiring `get_preview_link` token are for
|
|
237
|
+
your OWN one-off checks — handing them to the user means their bookmark
|
|
238
|
+
dies on the next deploy. Default: user will look more than once → stable
|
|
239
|
+
alias.
|
|
240
|
+
|
|
219
241
|
## Discovering this site
|
|
220
242
|
|
|
221
243
|
Don't hardcode assumptions about what's here. Every fact about the site
|
|
@@ -579,18 +601,43 @@ After any non-trivial change, call `get_preview_link` and ask the user
|
|
|
579
601
|
(or your own browser tool) to confirm the result before moving on. One
|
|
580
602
|
HTTP call vs. shipping a broken redesign — always worth it.
|
|
581
603
|
|
|
582
|
-
**
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
604
|
+
**To UNDERSTAND a page, render it to one HTML file — don't reconstruct it
|
|
605
|
+
from the block tree in your head.** A page is assembled at render time from the
|
|
606
|
+
block tree + each block type's template/styles + the header/footer partials +
|
|
607
|
+
the settings CSS variables + the global shell + page-scoped styles. `get_page_blocks`
|
|
608
|
+
gives you the editable *structure*; `get_page_preview` gives you the rendered
|
|
609
|
+
*result* — the WHOLE page as one self-contained HTML document (header + body +
|
|
610
|
+
footer, with all of that CSS inlined), exactly as deployed. Read that when you
|
|
611
|
+
need to see what the page actually looks like or why its CSS cascades the way it
|
|
612
|
+
does (write it to a local file + serve+screenshot it to review visually). Pass
|
|
613
|
+
`annotate:true` to tag every element with `data-block-id` + `data-block-type`,
|
|
614
|
+
so you can map a spot in the rendered HTML straight back to the block to edit:
|
|
615
|
+
read preview to understand → find the element → its `data-block-id` is the block
|
|
616
|
+
to mutate → edit → re-render to verify.
|
|
617
|
+
|
|
618
|
+
**A design review is a multi-DIMENSION, MEASURED pass — not "copy present + no
|
|
619
|
+
overflow + images 200".** If you have a browser tool, walk every dimension (the
|
|
620
|
+
`tr-redesign-branch` skill has the full checklist with how-to):
|
|
621
|
+
- **Responsive** — width ladder (≈390/768/1024/1440/1920px) + a sweep just below/
|
|
622
|
+
above the page's own @media breakpoints; `scrollWidth <= clientWidth` at every
|
|
623
|
+
width (bugs hide between the two extremes); + 200% zoom.
|
|
624
|
+
- **Visual & brand** — logo FULLY visible (screenshot the header IN CONTEXT, never
|
|
625
|
+
the logo element in isolation — that hides clipping) + brand-compliant; no
|
|
626
|
+
divider seams / clipped glows / cropped faces / fade-cutoffs; typography +
|
|
627
|
+
palette + spacing consistent.
|
|
628
|
+
- **Accessibility (measure)** — actual contrast ratios (AA 4.5:1 / 3:1), alt on
|
|
629
|
+
every image, one `<h1>` + no skipped levels, visible focus, labels on inputs,
|
|
630
|
+
≥44px touch targets, landmarks, reduced-motion.
|
|
631
|
+
- **Functional** — form actually works (action + token + honeypot, long values
|
|
632
|
+
don't break), every link/`#anchor` resolves, ZERO console errors.
|
|
633
|
+
- **Content** — no unrendered `{{…}}`, no placeholder, copy matches the live page.
|
|
634
|
+
- **Findable** — title + meta description + og:* + canonical + favicon + lang +
|
|
635
|
+
noindex-on-branch.
|
|
636
|
+
- **Fast** — images sized right + modern format + width/height set + lazy/eager.
|
|
637
|
+
- **Cross-browser** — re-check another engine if possible, or flag risky props
|
|
638
|
+
(backdrop-filter, -webkit- masks, 100vh→100svh, sticky-in-overflow).
|
|
639
|
+
"Looks good in Chrome at 1440" ≠ "works for everyone, everywhere" — never report a
|
|
640
|
+
design as perfect/approved off a glance or a partial pass.
|
|
594
641
|
|
|
595
642
|
Preview shows DB state (drafts included). Live (`get_site → urls.production`)
|
|
596
643
|
shows the most recent deploy. Branch deploys live at
|