Discord Guests
What Discord Guests does
A streamer authorizes Studio to connect to the Discord desktop client running on the same computer. Studio can then show eligible voice-session participants as guest cards or visual elements in the streamer's production. The streamer decides which guests to save, display, arrange, or remove.
Why the rpc scope is required
Discord defines rpc as access to the local Discord RPC server. Studio needs that local connection to communicate with the signed-in Discord desktop client and receive the authorized data for Discord Guests. It is not a server bot permission and does not place a bot in the streamer's Discord server.
Why the rpc.voice.read scope is required
Discord defines rpc.voice.read as permission to read the user's voice settings and listen for voice events through the local RPC connection. Discord Guests uses those events to know which voice session is active and which participants can be offered to the streamer for display. The integration does not request rpc.voice.write and does not change the user's Discord voice settings.
Voice information that is read
Studio reads only the identity and voice-session details needed for the guest display: Discord user IDs, usernames, display names, avatar URLs, the current voice-channel identity or details, and voice membership events showing who is present. It does not record or transcribe voice audio.
Messages are never read
Discord message contents, direct messages, group messages, and channel history are not read or stored. The application does not request Discord's separate messages.read scope. Voice access does not grant message access.
No self-bot
Discord Guests does not automate a normal user account, send user-account commands, scrape the Discord client, or use a user token as a self-bot. It uses Discord's official OAuth2 authorization flow and approved local RPC scopes for a feature controlled by the signed-in user.
What stays local
Studio protects Discord tokens with Windows encryption. Saved guest profiles—including user ID, display information, avatar URL, last-seen voice-channel details, and streamer-assigned image or layout settings—stay on the streamer's computer. They leave that computer only if the streamer deliberately creates and moves a backup containing them.
What Tempest Signal handles
Tempest Signal acts as the confidential OAuth exchange. It forwards a one-time authorization code or token refresh request to Discord because the desktop application must not contain the Discord client secret. It returns Discord's result to Studio and does not retain the Discord access token or refresh token. Voice membership and saved guest profiles are not stored by Tempest Signal.
Disconnect and revoke authorization
In Studio, disconnect Discord to remove the locally protected authorization and use Forget on a guest to delete that saved local profile. To revoke the Discord-side authorization, open Discord, go to User Settings → Authorized Apps, select the Tempest application, and choose Deauthorize. Revoking stops future access; it does not automatically delete a local profile or backup already controlled by the streamer.
Downloads, policies, and help
Download Studio from the official release page, then authorize Discord only from inside the installed application. Read the master policies or use Support for removal and troubleshooting.
Official Studio downloads ↗Systems directoryPrivacy policyTerms of serviceSupport and removal
