Move a page
move_pageMoves or renames a page (another folder, another slug, or both) in one change: its route, its file on template sites (src/pages mirrors the folders, imports follow), every internal link to it in the site's code and CMS items (Link to, a href, the nav and footer), a redirect from the old address when it was published, and the site plan's entry (purpose, notes and SEO move with it). Works on template sites and Vite React sites whose routes are written as literal paths; the home page and pages with a variable part keep their address (collection pages move with update_collection settings.urlFolder). Addresses are lowercase words with dashes, up to 5 folder levels; an address another page, folder or collection uses is refused with address_clash and the reason (a collection's item level, /blog/, belongs to its items unless the collection reserves that slug). dryRun says what would change first. Never move a page by editing routes by hand. Writes unsaved changes the user reviews and saves in Xodia, and the site plan follows in the same change.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"from": "<from>",
"to": "<to>",
"projectId": "<projectId>"
},
"name": "move_page"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Its new address ("/company/about"): another folder, another slug, or both | |
| from | Yes | The page's current address ("/about") | |
| branch | No | Optional branch; default the branch the workspace has open | |
| dryRun | No | Only say what would change (files, links, redirects); writes nothing | |
| redirect | No | Omit: a redirect from the old address only when the page was published (saved before this change); true: always; false: never | |
| projectId | Yes | Project id from list_projects |