MCP ServerTool Reference

Workspace management

Generated MCP reference for workspace management.

This page is generated from mcp-catalog.json. Do not edit it by hand.

Source: paper3 local extraction on 2026-05-29. Generated: 2026-05-29T11:34:45.044Z.

create_site

Create site

Create a new site inside a workspace. Accepts either the workspace's UUID (workspaceId) or its slug (workspaceSlug) — exactly one must be set. Returns the new site's UUID, its slug, the workspace's slug, the editor URL, and the _site value to pass on subsequent calls so you can immediately edit this site without re-connecting the MCP server. The name you pass becomes BOTH the DB site name AND the document's settings.brandName — they're kept in sync, so editing brandName later in the editor also renames the site.

Parameters

ParameterTypeRequiredDescription
namestringYes
workspaceIdstringNo
workspaceSlugstringNo

Input schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "workspaceId": {
      "type": "string"
    },
    "workspaceSlug": {
      "type": "string"
    }
  },
  "required": [
    "name"
  ],
  "additionalProperties": false
}

create_template

Create design template

Platform-admin tool. Captures part of the current site as a new entry in the global design-template library. Templates mirror the Component model: ONE master SceneNode (typically a Frame) painted at three breakpoint widths inside the editor's component-editor surface. Pass nodeIds (the canonical 'save this hero as a template' flow — the tool wraps them in a master Frame). Pass pageId to lift an entire page's desktop artboard into a template root. Pass root for a hand-built master payload. bundleSiteTokens (default true) ships the current site's tokens so dropping the template onto a brand-less site inherits the originating brand. Status defaults to draft.

Parameters

ParameterTypeRequiredDescription
namestringYes
slugstringYes
categorystringYes
descriptionstringNo
statusstringNo
nodeIdsarrayNo
pageIdstringNo
rootobjectNo
tagsarrayNo
thumbnailUrlstringNo
sortOrdernumberNo
bundleSiteTokensbooleanNo
_sitestringNoOptional target site formatted as <workspaceSlug>/<siteSlug>. Required when the workspace has multiple sites and no site header is set.

Input schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "slug": {
      "type": "string"
    },
    "category": {
      "type": "string",
      "enum": [
        "header",
        "hero",
        "features",
        "testimonials",
        "pricing",
        "cta",
        "stats",
        "gallery",
        "logos",
        "team",
        "faq",
        "footer",
        "menu",
        "form",
        "quote",
        "blog",
        "other"
      ]
    },
    "description": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "draft",
        "published"
      ]
    },
    "nodeIds": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "pageId": {
      "type": "string"
    },
    "root": {
      "type": "object",
      "additionalProperties": {}
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "thumbnailUrl": {
      "type": "string"
    },
    "sortOrder": {
      "type": "number"
    },
    "bundleSiteTokens": {
      "type": "boolean"
    },
    "_site": {
      "type": "string",
      "description": "Optional target site formatted as <workspaceSlug>/<siteSlug>. Required when the workspace has multiple sites and no site header is set.",
      "pattern": "^[^/]+/[^/]+$"
    }
  },
  "required": [
    "name",
    "slug",
    "category"
  ],
  "additionalProperties": false
}

create_workspace

Create workspace

Create a new personal workspace for the authenticated user. Idempotent: if the user already owns a workspace, returns the existing one. The user becomes the owner. NOT available on user-tokens — those are workspace-scoped and creating new workspaces would silently sit outside their scope.

Parameters

ParameterTypeRequiredDescription
namestringNo

Input schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    }
  },
  "additionalProperties": false
}

delete_site

Delete site

Permanently delete a site by id. Requires the caller to be a member of the site's workspace. The delete cascades to site_versions, form_submissions, and form_analytics via the schema's ON DELETE CASCADE.

Parameters

ParameterTypeRequiredDescription
siteIdstringYes

Input schema

{
  "type": "object",
  "properties": {
    "siteId": {
      "type": "string"
    }
  },
  "required": [
    "siteId"
  ],
  "additionalProperties": false
}

list_sites

List sites

List all sites the authenticated user can access, grouped by workspace. Each site row includes its wsSlug/siteSlug path — pass it as the x-paper3-site header on subsequent MCP requests to target that site.

Parameters

ParameterTypeRequiredDescription
workspaceIdstringNo
workspaceSlugstringNo

Input schema

{
  "type": "object",
  "properties": {
    "workspaceId": {
      "type": "string"
    },
    "workspaceSlug": {
      "type": "string"
    }
  },
  "additionalProperties": false
}

list_workspaces

List workspaces

List every workspace the authenticated user belongs to, with the user's role. When called with a single-workspace user-token, returns only that workspace. Use this before create_site to discover the workspace slug or id to target.

Parameters

This tool accepts an empty object.

Input schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

whoami

Who am I

Return the authenticated user's identity, the auth path (session, user token, or platform token), and, when on a user-token, the workspace it is scoped to. Use this to debug auth + scope problems from the MCP client side.

Parameters

This tool accepts an empty object.

Input schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

On this page