Dacast MCP Live Stream Server Server
oficialO servidor Dacast MCP Live Stream Server conecta suas ferramentas de IA às APIs de transmissão ao vivo e hospedagem de vídeo da Dacast, permitindo criar e gerenciar transmissões ao vivo, playlists, miniaturas e simulcasts usando comandos simples em linguagem natural.
Documentação
Servidor Dacast MCP
Este repositório fornece um servidor Model Context Protocol (MCP) que expõe a API da plataforma de vídeo Dacast como um conjunto de ferramentas MCP estruturadas. Ele permite que clientes compatíveis com MCP (como o Claude Desktop) gerenciem recursos do Dacast — canais, playlists, imagens, destinos de transmissão simultânea e muito mais — por meio de linguagem natural.
Funcionalidades
-
Servidor MCP baseado em StdIO
- Comunica-se através do Model Context Protocol via entrada/saída padrão.
- Projetado para ser iniciado por um processo cliente MCP e mantido em execução como um processo filho.
-
Integração com a API Dacast
- Gerenciamento de canais: criar, listar, obter, atualizar.
- Gerenciamento de playlists: criar, listar, obter, atualizar, definir conteúdo da playlist.
- Gerenciamento de imagens: miniaturas e imagens de abertura.
- Gerenciamento de destinos de transmissão simultânea: criar, obter, excluir.
Instalação
Pré-requisitos
- Go: Go 1.24+ (versões anteriores podem funcionar, mas não são garantidas).
- Conta Dacast e chave de API: necessários para realizar operações autenticadas.
Configuração do Cliente MCP
A configuração do cliente MCP baseada em JSON pode se parecer com:
{
"mcpServers": {
"dacast": {
"command": "go",
"args": ["run", "github.com/Dacast-Inc/mcp-server-public@latest"],
"env": {
"DACAST_API_KEY": "DACAST API KEY HERE"
}
}
}
}
Visão Geral da Arquitetura
Design de alto nível
O servidor é um único binário Go que:
- Inicia um servidor MCP stdio.
- Registra um conjunto de ferramentas agrupadas por domínio Dacast (canais, playlists, imagens, transmissão simultânea).
- Para cada solicitação MCP
call_toolrecebida:- Vincula e valida os argumentos da ferramenta.
- Constrói uma requisição HTTP para o endpoint REST Dacast relevante usando o
ApiClientinterno. - Encaminha a requisição para o Dacast com os cabeçalhos de autenticação apropriados.
- Retorna a resposta JSON (e, opcionalmente, uma forma estruturada transformada) de volta ao cliente MCP.
Pacotes principais:
main.go– ponto de entrada que inicializa o servidor MCP e registra as ferramentas.pkg/apiclient/– wrapper mínimo de cliente HTTP em torno da API REST Dacast.pkg/tools/– implementações de ferramentas agrupadas por domínio:channel/– operações relacionadas a canais.playlist/– operações relacionadas a playlists.images/– operações de miniaturas e imagens de abertura.simulcast/– operações de destinos de transmissão simultânea.
pkg/tools/toolscommon/– tipos compartilhados, manipuladores e utilitários para construção de ferramentas.
Mapeamento Ferramentas → API Dacast
Cada ferramenta em pkg/tools/ corresponde a um ou mais endpoints da API Dacast.
-
Canais (
pkg/tools/channel/)create_channel.go– criar um novo canal.get_channel.go– obter detalhes do canal.update_channel.go– atualizar um canal existente.list_channel.go– listar todos os canais ou filtrá-los.
-
Playlists (
pkg/tools/playlist/)create_playlist.go– criar uma nova playlist.get_playlist.go– obter detalhes da playlist.update_playlist.go– atualizar uma playlist existente.list_playlist.go– listar playlists.set_playlist_content.go– definir ou atualizar o conteúdo da playlist.
-
Imagens (
pkg/tools/images/)thumbnail.go– gerenciar miniaturas de canais/ativos.splash.go– gerenciar imagens de abertura.
-
Transmissão Simultânea (
pkg/tools/simulcast/)create_simulcast_destination.go– criar um destino de transmissão simultânea.get_simulcast_destination.go– recuperar um destino de transmissão simultânea.delete_simulcast_destination.go– excluir um destino de transmissão simultânea.
Licença
Este projeto está licenciado sob os termos descritos no arquivo LICENSE neste repositório. Por favor, revise esse arquivo para o texto completo.