> ## Documentation Index
> Fetch the complete documentation index at: https://docs.roofkit.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Sitios y marca

> Las herramientas MCP de RoofKit para Sitios y marca, con su acceso, tipo y argumentos.

Esta página lista 11 herramientas. Cada herramienta aparece solo para los miembros cuyo rol concede su acceso. Las descripciones son el texto que el servidor MCP envía a los clientes de IA, en inglés.

## List sites

List the workspace sites (landing pages) with output\_type, public\_url, and updated\_at. Every saved site is public. The primary site is the one at the root URL. Read one site with roofkit.sites.get.

| Nombre de la herramienta | Acceso | Tipo |
| - | - | - |
| `roofkit.sites.list` | `builder.read` | Lectura |

**Argumentos**

Esta herramienta no recibe argumentos.

## Create site

Create a site (landing page) from the Builder defaults. It is public at once at public\_url and counts toward the plan site limit. Change it with roofkit.sites.update. Visual and block editing use roofkit.sites.editor.handoff.

| Nombre de la herramienta | Acceso | Tipo |
| - | - | - |
| `roofkit.sites.create` | `builder.write` | Escritura |

**Argumentos**

**name** `string` *required*

**slug** `string`

## Open site editor

Return the Builder URL for visual edits, content blocks, quiz questions, adding or removing steps, and site delete. Builder saves are live at once.

| Nombre de la herramienta | Acceso | Tipo |
| - | - | - |
| `roofkit.sites.editor.handoff` | `builder.write` | Enlace a la app |

**Argumentos**

Esta herramienta no recibe argumentos.

## Open custom domain settings

Return the custom domain Settings URL to connect a domain, change its DNS, or remove it. Cloudflare tokens stay in the app. Read the domain state with roofkit.domains.status.get.

| Nombre de la herramienta | Acceso | Tipo |
| - | - | - |
| `roofkit.domains.handoff` | `domains.manage` | Enlace a la app |

**Argumentos**

Esta herramienta no recibe argumentos.

## Get email branding

Read the workspace email settings: accent color, header style, logo override, and the template copy per template and locale, plus whether the plan and the rollout let the workspace edit them and the brand that emails use now. Change them with roofkit.branding.email.update.

| Nombre de la herramienta | Acceso | Tipo |
| - | - | - |
| `roofkit.branding.email.get` | `communications.manage` | Lectura |

**Argumentos**

Esta herramienta no recibe argumentos.

## Get site

Get one site (landing page): name, slug, outputs, settings (copy and theme), estimate and assessment settings, steps (order and custom names), public\_url, builder\_url, and updated\_at. No landing\_id reads the primary site. Send updated\_at as expected\_updated\_at to roofkit.sites.update.

| Nombre de la herramienta | Acceso | Tipo |
| - | - | - |
| `roofkit.sites.get` | `builder.read` | Lectura |

**Argumentos**

**landing\_id** `string`

A site id from roofkit.sites.list.

## Update site

Change one site: name, slug, output\_type, copy and theme (updates), estimate\_settings, assessment result settings, the order of its steps, and the names of its custom steps. Only the fields you send change. Saved changes are live at once on the public site: a RoofKit site has no draft or publish step. Read the site with roofkit.sites.get first and send its updated\_at as expected\_updated\_at. A newer save answers CONFLICT, so read again and retry. To add or remove steps, edit questions or blocks, or delete a site, use roofkit.sites.editor.handoff. Requires an idempotency key.

| Nombre de la herramienta | Acceso | Tipo |
| - | - | - |
| `roofkit.sites.update` | `builder.write` | Escritura |

**Argumentos**

**landing\_id** `string` *required*

A site id from roofkit.sites.list.

**expected\_updated\_at** `string` *required*

updated\_at of the last roofkit.sites.get.

**idempotency\_key** `string` *required*

**name** `string`

Como máximo 200 caracteres.

**slug** `string`

A new slug moves the public URL of a site that is not primary. The old URL stops working. Como máximo 200 caracteres.

**output\_type** `string`

combined runs AI visualization and the Budget Estimate. A new output type can change the steps. Valores permitidos: `estimate`, `ai_visualization`, `conversion_assessment`, `combined`.

**updates** `object`

Copy and theme fields, with the keys of settings in roofkit.sites.get. A named theme\_preset cannot come with colors, fonts, or border\_style.

**properties**

**welcome\_title** `string`

Como máximo 300 caracteres.

**welcome\_description** `string`

Como máximo 1000 caracteres.

**cta\_text** `string`

Como máximo 120 caracteres.

**company\_tagline** `string`

Como máximo 300 caracteres.

**footer\_text** `string`

Como máximo 1000 caracteres.

**primary\_color** `string`

**secondary\_color** `string`

**accent\_color** `string`

**font\_family** `string`

Compatibility alias for theme\_font. Use a supported font ID. Omit when theme\_font is supplied. Valores permitidos: `geist-sans`, `geist-serif`, `geist-mono`, `inter`, `system`.

