Get site plan
get_site_planReads the site plan (.xodia/plan.json) on a branch: a short summary (title, pages by status, the sitemap tree with each page's status and section count, the shared nav and footer, motion, inspiration sites still to study, pages changed since they were wireframed or built, open plan requests, and with sinceEtag what changed since that read), then the site as it is now (every page with its file, status and top-level sections by data-section id, the nav and footer links, the theme tokens) and how the plan compares with it (in sync, changes on the site the plan doesn't have yet, items waiting for the owner's review, plan changes not built yet), then the whole plan as JSON and its etag for update_site_plan, then Xodia's section library (types and their layouts) and page templates: short by default, every layout's build note with catalogue "full". Page statuses come from the site: a page is built when its route exists with real sections, wireframed while a section is still marked data-placeholder, planned when it isn't on the site. Reads only, writes nothing: sync_site_plan applies the changes. Says so when there is no plan yet (sync_site_plan makes one from the site), and lists the problems when the file isn't valid. Skills site-plan and section-layouts say how to fill and follow it.
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": {
"projectId": "<projectId>"
},
"name": "get_site_plan"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| types | No | With catalogue "full": only these section types (like ["hero", "pricing"]); unknown names are listed as such | |
| branch | No | Default: the branch the workspace has open. Pass the request's branch when a request names one. | |
| catalogue | No | The section library and page templates under the plan. "short" (default): each type's layout ids and each template's stack. "full": every layout's one-line build note, each template's purpose and the motion intents; pass types to list only some. "none": leave them out (when you already have them). | |
| projectId | Yes | Project id from list_projects | |
| sinceEtag | No | The etag from your last get_site_plan or update_site_plan. When the plan changed since, the summary lists the pages added, removed and changed, and whether the nav and footer or other parts changed. |