# Restream MCP Give your agent a direct line to Restream. Channels, events, destinations, recordings, clips, transcripts, and analytics — exposed as MCP tools any capable client can call. No integration code. No API keys to rotate. Endpoint: https://mcp.restream.io/mcp ## How it works **Remote, not installed.** Streamable HTTP over a single hosted endpoint. There is nothing to clone, build, or keep updated locally. **OAuth, not API keys.** Sign in once in the browser. The client stores and refreshes the token — no long-lived secret sitting in a config file. **Scoped to the account.** Every call runs as the signed-in user, on their plan and their limits — it can't do anything they couldn't already do. MCP tools vs. the REST API: the tools here are a curated, action-oriented surface for agent workflows. For raw HTTP endpoints, OAuth app registration, and webhooks, use the REST API docs at https://developers.restream.io instead. ## Connect a client Every client points at the same endpoint. The first tool call opens a browser window to sign in and authorize. This server can write. It can create clip projects, create and reschedule events, remove events, and toggle destinations. Keep human confirmation on in your client and review each write call before approving it. ### Claude Code 1. Add the server from the terminal: `claude mcp add --transport http --scope user restream https://mcp.restream.io/mcp` 2. Authorize when prompted — this opens your browser. Then run `/mcp` inside Claude Code. ### Claude.ai and Claude Desktop 1. Open Settings → Connectors → Add custom connector. 2. Name: Restream. URL: https://mcp.restream.io/mcp ### ChatGPT 1. Copy the endpoint: https://mcp.restream.io/mcp 2. Turn on Developer mode: Settings → Security and login → Developer mode, then turn it on. 3. Add Restream: Settings → Plugins → Browse plugins, then click the + icon next to the search bar. Add the Restream MCP endpoint and sign in to your Restream account. ### Grok xAI's menus change frequently — check xAI's current documentation if this has moved. 1. Go to Plugins → New connector → Custom. 2. Add a remote MCP server: `{ "mcpServers": { "restream": { "url": "https://mcp.restream.io/mcp" } } }` ### Cursor Add to `~/.cursor/mcp.json` for every project, or `.cursor/mcp.json` for just this one: ``` { "mcpServers": { "restream": { "url": "https://mcp.restream.io/mcp" } } } ``` ### VS Code with GitHub Copilot Add to `.vscode/mcp.json`: ``` { "servers": { "restream": { "type": "http", "url": "https://mcp.restream.io/mcp" } } } ``` ### Codex Open Settings → MCP Servers. Add a Streamable HTTP server. Name: restream. URL: https://mcp.restream.io/mcp ### Other stdio-only clients Bridge with the `mcp-remote` shim, which performs the OAuth handshake on the client's behalf: ``` { "mcpServers": { "restream": { "command": "npx", "args": ["mcp-remote", "https://mcp.restream.io/mcp"] } } } ``` Verify the connection: ask your assistant "List my connected Restream channels." It should request permission, then return channels by platform and display name. If you see them, you're connected. ## Tool reference 30 tools across six areas. Every tool is tagged read for no side effects, or write for actions that change account state. Clients should confirm before running a write tool. ### Account & channels (3 tools) - get_current_user [read] — Returns the signed-in user's profile and workspace context. - list_channels [read] — Lists every channel connected to the account. - check_channel_api_access [read] — Checks each connected channel for platform API issues and returns remediation steps. ### Events (9 tools) - list_user_events [read] — Finds events across draft, scheduled, live, and finished states. - get_event [read] — Returns one event, including its active destinations. - create_event [write] — Creates an event from Studio, an encoder, an uploaded file, or a saved recording. - edit_event [write] — Updates an event's title and description. - reschedule_event [write] — Schedules a draft event, or moves one that's already scheduled. - unschedule_event [write] — Clears an event's start time, turning it back into a draft. - remove_event [write] — Removes an event from Restream. Never touches broadcasts or posts on external platforms. - set_event_loop_count [write] — Sets how many times a file- or recording-backed event repeats playback. - enable_event_external_scheduled_broadcasts [write] — Turns on native scheduled-broadcast sync on supported platforms. Cannot be reversed through MCP. ### Destinations (5 tools) - list_event_destinations [read] — Lists the active destinations on an event. - check_event_channels_activation [read] — Confirms the account's plan allows the chosen channels to run together. - toggle_event_channel_on [write] — Connects a channel to an event as a destination. - toggle_event_channel_off [write] — Disconnects a destination from an event. Restream-only — nothing changes on the platform. - edit_event_destination [write] — Updates platform-specific settings on a destination already on an event. ### Recordings & storage (3 tools) - list_user_recordings [read] — Lists recordings, grouped by session, with file names. - get_recording_download_url [read] — Returns a temporary download link for one recording file. - list_user_storage_files [read] — Lists uploaded video files in storage. ### Clips (4 tools) - list_user_clips_projects [read] — Lists clip projects for the account, with pagination and sort options. - get_user_clips_project_details [read] — Returns a project's clips and their posted status. - create_user_clips_project [write] — Creates a clip project from a stored video file. - create_user_clip_download [read] — Creates a temporary download link for one clip. ### Analytics (6 tools) - get_event_analytics_viewers [read] — Viewer totals for an event, overall and per channel. - get_event_analytics_messages [read] — Chat-message totals for an event, overall and per channel. - list_event_chat_messages [read] — Retrieves chat messages for an event, paging through the full history in order. - get_event_chat_history_download_url [read] — Generates a downloadable chat-history export and returns the link. - get_event_transcript [read] — Returns the stream transcript for an event, or a requested portion of it. - list_event_transcriptions [read] — Checks transcription job status and lists available transcripts. ## Common workflows - **Go live to multiple platforms** — Choose connected destinations, check plan limits, and prepare an event for the selected platforms. - **Schedule with native sync** — Create or update a scheduled event and sync its details to supported platforms' own scheduling tools. - **Publish from a file or recording** — Create an event from stored media or a saved recording, with optional loop playback. - **Review post-stream analytics** — Pull viewer and chat activity for a finished event, per channel. - **Find, trim, and download a clip** — Locate a storage file, create a clip project, review results, and get a download link. ## FAQ highlights - No paid plan is required to connect MCP — just a Restream account. - Any MCP-compatible assistant works. Confirmed in active use: Claude, ChatGPT, Cursor, and Codex. - The assistant can read and summarize live chat, but cannot post replies into chat — there's no send-message tool. - TikTok chat isn't supported through Restream's unified chat yet. - The connection is scoped to whichever Restream workspace was active in the browser at approval time. - Full FAQ: https://mcp.restream.io/faq ## For agents This page is also available as: - /llms.txt — a short index of every section. - /agents.md — endpoint, OAuth flow, and every client config in one file. - /llms-full.txt — this document.