# Fuzzbucket MCP access

MCP clients connect with OAuth 2.1 (authorization code with S256 PKCE, dynamic client registration or client ID metadata documents) or with a dedicated MCP personal access token. Browser cookies and app JWTs are not MCP credentials. OAuth connections ask the signed-in user to approve the requested permissions; access tokens expire after one hour, refresh tokens rotate on every use, and reuse of a rotated refresh token disconnects the client. OAuth connections and personal access tokens are listed and revocable in Settings > MCP. Personal access tokens are scoped, expiring and revocable in Settings. Authentication uses stored hashes. New tokens also have an encrypted setup copy retrievable only through their owner’s active first-party session. Older hash-only tokens cannot be recovered. An inactive account cannot use MCP.

Discovery exposes only authorized action variants; execution checks scopes again. Brand, workspace, node, asset, conversation and run ownership remain enforced. Existing tokens never receive new write permissions automatically. Create a new token to choose the current scopes.

Saving drafts and connections does not generate. Chat and generation can spend credits under the normal app limits. MCP does not expose internal agent tools, system prompts, social publishing, administration or billing mutations.

Transfer grants expire after 15 minutes and stop working when the personal access token that created them expires or is revoked, or when the OAuth connection is disconnected. They authorize a specific workspace and request. Keep token and transfer headers private.
