MCP Server
Connect AI assistants and agents to a Restream account over the Model Context Protocol. The Restream MCP server is a remote, OAuth-secured server that exposes Restream's channel, event, destination, recording, storage, and analytics capabilities as MCP tools, so an MCP client can read and operate a user's account on their behalf.
How It Works
- Transport: Remote server over Streamable HTTP. Nothing is installed locally; clients connect to the hosted endpoint above.
- Auth: OAuth 2.1. On first use the client opens a browser window for the user to sign in to Restream and authorize access. The client stores and refreshes the token, so there are no long-lived API keys to manage in config.
- Scope: The server acts strictly within the authenticated user's account and plan. It can only do what that user could already do in the dashboard.
- Relationship to the REST API: The MCP tools are a curated, action-oriented surface over Restream capabilities. For raw HTTP endpoints, OAuth app registration, scopes, and webhooks, use the Restream API docs. The MCP server is for agent workflows; the REST API is for application integrations.
One-click installation from the Claude and ChatGPT connector directories is not available yet. Until then, add the server manually with the endpoint above. Setup is otherwise identical.
Prerequisites
- A Restream account. Free accounts can connect channels and create events; some destinations and limits depend on plan.
- An MCP-capable client that supports a remote server.
Connecting
Step 1: Review The Security Model
The MCP server can create, reschedule, and remove events and toggle destinations. Keep human confirmation enabled in your client and review write tool calls before approving them.
Step 2: Configure Your Client
All clients point at the same endpoint: https://mcp.restream.io/mcp. The first tool call triggers the OAuth browser sign-in.
Claude Code
Claude.ai / Claude Desktop
Settings -> Connectors -> Add custom connector:
- Name:
Restream - URL:
https://mcp.restream.io/mcp
ChatGPT
Enable Developer Mode in Settings -> Connectors -> Advanced settings, then Create a connector:
- Name:
Restream - MCP server URL:
https://mcp.restream.io/mcp - Authentication:
OAuth
Cursor
Add the server to ~/.cursor/mcp.json for global use or .cursor/mcp.json for a project:
VS Code with GitHub Copilot
Add the server to .vscode/mcp.json:
Codex
In Settings -> MCP Servers, add a Streamable HTTP server named restream with URL https://mcp.restream.io/mcp.
stdio-only clients
Bridge with the mcp-remote shim, which handles the OAuth handshake:
Client UIs change frequently. If a menu label differs from the steps above, check your client's MCP documentation.
Step 3: Verify
Ask the assistant: "List my connected Restream channels." It should request permission to call the Restream tools and return your channels by platform and displayName. If you see them, you are connected.
Authentication And Authorization
- The server implements OAuth 2.1; your MCP client performs the authorization-code flow in the browser and manages token refresh.
- Access is bound to the signed-in user. There is no separate API-key or bearer-token path for the MCP server. Authentication is OAuth only.
- For security, the MCP server deliberately will not:
- accept passwords, including account or channel logins;
- accept RTMP/SRT credentials to add custom channels;
- return stream keys or other internal IDs.
Perform those actions in the dashboard or via the REST API.
Tool Reference
The server exposes 22 tools across five areas. Tools are tagged read for no side effects or write for actions that mutate account state. Your client should confirm before executing write tools.
Account And Channels
get_current_user - read
Returns the authenticated user's profile and workspace context.
list_channels - read
Lists channels connected to the account.
check_channel_api_access - read
Checks every connected channel for platform API access issues and returns user-facing remediation steps for any that need attention.
Events
list_user_events - read
Finds events across their lifecycle states.
get_event - read
Returns one event, including its active destinations.
create_event - write
Creates a Restream event from the user's chosen source, such as Studio, encoder, uploaded video, or saved recording.
edit_event - write
Updates event details such as title and description.
reschedule_event - write
Schedules a draft event or moves a scheduled one.
unschedule_event - write
Removes the start time, turning the event back into a draft. External platform deletion stays disabled.
remove_event - write
Removes the event from the Restream account. Only affects Restream state; it never deletes or modifies 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
Enables creation and sync of scheduled broadcasts on supported external platforms for an already-scheduled event. This cannot be disabled through MCP.
Destinations
list_event_destinations - read
Lists active destinations on an event.
check_event_channels_activation - read
Validates that the user's plan allows the selected channels to be active simultaneously and explains any plan limits.
toggle_event_channel_on - write
Connects a channel as an event destination.
toggle_event_channel_off - write
Disconnects a destination from an event. Affects Restream only; nothing is changed on the platform.
edit_event_destination - write
Updates platform-specific settings on an existing destination.
Recordings And Storage
list_user_recordings - read
Lists recordings grouped by recording, with file names.
get_recording_download_url - read
Returns a temporary download link for one recording file.
list_user_storage_files - read
Lists video storage files.
Analytics
get_event_analytics_viewers - read
Returns viewer analytics for an event, with totals and per-channel values.
get_event_analytics_messages - read
Returns chat-message analytics for an event, with totals and per-channel values.
Common Workflows
Go live to multiple platforms
Choose connected destinations, check plan limits, and prepare a Restream event for the selected platforms.
Schedule with external broadcasts
Create or update a scheduled event and sync broadcast details to supported platforms.
File- or recording-backed event
Create an event from stored media or a saved recording, with optional replay behavior.
Post-stream analytics
Review viewer and chat activity after a stream.
Download a recording
Find a recording and provide temporary download access.
Security
Connecting an LLM to an account that can create and remove events carries the usual agent risks. Recommended practices:
- Same-access principle: The MCP server operates as the signed-in user. Grant it only to people who should already have that access.
- Keep human confirmation on: Most clients prompt before each tool call. Leave this enabled and review write tool calls before approving them.
- Prompt injection: If an agent processes untrusted content, such as a webpage, chat message, or file, and that content contains instructions, the agent may try to act on them. Review planned actions before approving, and do not auto-approve write tools when untrusted input is in context.
- Removing destinations is non-destructive externally:
toggle_event_channel_offandremove_eventonly change Restream state; they never delete or modify anything on the destination platforms. - Verify the endpoint: Only connect to the official
https://mcp.restream.io/mcp. - Credential boundary: The server never accepts passwords or RTMP/SRT credentials and never returns stream keys. Handle those in the dashboard or REST API.
Limitations
- No password, RTMP/SRT credential entry, or stream-key retrieval.
- Not yet listed in the Claude or ChatGPT connector directories. Add the server manually with the endpoint above. Directory listings are coming soon.