Twitch for AI agents

Twitch is a live streaming platform for gamers and creators, and here it lets a moderator or streamer manage chat, channel settings, and stream interactions. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.

Video and audioOAuth 2.0MCP + RESTtwitch.tv
AUDIT LOG · TWITCHPOLICY: acme-support
09:41:07 · claude · u_8f2read
twitch.get_vips
Get VIPs✓ allowed · 212ms
09:41:08 · claude · u_8f2read
twitch.get_clips
Get Clips✓ allowed · 164ms
09:41:09 · claude · u_8f2write
twitch.create_clip
Request Clip Creation✓ approved · approved by user
09:41:12 · claude · u_8f2destructive
twitch.delete_videos
Delete Videos✕ blocked · policy: deny
EVERY TWITCH CALL, ON THE RECORD
01 · USE CASES

What agents do in Twitch.

01

Create a poll for viewers

Start a live poll on a channel to get audience input during a stream.

02

Check a user's subscription status

Look up whether a viewer is subscribed to the channel, a read-only check.

03

Confirm before banning a user

Get approval before banning a chat user, since it removes their access to the channel.

02 · ACTIONS

131 Twitch actions, graded by risk.

Every Twitch action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.

read

69

Look things up. Allowed by default.

  • twitch.get_vips
    Get VIPs
  • twitch.get_clips
    Get Clips
  • twitch.get_games
    Get Games
  • twitch.get_polls
    Get Polls
  • twitch.get_teams
    Get Teams
  • twitch.get_users
    Get Users
  • twitch.get_videos
    Get Videos
  • twitch.get_streams
    Get Streams
  • twitch.get_chatters
    Get Chatters
  • twitch.get_top_games
    Get Top Games
  • twitch.get_cheermotes
    Get Cheermotes
  • twitch.get_emote_sets
    Get Emote Sets
  • twitch.get_moderators
    Get Moderators
  • twitch.get_stream_key
    Get Sensitive Stream Key
  • twitch.get_ad_schedule
    Get Ad Schedule
  • twitch.get_predictions
    Get Predictions
+ 53 MORE

write

47

Create and change things. Allow, or ask the user first.

  • twitch.create_clip
    Request Clip Creation
  • twitch.create_poll
    Create Poll
  • twitch.update_user
    Update User
  • twitch.send_whisper
    Send Whisper
  • twitch.add_channel_vip
    Add Channel VIP
  • twitch.send_a_shoutout
    Send a Shoutout
  • twitch.add_blocked_term
    Add Blocked Term
  • twitch.create_prediction
    Create Prediction
  • twitch.send_chat_message
    Send Chat Message
  • twitch.create_clip_from_vod
    Request Clip Creation From VOD
  • twitch.create_stream_marker
    Create Stream Marker
  • twitch.update_chat_settings
    Update Chat Settings
  • twitch.update_custom_reward
    Update Custom Reward
  • twitch.add_channel_moderator
    Add Channel Moderator
  • twitch.create_custom_rewards
    Create Custom Rewards
  • twitch.send_chat_announcement
    Send Chat Announcement
+ 31 MORE

destructive

15

Delete, cancel or archive. Ask first, or deny outright.

  • twitch.cancel_a_raid
    Cancel a raid
  • twitch.delete_videos
    Delete Videos
  • twitch.remove_channel_vip
    Remove Channel VIP
  • twitch.remove_blocked_term
    Remove Blocked Term
  • twitch.delete_chat_messages
    Delete Chat Messages
  • twitch.delete_custom_reward
    Delete Custom Reward
  • twitch.delete_guest_star_slot
    Delete Guest Star Slot
  • twitch.delete_guest_star_invite
    Delete Guest Star Invite
  • twitch.remove_channel_moderator
    Remove Channel Moderator
  • twitch.delete_eventsub_subscription
    Delete EventSub Subscription
  • twitch.delete_channel_stream_schedule_segment
    Delete Channel Stream Schedule Segment
  • twitch.remove_suspicious_status_from_chat_user
    Remove Suspicious Status From Chat User
  • twitch.ban_user
    Ban User
  • twitch.block_user
    Block User
  • twitch.get_user_block_list
    Get User Block List
03 · HOW IT WORKS

Twitch in three steps.

  1. 01Your users connect TwitchThey sign in to Twitch on Arc0 Connect, under your brand, and approve the access you ask for.
  2. 02You set the rulesReads run, writes like “request Clip Creation” can wait for the user, and “delete Videos” can be denied outright.
  3. 03Any agent can actYour agent calls Twitch through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
POLICY.TS
await arc0.policies.set('twitch', {
  read: 'allow',
  write: 'ask',        // create_clip
  destructive: 'deny',  // delete_videos
})

# Claude Code: the same connection, one URL
$ claude mcp add --transport http arc0 \
    https://mcp.arc0.ai/u/u_8f2
04 · AUTH AND DATA

How Twitch connects.

Users sign in to Twitch on Arc0 Connect and approve the scopes you request. Build with Arc0’s Twitch OAuth app, or bring your own so the Twitch consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

The same Twitch connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →

AUTH
OAuth 2.0
CREDENTIALS
Per-tenant encrypted vault
MODEL SEES
Results only, never credentials
AUDIT LOG
Every call, on every plan
05 · WORKS WITH

Use Twitch from any agent.

Claude
ChatGPT
Cursor
Codex
VS Code
OpenAI Agents SDK
Claude Agent SDK
Vercel AI SDK
Mastra
LangGraph
07 · FAQ

Twitch and Arc0, answered.

Q01

Can I use Twitch with Claude, ChatGPT or Cursor?

Yes. Connect Twitch to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the Twitch actions you allow.

Q02

How do users connect Twitch?

Users sign in to Twitch on Arc0 Connect and approve the scopes you request. Build with Arc0’s Twitch OAuth app, or bring your own so the Twitch consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

Q03

Which Twitch actions can my agent take?

131 in total: 69 read, 47 write and 15 destructive, such as “request Clip Creation”. Your policies decide which of them each agent may call.

Q04

Can I stop my agent from deleting things in Twitch?

Yes. Actions like “delete Videos” are graded destructive. Set destructive actions to deny, or to ask so the user approves each one, and blocked calls still show up on the audit log.

Q05

Can my own backend call Twitch too?

Yes. The same Twitch connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.

Get started

Plug Twitch into your agent.

Your users connect Twitch once, under your brand. Your agent gets 131 actions behind your policies, with every call on the record.

Free to build · MCP + REST · Audit log on every plan