@typeroll/mcp-server 0.45.43 → 0.45.45
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 +155 -43
- package/README.md +87 -23
- package/dist/bundled-content.js +9 -9
- package/dist/client.js +15 -1
- package/dist/compact-tools.js +1 -1
- package/dist/server.js +49 -2
- package/dist/tools/access.js +75 -0
- package/dist/tools/content-types.js +2 -2
- package/dist/tools/domain.js +33 -0
- package/dist/tools/email.js +69 -0
- package/dist/tools/extensions.js +131 -0
- package/dist/tools/forms.js +34 -4
- package/dist/tools/helpers.js +7 -0
- package/dist/tools/media.js +12 -0
- package/dist/tools/page-blocks.js +5 -33
- package/dist/tools/pages.js +11 -4
- package/dist/tools/partials.js +1 -1
- package/dist/tools/reusable-blocks.js +1 -1
- package/dist/tools/settings.js +20 -10
- package/dist/tools/sites.js +25 -3
- package/dist/tools/versions.js +21 -3
- package/dist/tools/workflows.js +61 -0
- package/dist/tools/working-copy.js +67 -3
- package/dist/version.js +1 -1
- package/package.json +1 -1
- package/skills/tr-content-write.md +3 -3
- package/skills/tr-forms.md +36 -8
- package/skills/tr-import-url.md +2 -2
- package/skills/tr-migrate-wp.md +9 -5
- package/skills/tr-new-site.md +5 -4
- package/skills/tr-redesign-branch.md +15 -1
- package/skills/tr-seo.md +14 -0
package/skills/tr-migrate-wp.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: tr-migrate-wp
|
|
3
|
-
description: Use when the user asks to migrate a WordPress site to Typeroll, mentions wp-json, or names a WP source URL. Walks the WP REST API, preserves cleaned HTML and shared references, transfers media, sets redirects, and leaves everything as drafts for human review.
|
|
3
|
+
description: Use when the user asks to migrate a WordPress site to Typeroll, mentions wp-json, or names a WP source URL. Walks the WP REST API, preserves cleaned HTML and shared references, transfers media, sets redirects, and leaves everything as drafts for human review. Typeroll does not convert HTML into blocks.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Migrate from WordPress to Typeroll
|
|
@@ -19,9 +19,13 @@ Its shared evidence record is required for visual acceptance.
|
|
|
19
19
|
> `trigger_deploy`. Preview your drafts with `include_working_copy: true`.
|
|
20
20
|
|
|
21
21
|
|
|
22
|
-
The platform's
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
The platform's migration workflow is the "managed" path for customers who
|
|
23
|
+
want one-click. It runs on the server and is also available to you:
|
|
24
|
+
`start_workflow type="migration" config={ wp_url }` on an existing site, or
|
|
25
|
+
`create_site_and_migrate` (organization key) for a new one; poll `get_workflow`
|
|
26
|
+
and approve its review gate only with the user's consent. This skill is the
|
|
27
|
+
"power-user" path: you do it locally, mix data sources freely, and the user
|
|
28
|
+
reviews each step in their terminal.
|
|
25
29
|
|
|
26
30
|
## Preconditions
|
|
27
31
|
|
|
@@ -145,7 +149,7 @@ c. Migrate referenced images with `upload_media_from_url`. The customer's
|
|
|
145
149
|
media reference only after verification. Stop and report a failed required
|
|
146
150
|
transfer; do not silently hotlink the WordPress source.
|
|
147
151
|
|
|
148
|
-
The managed importer stores cleaned HTML
|
|
152
|
+
The managed importer stores cleaned HTML. Typeroll does not convert HTML into blocks, and `set_page_mode` never rewrites HTML. Pages move to blocks only when someone rebuilds them with blocks.
|
|
149
153
|
|
|
150
154
|
d. Preserve exact text, headings, anchors, links, media and semantic structure with native blocks first. Read the
|
|
151
155
|
available block types and map headings, prose, images, buttons and layout
|
package/skills/tr-new-site.md
CHANGED
|
@@ -32,7 +32,9 @@ wrapper. Load only the relevant guide section and recipe. Discover site apps wit
|
|
|
32
32
|
read_app_documentation when needed; do not bundle private app guides locally.
|
|
33
33
|
|
|
34
34
|
No Site yet? Use hosted MCP with an Organization key and create_site, or create it
|
|
35
|
-
in the portal.
|
|
35
|
+
in the portal. To start from an AI site plan instead of a blank Site, use
|
|
36
|
+
create_site_and_plan, poll get_workflow and approve its structure review only
|
|
37
|
+
with the user's consent. Read back its ID before editing. Use one explicit Site/Version for
|
|
36
38
|
related operations. Larger changes to an existing site should use a branch.
|
|
37
39
|
|
|
38
40
|
Before importing content or a media library, require get_import_readiness to pass.
|
|
@@ -359,9 +361,8 @@ For migrated legacy pages or a hand-crafted one-off, `content_mode:
|
|
|
359
361
|
negative-margin escape (`margin-left: calc(50% - 50vw); width: 100vw`)
|
|
360
362
|
— never combine with `overflow-x: clip` on a wrapper.
|
|
361
363
|
- `set_page_mode` flips a page between modes and does not convert HTML.
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
preview in the page editor.
|
|
364
|
+
Typeroll has no HTML-to-blocks conversion: to move a page to blocks,
|
|
365
|
+
build its content with blocks.
|
|
365
366
|
|
|
366
367
|
## Pitfalls
|
|
367
368
|
|
|
@@ -245,6 +245,15 @@ compiled output or merge. Wait for an explicit "looks good, ship it."
|
|
|
245
245
|
|
|
246
246
|
### 7. Merge + deploy
|
|
247
247
|
|
|
248
|
+
Before asking for sign-off, summarise exactly what will land:
|
|
249
|
+
|
|
250
|
+
```
|
|
251
|
+
diff_version version_id="<branch>" # added / modified / deleted per collection
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
Then, once approved (creating and merging branches need site admin
|
|
255
|
+
permission):
|
|
256
|
+
|
|
248
257
|
```
|
|
249
258
|
merge_branch version_id="<branch>" # branch's diffs land on main
|
|
250
259
|
trigger_deploy
|
|
@@ -274,7 +283,12 @@ disk cost is tiny.)
|
|
|
274
283
|
the DB, reflects edits on reload); deploy only for the compiled static
|
|
275
284
|
output or merge (steps 6–7).
|
|
276
285
|
- **Auto-merge.** Don't `merge_branch` without explicit user sign-off.
|
|
277
|
-
Once merged, the only undo is another branch + reverse edits
|
|
286
|
+
Once merged, the only undo is another branch + reverse edits (or
|
|
287
|
+
restoring individual saved states with `restore_page_revision` /
|
|
288
|
+
`restore_partial_revision` on main).
|
|
289
|
+
- **Starting over.** To abandon a direction but keep the branch and its
|
|
290
|
+
address, `reset_version version_id="<branch>"` discards every change on it
|
|
291
|
+
(check `diff_version` and ask first); `delete_branch` removes it entirely.
|
|
278
292
|
- **Header rewrites that drop the brand block.** Even when the
|
|
279
293
|
redesign is dramatic, preserve the brand mark + the nav skeleton
|
|
280
294
|
unless the user said to redo them.
|
package/skills/tr-seo.md
CHANGED
|
@@ -97,11 +97,25 @@ batch_update_pages updates=[
|
|
|
97
97
|
OG image dimensions: 1200×630px ideal. The platform doesn't resize —
|
|
98
98
|
use a correctly-sized source image.
|
|
99
99
|
|
|
100
|
+
For pages without their own image, set a site-wide fallback and the X/Twitter
|
|
101
|
+
handle (admin permission, as in the portal Settings form):
|
|
102
|
+
|
|
103
|
+
```
|
|
104
|
+
update_site_settings default_og_image="<cdn_url>" twitter_handle="@acmestudio"
|
|
105
|
+
```
|
|
106
|
+
|
|
100
107
|
### 5. Add structured data (JSON-LD)
|
|
101
108
|
|
|
102
109
|
Typeroll auto-generates Article and Page schema, but you can override or
|
|
103
110
|
extend with custom JSON-LD per page. Example: LocalBusiness on the homepage.
|
|
104
111
|
|
|
112
|
+
The site-wide Organization schema comes from settings — set it once instead of
|
|
113
|
+
repeating it on every page (`null` clears it):
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
update_site_settings organization={"name":"Acme Studio","logo":"<cdn_url>","same_as":["https://www.linkedin.com/company/acme"]}
|
|
117
|
+
```
|
|
118
|
+
|
|
105
119
|
```
|
|
106
120
|
update_page page_id="home" patch={
|
|
107
121
|
"json_ld": "{\"@context\":\"https://schema.org\",\"@type\":\"LocalBusiness\",\"name\":\"Acme Studio\",\"url\":\"https://acme.se\",\"telephone\":\"+46812345\",\"address\":{\"@type\":\"PostalAddress\",\"streetAddress\":\"Drottninggatan 1\",\"addressLocality\":\"Stockholm\",\"postalCode\":\"111 51\",\"addressCountry\":\"SE\"}}"
|