Skip to main content
Glama

Twitch-MCP-Smithery

README.md4.34 kB
# Twitch MCP Server A comprehensive Twitch MCP (Model Context Protocol) server providing chat moderation, stream management, and Twitch API integration for AI systems. ## For Streamers - Use this server via Smithery → Cursor (no local install needed) - Quick setup guide: video-guide/final-setup-guide.md - Smithery server page (Playground + one‑click add to Cursor): https://smithery.ai/server/@Eclipse-XV/twitch-mcp-smithery - Recommended first tests: - "Send a message to chat: Hello from MCP!" - "Create a poll titled 'Which map?' with choices 'A, B' for 60 seconds" Note: Actions run as your broadcaster account. Test in Smithery Playground first, then use the Connect section to one‑click add to Cursor and approve. ## Overview This MCP server allows AI agents to interact with Twitch streams through a standardized set of tools. It supports: - Sending messages to chat - Creating polls and predictions - Generating clips - Analyzing chat for trends and topics - Moderating chat (timeout/ban users) - Updating stream title and category ## Getting Started ### Prerequisites - Node.js 18+ installed - Twitch API credentials (Client ID and OAuth token) - Twitch channel with appropriate permissions ### Installation 1. Clone this repository 2. Install dependencies: ``` npm install ``` ### Configuration You need to provide Twitch API credentials when connecting to the server. The following configuration options are required: | Parameter | Description | |-----------|-------------| | `twitchClientId` | Your Twitch application client ID | | `twitchAuthToken` | OAuth token (without 'oauth:' prefix) | | `twitchBroadcasterId` | Your Twitch user ID | | `twitchChannel` | Your Twitch channel name | ## Deployment on Smithery This server is configured for easy deployment on [Smithery](https://smithery.ai). 1. Push this repository to GitHub 2. Connect your GitHub account to Smithery 3. Create a new deployment, selecting this repository 4. Configure your Twitch API credentials in the Smithery dashboard ## Available Tools ### Chat Interaction - **sendMessageToChat**: Send a message to Twitch chat - **getRecentChatLog**: Get the last 20 chat messages for context - **analyzeChat**: Analyze chat for topics and activity ### Stream Management - **createTwitchPoll**: Create a poll with multiple choices - **createTwitchPrediction**: Create a prediction with outcomes - **createTwitchClip**: Create a clip of the current stream - **updateStreamTitle**: Change the stream title - **updateStreamCategory**: Change the game/category ### Moderation - **timeoutUser**: Timeout a user for a specified duration - **banUser**: Permanently ban a user from chat ## Advanced Features ### Smart User Resolution When performing moderation actions, you can provide either: 1. An exact username 2. A behavioral descriptor (e.g., "toxic", "spam") 3. A partial username match The server will attempt to resolve the appropriate user based on chat history. ### Intelligent Timeout Duration The timeout tool automatically suggests an appropriate duration based on the severity of the provided reason: - Spam/excessive emotes: 5 minutes - Toxic behavior: 30 minutes - Severe violations: 60 minutes - Other violations: 10 minutes (default) ## Known Issues & Limitations ### Image Description Support While AI assistants (like Cursor/Claude) can process and describe images, there are some considerations when using this with the Twitch MCP server: - **Image processing**: Image analysis is handled by the AI client, not the MCP server itself - **Message length**: AI-generated descriptions can be quite long. Twitch chat has a 500 character limit per message - **Auto-truncation**: The `sendMessageToChat` tool now automatically truncates messages that exceed 500 characters and notifies you when this happens - **Workaround**: For detailed image descriptions, consider asking the AI to provide a shorter summary suitable for chat ### Other Considerations - **API Rate Limits**: Twitch API has rate limits that may affect rapid successive calls - **Permissions**: Ensure your Twitch token has the necessary scopes for all desired features - **Stream Status**: Some tools (like creating clips) require an active stream ## License ISC ## Credits Based on the original Java implementation of Twitch-MCP.

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Eclipse-XV/twitch-mcp-smithery'

If you have feedback or need assistance with the MCP directory API, please join our Discord server