Create a page
create_pageAdds a page the way the Pages panel does, on a Xodia template site: a page file that mirrors its folders (src/pages/services/web/Design.tsx) and its route in src/routes.tsx at //, inside the site's layout, with a starter section (data-section="page-header": the title tag, the h1 and a line to replace). parent is the folder it goes in; folderPage true makes the page at that folder's own address, with its file inside the folder (src/pages/what-we-do/WhatWeDo.tsx) and a starter list of links to the folder's pages to edit. 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). Refused with plan_limit past the plan's page limit, and with add_unsupported on sites whose pages are set up in code (add the route by hand there, skill create-page). Never write the route or page file yourself on a template site. A page per collection item is never a page: create_collection makes the collection page. 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": {
"title": "<title>",
"projectId": "<projectId>"
},
"name": "create_page"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| slug | No | Optional: the last part of the address (lowercase, dashes); default from the title | |
| title | Yes | The page's name: its h1, its title tag and its label in the Pages panel | |
| branch | No | Optional branch; default the branch the workspace has open | |
| parent | No | The folder the page goes in ("services" or "services/web", up to 5 levels); omit for the site root. Missing folders are made by the address | |
| projectId | Yes | Project id from list_projects | |
| folderPage | No | true: the page at the parent folder's own address (/services), its folder page. slug is ignored |