# 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)

## revoke_support_access

End a Scheduler Zero support-access grant in a workspace immediately.

Use when support no longer needs access, or the person asks to remove it. Revoking an already-ended grant is a no-op.

It does not remove workspace members or API keys; use their own tools.

Scopes: workspaceMember:remove

Risk: write; confirmation: none; idempotency: supported.

### Input schema (personal API key)

```json
{
  "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"
    },
    "grantId": {
      "$ref": "#/$defs/SupportAccessGrantId"
    }
  },
  "required": [
    "workspaceId",
    "grantId"
  ],
  "patternProperties": {
    "^(?!(?:workspaceId|grantId)$)[\\s\\S]*$": false
  },
  "additionalProperties": true,
  "propertyNames": {
    "type": "string",
    "enum": [
      "workspaceId",
      "grantId"
    ]
  },
  "$defs": {
    "SupportAccessGrantId": {
      "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"
    }
  }
}
```

### Input schema (OAuth / delegated agent)

```json
{
  "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"
    },
    "grantId": {
      "$ref": "#/$defs/SupportAccessGrantId"
    }
  },
  "required": [
    "workspaceId",
    "grantId"
  ],
  "patternProperties": {
    "^(?!(?:workspaceId|grantId)$)[\\s\\S]*$": false
  },
  "additionalProperties": true,
  "propertyNames": {
    "type": "string",
    "enum": [
      "workspaceId",
      "grantId"
    ]
  },
  "$defs": {
    "SupportAccessGrantId": {
      "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"
    }
  }
}
```

### Output schema (structuredContent)

