Workspaces#

See how an AI assistant can help with workspaces in Brandwave, including example prompts and the details it may ask for.

Using your AI assistant

Connect to the Brandwave MCP server, then ask your AI assistant in natural language. It will choose the right Brandwave task and ask for any details it needs.

List workspaces#

List workspaces the current user belongs to, with membership details.

Tool name: list_workspaces. Protocol hints: readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=false.

Example prompt#

text
List the workspaces I belong to.

Details to provide#

NameTypeRequiredDescription
pageIndexintegerRequiredZero-based page index for pagination.
pageSizeintegerRequiredNumber of items per page (1-100).
userIdstring (UUID)RequiredUser identifier to list workspaces for.

What you'll get back#

Returns { items, totalCount, facets, _meta } with paginated results.

Get workspace refresh status#

Retrieve whether activity or social-account enrichment is updating workspace metrics in the background.

Tool name: get_workspace_refresh_status. Protocol hints: readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=false.

Example prompt#

text
Show me the details for this workspace refresh status.

Details to provide#

NameTypeRequiredDescription
workspaceIdstring (UUID)RequiredWorkspace identifier whose background refresh status should be checked.

What you'll get back#

Returns { data, _meta } with the result.

Get workspace#

Retrieve a single workspace by ID.

Tool name: get_workspace. Protocol hints: readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=false.

Example prompt#

text
Show me the details for this workspace.

Details to provide#

NameTypeRequiredDescription
idstring (UUID)RequiredWorkspace identifier.

What you'll get back#

Returns { data, _meta } with the result.

Create workspace#

Create a workspace with a name, timezone, and currency, then assign the requesting user as owner.

Tool name: create_workspace. Protocol hints: readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=false.

Example prompt#

text
Create a new workspace.

Details to provide#

NameTypeRequiredDescription
userIdstring (UUID)RequiredUser identifier of the workspace owner.
organizationIdstring (UUID)—Organization to add the workspace to. Defaults to the first organization the user owns or administers.
namestringRequiredWorkspace name, usually the brand.
ianaTimezone'UTC' | 'America/New_York' | 'America/Chicago' | 'America/Denver' | 'America/Los_Angeles' | 'America/Anchorage' | 'Pacific/Honolulu' | 'America/Toronto' | 'America/Vancouver' | 'Europe/London' | 'Europe/Paris' | 'Europe/Berlin' | 'Australia/Sydney' | 'Australia/Melbourne' | 'Pacific/Auckland' | 'Asia/Tokyo' | 'Asia/Singapore' | null—IANA timezone identifier.
currency'USD' | 'CAD' | 'GBP' | 'EUR' | 'AUD' | 'NZD' | 'JPY' | 'SGD'—ISO 4217 currency code.

What you'll get back#

Returns { data, _meta } with the result.

Update workspace#

Update a workspace's name, avatar, timezone, currency, or country.

Tool name: update_workspace. Protocol hints: readOnlyHint=false, destructiveHint=true, idempotentHint=true, openWorldHint=false.

Owner only

Example prompt#

text
Update the workspace.

Details to provide#

NameTypeRequiredDescription
idstring (UUID)RequiredWorkspace identifier to update.
namestring—Updated workspace name (1-255 characters).
avatarKeystring | null—Storage key for the workspace avatar image. Set to null to remove.
ianaTimezone'UTC' | 'America/New_York' | 'America/Chicago' | 'America/Denver' | 'America/Los_Angeles' | 'America/Anchorage' | 'Pacific/Honolulu' | 'America/Toronto' | 'America/Vancouver' | 'Europe/London' | 'Europe/Paris' | 'Europe/Berlin' | 'Australia/Sydney' | 'Australia/Melbourne' | 'Pacific/Auckland' | 'Asia/Tokyo' | 'Asia/Singapore' | null—Updated IANA timezone.
currency'USD' | 'CAD' | 'GBP' | 'EUR' | 'AUD' | 'NZD' | 'JPY' | 'SGD'—Updated currency code.

What you'll get back#

Returns { data, _meta } with the result.

Delete workspace#

