# MCP tool reference

1 callable tools.

Use tools/call at https://mcp.schedulerzero.com/mcp with the exact tool name and arguments below. The /tools/ paths in this view are documentation identifiers, not HTTP endpoints. Request execution is disabled for this reference.

Inputs are shown for personal API keys (bound) and for OAuth/delegated agents. Output schemas describe MCP structuredContent: native objects pass through; arrays, scalars and null use a data wrapper. Text content retains the native JSON result.

[Connect a client](/mcp/connect) · [Authentication and authorization](/authentication) · [Generated auth guide](/auth.md) · [Download tool catalog](/mcp-catalog.json) · [Agent documentation](/llms.txt)

## manage_workspace_branding

Set or clear a workspace's logo, deleting the prior public asset on change.

Use to update a workspace's public logo asset.

Only accepts a hosted public asset URL; it does not upload raw bytes.

Obtain the user's explicit authorization before invoking a write or destructive action. This is a client interaction requirement, not a server-issued approval token.

Scopes: workspace:update

Risk: write; confirmation: explicit; idempotency: required.

### Input schema (personal API key)

```json
{
  "type": "object",
  "anyOf": [
    {
      "type": "object",
      "properties": {
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "set"
              ]
            }
          ]
        },
        "workspaceId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        },
        "logo": {
          "$ref": "#/$defs/HttpUrl"
        }
      },
      "required": [
        "action",
        "workspaceId",
        "logo"
      ],
      "patternProperties": {
        "^(?!(?:action|workspaceId|logo)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "action",
          "workspaceId",
          "logo"
        ]
      }
    },
    {
      "type": "object",
      "properties": {
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "delete"
              ]
            }
          ]
        },
        "workspaceId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        }
      },
      "required": [
        "action",
        "workspaceId"
      ],
      "patternProperties": {
        "^(?!(?:action|workspaceId)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "action",
          "workspaceId"
        ]
      }
    }
  ],
  "$defs": {
    "HttpUrl": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2048,
      "pattern": "^https?:\\/\\/[^\\s/$.?#][^\\s]*$"
    },
    "ManageWorkspaceBrandingInput": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "set"
                  ]
                }
              ]
            },
            "workspaceId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            },
            "logo": {
              "$ref": "#/$defs/HttpUrl"
            }
          },
          "required": [
            "action",
            "workspaceId",
            "logo"
          ],
          "patternProperties": {
            "^(?!(?:action|workspaceId|logo)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "workspaceId",
              "logo"
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "delete"
                  ]
                }
              ]
            },
            "workspaceId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            }
          },
          "required": [
            "action",
            "workspaceId"
          ],
          "patternProperties": {
            "^(?!(?:action|workspaceId)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "workspaceId"
            ]
          }
        }
      ]
    }
  }
}
```

### Input schema (OAuth / delegated agent)

```json
{
  "type": "object",
  "properties": {
    "workspaceId": {
      "type": "string",
      "format": "uuid",
      "description": "Target Workspace UUID. Call list_workspaces to enumerate the Workspaces this credential may access, then pass the chosen id here."
    }
  },
  "required": [
    "workspaceId"
  ],
  "anyOf": [
    {
      "type": "object",
      "properties": {
        "workspaceId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        },
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "set"
              ]
            }
          ]
        },
        "logo": {
          "$ref": "#/$defs/HttpUrl"
        }
      },
      "required": [
        "action",
        "workspaceId",
        "logo"
      ],
      "patternProperties": {
        "^(?!(?:workspaceId)$)[\\s\\S]*?(?:^(?!(?:action|workspaceId|logo)$)[\\s\\S]*$)": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "anyOf": [
          {
            "type": "string",
            "enum": [
              "action",
              "workspaceId",
              "logo"
            ]
          },
          {
            "enum": [
              "workspaceId"
            ]
          }
        ]
      }
    },
    {
      "type": "object",
      "properties": {
        "workspaceId": {
          "type": "string",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
          "format": "uuid"
        },
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "delete"
              ]
            }
          ]
        }
      },
      "required": [
        "action",
        "workspaceId"
      ],
      "patternProperties": {
        "^(?!(?:workspaceId)$)[\\s\\S]*?(?:^(?!(?:action|workspaceId)$)[\\s\\S]*$)": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "anyOf": [
          {
            "type": "string",
            "enum": [
              "action",
              "workspaceId"
            ]
          },
          {
            "enum": [
              "workspaceId"
            ]
          }
        ]
      }
    }
  ],
  "$defs": {
    "HttpUrl": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2048,
      "pattern": "^https?:\\/\\/[^\\s/$.?#][^\\s]*$"
    },
    "ManageWorkspaceBrandingInput": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "set"
                  ]
                }
              ]
            },
            "workspaceId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            },
            "logo": {
              "$ref": "#/$defs/HttpUrl"
            }
          },
          "required": [
            "action",
            "workspaceId",
            "logo"
          ],
          "patternProperties": {
            "^(?!(?:action|workspaceId|logo)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "workspaceId",
              "logo"
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "delete"
                  ]
                }
              ]
            },
            "workspaceId": {
              "type": "string",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
              "format": "uuid"
            }
          },
          "required": [
            "action",
            "workspaceId"
          ],
          "patternProperties": {
            "^(?!(?:action|workspaceId)$)[\\s\\S]*$": false
          },
          "additionalProperties": true,
          "propertyNames": {
            "type": "string",
            "enum": [
              "action",
              "workspaceId"
            ]
          }
        }
      ]
    }
  }
}
```

### Output schema (structuredContent)

```json
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
      "format": "uuid"
    },
    "name": {
      "$ref": "#/$defs/ShortText"
    },
    "slug": {
      "$ref": "#/$defs/NonEmptyString"
    },
    "logo": {
      "anyOf": [
        {
          "$ref": "#/$defs/HttpUrl"
        },
        {
          "type": "null"
        }
      ]
    },
    "createdAt": {
      "$ref": "#/$defs/UtcDateTimeEncoded"
    }
  },
  "required": [
    "id",
    "name",
    "slug",
    "logo",
    "createdAt"
  ],
  "patternProperties": {
    "^(?!(?:id|name|slug|logo|createdAt)$)[\\s\\S]*$": false
  },
  "additionalProperties": true,
  "propertyNames": {
    "type": "string",
    "enum": [
      "id",
      "name",
      "slug",
      "logo",
      "createdAt"
    ]
  },
  "$defs": {
    "ShortText": {
      "type": "string",
      "minLength": 1,
      "maxLength": 256
    },
    "NonEmptyString": {
      "type": "string",
      "minLength": 1,
      "maxLength": 4096
    },
    "HttpUrl": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2048,
      "pattern": "^https?:\\/\\/[^\\s/$.?#][^\\s]*$"
    },
    "UtcDateTimeEncoded": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z$"
    }
  }
}
```

### Underlying API operations

- `workspaces.setLogo`: `PUT /v1/workspaces/:workspaceId/logo`
- `workspaces.deleteLogo`: `DELETE /v1/workspaces/:workspaceId/logo`