```json
{
  "$defs": {
    "SupportAccessGrantId": {
      "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"
    },
    "SupportAccessStatus": {
      "type": "string",
      "enum": [
        "active",
        "expired",
        "revoked"
      ]
    },
    "SupportAccessDurationHours": {
      "type": "number",
      "enum": [
        24,
        72,
        168
      ]
    },
    "SupportAccessPerson": {
      "type": "object",
      "properties": {
        "userId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "email": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "userId",
        "email"
      ],
      "patternProperties": {
        "^(?!(?:userId|email)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "userId",
          "email"
        ]
      }
    },
    "UtcDateTimeEncoded": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z$"
    },
    "SupportAccessGrant": {
      "type": "object",
      "properties": {
        "id": {
          "$ref": "#/$defs/SupportAccessGrantId"
        },
        "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"
        },
        "status": {
          "$ref": "#/$defs/SupportAccessStatus"
        },
        "permissions": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "agent:capabilities",
              "agent:identity",
              "agent:operations:cancel",
              "agent:operations:read",
              "analytics:export",
              "analytics:read",
              "apiKey:create",
              "apiKey:delete",
              "apiKey:read",
              "apiKey:update",
              "audit:read",
              "billing:manage",
              "billing:read",
              "blocklist:create",
              "blocklist:delete",
              "blocklist:read",
              "campaign:archive",
              "campaign:create",
              "campaign:delete",
              "campaign:launch",
              "campaign:pause",
              "campaign:read",
              "campaign:update",
              "dialer:assign_numbers",
              "dialer:assign_seats",
              "dialer:create",
              "dialer:delete",
              "dialer:dial",
              "dialer:manage_billing",
              "dialer:manage_number_health",
              "dialer:manage_numbers",
              "dialer:manage_numbers_self",
              "dialer:manage_voicemails",
              "dialer:read",
              "dialer:read_analytics",
              "dialer:read_numbers_all",
              "dialer:release_numbers",
              "dialer:update",
              "domain:manage_dns",
              "domain:purchase",
              "domain:read",
              "domain:transfer",
              "emailVerification:manage_credits",
              "emailVerification:manage_keys",
              "emailVerification:manage_sharing",
              "emailVerification:read",
              "emailVerification:verify",
              "inbox:connect",
              "inbox:create",
              "inbox:delete",
              "inbox:read",
              "inbox:update",
              "inbox:warmup_manage",
              "integration:create",
              "integration:delete",
              "integration:read",
              "integration:update",
              "lead:create",
              "lead:delete",
              "lead:export",
              "lead:import",
              "lead:read",
              "lead:update",
              "leadList:create",
              "leadList:delete",
              "leadList:read",
              "leadList:update",
              "org:delete",
              "orgAnalytics:read",
              "orgAnalytics:manage",
              "org:read",
              "org:update",
              "orgApiKey:manage",
              "orgMember:invite",
              "orgMember:read",
              "orgMember:remove",
              "orgMember:update",
              "phoneVerification:manage_keys",
              "phoneVerification:read",
              "phoneVerification:verify",
              "platform:operate",
              "replyLabel:create",
              "replyLabel:delete",
              "replyLabel:read",
              "replyLabel:update",
              "role:manage",
              "role:read",
              "sequence:create",
              "sequence:delete",
              "sequence:read",
              "sequence:update",
              "sql:manage_dashboards",
              "sql:query",
              "support:create",
              "support:read",
              "support:update",
              "tag:create",
              "tag:delete",
              "tag:read",
              "tag:update",
              "task:create",
              "task:delete",
              "task:read",
              "task:update",
              "template:create",
              "template:delete",
              "template:read",
              "template:update",
              "unibox:archive",
              "unibox:label",
              "unibox:read",
              "unibox:reply",
              "usage:read",
              "webhook:create",
              "webhook:delete",
              "webhook:read",
              "webhook:update",
              "whiteLabel:read",
              "whiteLabel:update",
              "workflow:create",
              "workflow:delete",
              "workflow:publish",
              "workflow:read",
              "workflow:run",
              "workflow:update",
              "workspace:create",
              "workspace:delete",
              "workspace:read",
              "workspace:transfer",
              "workspace:update",
              "workspaceMember:invite",
              "workspaceMember:read",
              "workspaceMember:remove",
              "workspaceMember:update"
            ]
          }
        },
        "durationHours": {
          "$ref": "#/$defs/SupportAccessDurationHours"
        },
        "reason": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 1000
            },
            {
              "type": "null"
            }
          ]
        },
        "grantedBy": {
          "$ref": "#/$defs/SupportAccessPerson"
        },
        "createdAt": {
          "$ref": "#/$defs/UtcDateTimeEncoded"
        },
        "expiresAt": {
          "$ref": "#/$defs/UtcDateTimeEncoded"
        },
        "revokedAt": {
          "anyOf": [
            {
              "$ref": "#/$defs/UtcDateTimeEncoded"
            },
            {
              "type": "null"
            }
          ]
        },
        "revokedBy": {
          "anyOf": [
            {
              "$ref": "#/$defs/SupportAccessPerson"
            },
            {
              "type": "null"
            }
          ]
        },
        "lastUsedAt": {
          "anyOf": [
            {
              "$ref": "#/$defs/UtcDateTimeEncoded"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "id",
        "workspaceId",
        "status",
        "permissions",
        "durationHours",
        "reason",
        "grantedBy",
        "createdAt",
        "expiresAt",
        "revokedAt",
        "revokedBy",
        "lastUsedAt"
      ],
      "patternProperties": {
        "^(?!(?:id|workspaceId|status|permissions|durationHours|reason|grantedBy|createdAt|expiresAt|revokedAt|revokedBy|lastUsedAt)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "id",
          "workspaceId",
          "status",
          "permissions",
          "durationHours",
          "reason",
          "grantedBy",
          "createdAt",
          "expiresAt",
          "revokedAt",
          "revokedBy",
          "lastUsedAt"
        ]
      }
    },
    "RevokeSupportAccessResult": {
      "type": "object",
      "properties": {
        "grant": {
          "$ref": "#/$defs/SupportAccessGrant"
        },
        "changed": {
          "type": "boolean"
        }
      },
      "required": [
        "grant",
        "changed"
      ],
      "patternProperties": {
        "^(?!(?:grant|changed)$)[\\s\\S]*$": false
      },
      "additionalProperties": true,
      "propertyNames": {
        "type": "string",
        "enum": [
          "grant",
          "changed"
        ]
      }
    }
  },
  "type": "object",
  "anyOf": [
    {
      "allOf": [
        {
          "$ref": "#/$defs/RevokeSupportAccessResult"
        },
        {
          "type": "object"
        }
      ]
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "allOf": [
            {
              "$ref": "#/$defs/RevokeSupportAccessResult"
            },
            {
              "not": {
                "type": "object"
              }
            }
          ]
        }
      },
      "required": [
        "data"
      ],
      "additionalProperties": false
    }
  ]
}
```

### Underlying API operations

- `supportAccess.revoke`: `POST /v1/workspaces/:workspaceId/support-access/:grantId/revoke`