Delete a workspace by marking it deleted rather than permanently erasing its records. Requires workspace-owner permissions. Requests using Brandwave agent access tokens are rejected.

Tool name: delete_workspace. Protocol hints: readOnlyHint=false, destructiveHint=true, idempotentHint=true, openWorldHint=false.

Owner only

Example prompt#

text
Delete this workspace.

Details to provide#

NameTypeRequiredDescription
idstring (UUID)RequiredWorkspace identifier to delete.

What you'll get back#

Returns { data, _meta } with the result.

This changes data

Deleting a workspace removes access to its workspace and associated data. This operation marks the workspace deleted rather than permanently erasing its records.

List workspace users#

List users in a workspace with pagination and search.

Tool name: list_workspace_users. Protocol hints: readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=false.

Example prompt#

text
Who is on my team?

Details to provide#

NameTypeRequiredDescription
pageIndexintegerRequiredZero-based page index for pagination.
pageSizeintegerRequiredNumber of items per page (1-100).
workspaceIdstring (UUID)RequiredWorkspace identifier.
searchTermstring—Free-text search term to filter results (max 200 characters).
sortBystring—Column name to sort by.
sortDirection'asc' | 'desc'—Sort direction: ascending or descending.

What you'll get back#

Returns { items, totalCount, facets, _meta } with paginated results.

Add workspace user#

Add any existing Brandwave user account as a pending workspace member with the specified role. Requires workspace-owner permissions. Workspace details and stored aggregate marketing metrics become visible in the recipient's workspace list while pending; acceptance grants role-based workspace access. Does not create an account or send an email.

Tool name: add_workspace_user. Protocol hints: readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=true.

Owner only

Example prompt#

text
Add this user to my workspace.

Details to provide#

NameTypeRequiredDescription
workspaceIdstring (UUID)RequiredWorkspace identifier.
userIdstring (UUID)RequiredUser identifier to add.
role'owner' | 'member' | 'viewer'RequiredRole to assign (owner, member, or viewer).

What you'll get back#

Returns { data, _meta } with the result.

Update workspace user role#

Update the role on an existing workspace membership or pending invitation. Requires workspace-owner permissions; cannot change your own role. Does not add a new membership or send a notification.

Tool name: update_workspace_user_role. Protocol hints: readOnlyHint=false, destructiveHint=true, idempotentHint=true, openWorldHint=false.

Owner only

Example prompt#

text
Make this team member an owner.

Details to provide#

NameTypeRequiredDescription
workspaceIdstring (UUID)RequiredWorkspace identifier.
userIdstring (UUID)RequiredUser identifier whose role is being changed.
role'owner' | 'member' | 'viewer'RequiredNew role to assign (owner, member, or viewer).

What you'll get back#

Returns { data, _meta } with the result.

Remove workspace user#

Remove an existing workspace membership or pending invitation by marking it deleted. Requires workspace-owner permissions; cannot remove yourself. Does not delete the user account or send a notification.

Tool name: remove_workspace_user. Protocol hints: readOnlyHint=false, destructiveHint=true, idempotentHint=true, openWorldHint=false.

Owner only

Example prompt#

text
Remove this member from my workspace.

Details to provide#

NameTypeRequiredDescription
workspaceIdstring (UUID)RequiredWorkspace identifier.
userIdstring (UUID)RequiredUser identifier to remove.

What you'll get back#

Returns { data, _meta } with the result.

Invite workspace user#

Invite a user to a workspace by email.

Tool name: invite_workspace_user. Protocol hints: readOnlyHint=false, destructiveHint=true, idempotentHint=false, openWorldHint=true.

Owner only

Example prompt#

text
Invite a user to my workspace.

Details to provide#

NameTypeRequiredDescription
emailstringRequiredEmail address to send the invite to.
workspaceIdstring (UUID)RequiredWorkspace identifier.
role'owner' | 'member' | 'viewer'RequiredRole to assign to the invited user (owner, member, or viewer).

What you'll get back#

Returns { data, _meta } with the result.

Authorization required

Only workspace owners can invite new members.