**theme\_preset** `string`

Choose a named preset without custom color/font/border fields. Manual tokens automatically select personalizado, or explicitly choose personalizado. Valores permitidos: `minimalista`, `elegante`, `noturno`, `terracota`, `oceano`, `personalizado`.

**theme\_font** `string`

Valores permitidos: `geist-sans`, `geist-serif`, `geist-mono`, `inter`, `system`.

**border\_style** `string`

Valores permitidos: `rounded`, `sharp`, `pill`.

**materials\_step\_title** `string`

Como máximo 300 caracteres.

**materials\_step\_description** `string`

Como máximo 1000 caracteres.

**shapes\_step\_title** `string`

Como máximo 300 caracteres.

**shapes\_step\_description** `string`

Como máximo 1000 caracteres.

**colors\_step\_title** `string`

Como máximo 300 caracteres.

**colors\_step\_description** `string`

Como máximo 1000 caracteres.

**photo\_step\_title** `string`

Como máximo 300 caracteres.

**photo\_step\_description** `string`

Como máximo 1000 caracteres.

**lead\_step\_title** `string`

Como máximo 300 caracteres.

**lead\_step\_description** `string`

Como máximo 1000 caracteres.

**result\_step\_title** `string`

Como máximo 300 caracteres.

**result\_step\_description** `string`

Como máximo 1000 caracteres.

**submit\_button\_text** `string`

Como máximo 120 caracteres.

**estimate\_settings** `object`

Budget Estimate price per roofing square. Only for a site with the estimate output.

**properties**

**min\_price\_per\_roofing\_square** `number` *required*

**max\_price\_per\_roofing\_square** `number` *required*

**currency** `string` *required*

**assessment\_settings** `object`

Result settings of a conversion assessment site. Questions stay in the Builder.

**properties**

**result\_title\_icon** `string`

Como máximo 80 caracteres.

**cta\_type** `string`

Valores permitidos: `link`, `call`, `email`.

**cta\_link** `string | null`

**cta\_phone** `string | null`

**cta\_email** `string | null`

**schedule\_cta\_url** `string | null`

Compatibility alias for cta\_link. Omit when cta\_link is supplied.

**call\_cta\_enabled** `boolean`

**email\_cta\_enabled** `boolean`

**tier\_thresholds** `object`

**summaries** `object`

**next\_steps** `object`

**tier\_images** `object`

**step\_order** `string[]`

Every current step id of steps.order, once each, in the new order. landing stays first, result stays last, and material, shape, and color keep their order.

**step\_labels** `object`

New names of custom steps, by step id. Built-in steps keep their names.

## Clone site

Copy a site with its settings, content blocks, lead form, and form fields. No source\_landing\_id copies the primary site. The copy is a new public site at once, at its own public\_url, and counts toward the plan site limit. Requires an idempotency key.

| Nombre de la herramienta | Acceso | Tipo |
| - | - | - |
| `roofkit.sites.clone` | `builder.write` | Escritura |

**Argumentos**

**idempotency\_key** `string` *required*

**source\_landing\_id** `string`

The site to copy. Default: the primary site.

**name** `string`

Default: Copy of \<source name>. Como máximo 200 caracteres.

**slug** `string`

Default: made from the name. Como máximo 200 caracteres.

## Set primary site

Make one site the primary site. The primary site is what the workspace root URL and the custom domain root serve, and the change is live at once. The site that was primary stays public at its /l/\<slug> URL. Confirm with the user first.

| Nombre de la herramienta | Acceso | Tipo |
| - | - | - |
| `roofkit.sites.primary.set` | `builder.write` | Escritura |

**Argumentos**

**landing\_id** `string` *required*

A site id from roofkit.sites.list.

## Get custom domain status

Read the custom domain of the workspace: hostname, subdomain, DNS and SSL state, verification dates, the recommended CNAME, and whether it serves the sites now. The verification token is never returned. Connect a domain or change DNS with roofkit.domains.handoff.

| Nombre de la herramienta | Acceso | Tipo |
| - | - | - |
| `roofkit.domains.status.get` | `domains.manage` | Lectura |

**Argumentos**

Esta herramienta no recibe argumentos.

## Update email branding

Change the workspace email settings with a partial update: accent color, header style, an HTTPS logo override, and the copy of the lead\_result, new\_lead\_alert, and follow\_up templates in en and es. The server merges the update. A field you leave out keeps its value, and null clears a value back to the RoofKit default. Emails sent after the call use the new settings. The plan and the rollout must allow email settings: see access.can\_edit in roofkit.branding.email.get.

| Nombre de la herramienta | Acceso | Tipo |
| - | - | - |
| `roofkit.branding.email.update` | `communications.manage` | Escritura |

**Argumentos**

**accent\_color** `string | null`

**header\_style** `string | null`

**logo\_url\_override** `string | null`

**templates** `object`

**properties**

**lead\_result** `object | null`

**new\_lead\_alert** `object | null`

**follow\_up** `object | null`


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.