start_stream
Initiate a new live stream across multiple platforms with customizable title, description, and privacy settings through the Restream API.
Instructions
Start a new stream with optional settings
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| title | No | The stream title | |
| description | No | The stream description | |
| privacy | No | The stream privacy setting |
Implementation Reference
- src/restream-client.ts:169-176 (handler)The core handler function `startStream` that makes the POST request to the Restream API endpoint '/user/stream/start' to initiate a new stream with optional settings.async startStream(settings?: StreamSettings): Promise<Stream> { try { const response = await this.axiosInstance.post<Stream>('/user/stream/start', settings || {}); return response.data; } catch (error) { throw this.handleError(error, 'Failed to start stream'); } }
- src/index.ts:288-298 (handler)The MCP server dispatch handler for the 'start_stream' tool, which invokes the RestreamClient's startStream method and formats the response.case 'start_stream': { const stream = await restreamClient.startStream(args || {}); return { content: [ { type: 'text', text: JSON.stringify(stream, null, 2), }, ], }; }
- src/index.ts:137-157 (registration)Registration of the 'start_stream' tool in the MCP tools list, including name, description, and input schema.name: 'start_stream', description: 'Start a new stream with optional settings', inputSchema: { type: 'object', properties: { title: { type: 'string', description: 'The stream title', }, description: { type: 'string', description: 'The stream description', }, privacy: { type: 'string', enum: ['public', 'private', 'unlisted'], description: 'The stream privacy setting', }, }, }, },
- src/types.ts:45-49 (schema)TypeScript interface defining the StreamSettings used for input parameters to the startStream function.export interface StreamSettings { title?: string; description?: string; privacy?: 'public' | 'private' | 'unlisted'; }