← Back to list

kirby-content-migration
by bnomei
CLI-first MCP server for composer-based Kirby CMS projects — inspect blueprints/templates/plugins, interact with a real Kirby runtime, and use a bundled Kirby knowledge base.
⭐ 20🍴 0📅 Jan 20, 2026
SKILL.md
name: kirby-content-migration description: Plans and applies safe Kirby content migrations using runtime content tools, update schemas, and explicit confirmation. Use when users need to rename/move/transform fields, clean up content, or bulk-update pages/files across languages.
Kirby Content Migration
Quick start
- Follow the workflow below for safe, confirm-first migrations.
KB entry points
kirby://kb/scenarios/16-batch-update-contentkirby://kb/scenarios/74-update-blocks-programmaticallykirby://kb/scenarios/34-content-file-cleanup-scriptkirby://kb/scenarios/75-update-file-metadata
Required inputs
- Source and target fields plus transform rules.
- Scope (templates/ids/sections) and batch size.
- Language and draft handling rules.
- Exclusions or derived fields that must not change.
Plan template
- List source field, target field, transform rule, and a before/after example.
- Specify scope (templates/ids), languages, and draft handling.
- Note exclusions (derived fields, computed values, or generated files).
Plan-validate-execute
- Write a
changes.jsonplan with explicit page ids/uuids and new values. - Validate the plan against blueprint and field schemas, plus a sample diff.
- Apply in batches (
confirm=falsepreview, thenconfirm=true).
Verification checklist
- Preview diffs for each field type before writing.
- Confirm language scope and batch boundaries.
- Re-render representative pages after apply.
Common pitfalls
- Writing updates before reading field update schemas.
- Migrating large batches without confirm previews.
Workflow
- Ask for exact transformations, scope (pages/templates/sections), languages, draft handling, and any derived fields that must not be written.
- Call
kirby:kirby_init, then ensure runtime availability withkirby:kirby_runtime_statusandkirby:kirby_runtime_installif needed. - Identify target pages:
- Prefer explicit page ids/uuids from the user.
- Otherwise derive a list using
kirby://rootsand the content directory structure.
- Search the KB with
kirby:kirby_searchfor related playbooks (examples: "batch update content", "update blocks programmatically", "content file cleanup script", "update file metadata"). - Read field storage rules before writing:
kirby://fields/update-schemakirby://field/{type}/update-schemafor each involved field type.
- Read a small sample with
kirby:kirby_read_page_content(orkirby://page/content/{encodedIdOrUuid}) and produce a diff-style preview. - Use
kirby://tool-examplesfor safe, copy-readykirby:kirby_update_page_contentpayloads.
Apply
- Call
kirby:kirby_update_page_contentwithconfirm=falseto preview changes (setpayloadValidatedWithFieldSchemas=true). - Ask for explicit confirmation, then re-run with
confirm=truein small batches. - Stop on first error; summarize what applied vs skipped.
Verify
- Render representative pages with
kirby:kirby_render_page(noCache=true)or re-read content to confirm the final state. - Report changes, remaining risks, and any follow-up manual checks.
Score
Total Score
75/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
✓LICENSE
ライセンスが設定されている
+10
✓説明文
100文字以上の説明がある
+10
○人気
GitHub Stars 100以上
0/15
✓最近の活動
1ヶ月以内に更新
+10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
✓タグ
1つ以上のタグが設定されている
+5
Reviews
💬
Reviews coming soon


