Restream MCP Server

Restream MCP Server

Enables management of multi-platform streaming through the Restream API, allowing control of streaming channels, stream settings, and access to analytics across platforms like YouTube, Twitch, and Facebook through natural language.

Category
Visit Server

README

Restream MCP Server

A Model Context Protocol (MCP) server that provides tools for interacting with the Restream API. This server enables Claude and other MCP clients to manage streaming channels, control streams, and access analytics through natural language.

Features

  • User Profile Management: Get authenticated user information
  • Channel Management: List, view, enable/disable streaming channels
  • Stream Control: Start, stop, and update stream settings
  • Analytics: Access streaming analytics and performance data
  • OAuth Authentication: Secure API access using client credentials

Available Tools

1. get_user_profile

Get the authenticated user profile information including email, display name, and account details.

2. list_channels

List all connected streaming channels/platforms (YouTube, Twitch, Facebook, etc.) with their connection status.

3. get_channel

Get detailed information about a specific channel by ID.

Parameters:

  • channelId (string, required): The ID of the channel to retrieve

4. update_channel_status

Enable or disable a specific streaming channel.

Parameters:

  • channelId (string, required): The ID of the channel to update
  • enabled (boolean, required): Whether to enable (true) or disable (false) the channel

5. get_current_stream

Get information about the current/active stream including title, status, RTMP URL, and viewer count.

6. update_stream_settings

Update settings for the current stream such as title, description, or privacy settings.

Parameters:

  • title (string, optional): The stream title
  • description (string, optional): The stream description
  • privacy (string, optional): The stream privacy setting (public, private, unlisted)

7. get_stream_analytics

Get analytics and statistics for streams including viewer counts, engagement metrics, and performance data.

Parameters:

  • streamId (string, optional): Optional stream ID to get analytics for a specific stream

8. start_stream

Start a new stream with optional settings.

Parameters:

  • title (string, optional): The stream title
  • description (string, optional): The stream description
  • privacy (string, optional): The stream privacy setting (public, private, unlisted)

9. stop_stream

Stop the current active stream.

Installation

Prerequisites

  • Node.js 18 or higher
  • npm or yarn
  • Restream API credentials (Client ID and Client Secret)

Option 1: Install from npm (Recommended)

npm install -g @shaktech786/restream-mcp-server

Or install locally in your project:

npm install @shaktech786/restream-mcp-server

Option 2: Install from Source

  1. Clone this repository:
git clone https://github.com/shaktech786/restream-mcp-server.git
cd restream-mcp-server
  1. Install dependencies:
npm install
  1. Build the server:
npm run build

Configuration

Configure your Restream API credentials either through environment variables or in your Claude Desktop config:

Environment Variables (.env file):

RESTREAM_CLIENT_ID=your_client_id_here
RESTREAM_CLIENT_SECRET=your_client_secret_here
RESTREAM_API_BASE_URL=https://api.restream.io/v2

Getting Restream API Credentials

  1. Go to Restream Developer Portal
  2. Create a new application or use an existing one
  3. Copy your Client ID and Client Secret
  4. Add them to your .env file

Usage with Claude Desktop

To use this MCP server with Claude Desktop, add it to your Claude Desktop configuration file:

Windows: %APPDATA%\Claude\claude_desktop_config.json

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

If installed via npm:

{
  "mcpServers": {
    "restream": {
      "command": "npx",
      "args": ["-y", "@shaktech786/restream-mcp-server"],
      "env": {
        "RESTREAM_CLIENT_ID": "your_client_id_here",
        "RESTREAM_CLIENT_SECRET": "your_client_secret_here",
        "RESTREAM_API_BASE_URL": "https://api.restream.io/v2"
      }
    }
  }
}

If installed from source:

{
  "mcpServers": {
    "restream": {
      "command": "node",
      "args": ["/absolute/path/to/restream-mcp-server/dist/index.js"],
      "env": {
        "RESTREAM_CLIENT_ID": "your_client_id_here",
        "RESTREAM_CLIENT_SECRET": "your_client_secret_here",
        "RESTREAM_API_BASE_URL": "https://api.restream.io/v2"
      }
    }
  }
}

Restart Claude Desktop after saving the configuration.

Development

Running in Development Mode

npm run dev

This will watch for changes and rebuild automatically.

Testing the Server

You can test the server locally using the MCP Inspector:

npx @modelcontextprotocol/inspector node dist/index.js

API Endpoints Reference

This server uses the Restream API v2. The main endpoints include:

  • POST /oauth/token - Authentication
  • GET /user/profile - Get user profile
  • GET /user/channels - List channels
  • GET /user/channels/:id - Get channel details
  • PATCH /user/channels/:id - Update channel
  • GET /user/stream - Get current stream
  • PATCH /user/stream - Update stream settings
  • POST /user/stream/start - Start stream
  • POST /user/stream/stop - Stop stream
  • GET /user/analytics - Get analytics

For complete API documentation, visit Restream Developer Portal.

Example Usage with Claude

Once configured, you can ask Claude to:

  • "List all my connected streaming channels"
  • "Get my current stream information"
  • "Update my stream title to 'Live Coding Session'"
  • "Enable my YouTube channel"
  • "Show me my streaming analytics"
  • "Start a new stream with title 'Gaming Night'"

Troubleshooting

Authentication Errors

If you encounter authentication errors:

  1. Verify your Client ID and Client Secret are correct
  2. Ensure the credentials have the necessary permissions
  3. Check that the API base URL is correct

Connection Issues

If the server fails to connect:

  1. Make sure all dependencies are installed (npm install)
  2. Rebuild the server (npm run build)
  3. Check that Node.js version is 18 or higher
  4. Verify the path in Claude Desktop config is correct

Security Notes

  • Never commit your .env file to version control
  • Keep your Client ID and Client Secret secure
  • Regularly rotate your API credentials
  • The .gitignore file is configured to exclude .env

License

MIT

Contributing

Contributions are welcome! Please feel free to submit issues or pull requests.

Support

For issues with the MCP server, please file an issue on GitHub.

For Restream API questions, visit the Restream Developer Portal.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured