Dacast MCP Live Stream Server

resmi

Dacast MCP Live Stream Server, yapay zeka araçlarınızı Dacast'ın canlı yayın ve video barındırma API'lerine bağlayarak basit doğal dil komutlarıyla canlı yayınlar, oynatma listeleri, küçük resimler ve eş zamanlı yayınlar oluşturmanızı ve yönetmenizi sağlar.

Dacast Live Stream MCP ile neler yapabilirsiniz?

  • Canlı kanallar oluşturun ve yapılandırın — Asistanınızdan yeni bir kanal oluşturmasını, ayarlarını güncellemesini veya create_channel, update_channel ve get_channel kullanarak ayrıntıları almasını isteyin.
  • Video oynatma listelerini yönetincreate_playlist, update_playlist ve set_playlist_content aracılığıyla oynatma listeleri oluşturun, meta verilerini değiştirin veya hangi videoları içerdiklerini tanımlayın.
  • Küçük resim ve açılış görsellerini yönetin — İçeriğiniz için görsel öğeleri thumbnail ve splash araçlarını kullanarak yükleyin veya güncelleyin.
  • Eşzamanlı yayın hedefleri ayarlayın — Birden fazla platforma aynı anda yayın yapmak için create_simulcast_destination, get_simulcast_destination ve delete_simulcast_destination ile hedefler oluşturun, kontrol edin veya kaldırın.

Dokümantasyon

Dacast MCP Sunucusu

Bu depo, Dacast video platformu API'sini yapılandırılmış bir dizi MCP aracı olarak sunan bir Model Bağlam Protokolü (MCP) sunucusu sağlar. MCP uyumlu istemcilerin (Claude Desktop gibi) Dacast kaynaklarını (kanallar, oynatma listeleri, görüntüler, eş zamanlı yayın hedefleri ve daha fazlası) doğal dil aracılığıyla yönetmesine olanak tanır.


Özellikler

  • StdIO tabanlı MCP sunucusu

    • Standart giriş/çıkış üzerinden Model Bağlam Protokolü ile iletişim kurar.
    • Bir MCP istemci süreci tarafından başlatılmak ve bir alt süreç olarak çalışır durumda tutulmak üzere tasarlanmıştır.
  • Dacast API entegrasyonu

    • Kanal yönetimi: oluşturma, listeleme, alma, güncelleme.
    • Oynatma listesi yönetimi: oluşturma, listeleme, alma, güncelleme, oynatma listesi içeriğini ayarlama.
    • Görüntü yönetimi: küçük resimler ve açılış görüntüleri.
    • Eş zamanlı yayın hedefi yönetimi: oluşturma, alma, silme.

Kurulum

Ön Koşullar

  • Go: Go 1.24+ (daha eski sürümler çalışabilir ancak garanti edilmez).
  • Dacast hesabı ve API anahtarı: kimlik doğrulamalı işlemleri gerçekleştirmek için gereklidir.

MCP İstemci Yapılandırması

JSON tabanlı MCP istemci yapılandırması şuna benzer olabilir:

{
  "mcpServers": {
    "dacast": {
      "command": "go",
      "args": ["run", "github.com/Dacast-Inc/mcp-server-public@latest"],
      "env": {
        "DACAST_API_KEY": "DACAST API KEY HERE"
      }
    }
  }
}

Mimariye Genel Bakış

Üst düzey tasarım

Sunucu, aşağıdakileri yapan tek bir Go ikili dosyasıdır:

  1. Bir MCP stdio sunucusu başlatır.
  2. Dacast alanına göre gruplandırılmış bir dizi araç kaydeder (kanallar, oynatma listeleri, görüntüler, eş zamanlı yayın).
  3. Gelen her MCP call_tool isteği için:
    • Araç argümanlarını bağlar ve doğrular.
    • Dahili ApiClient kullanarak ilgili Dacast REST uç noktasına bir HTTP isteği oluşturur.
    • İsteği uygun kimlik doğrulama başlıklarıyla Dacast'a iletir.
    • JSON yanıtını (ve isteğe bağlı olarak dönüştürülmüş, yapılandırılmış bir formu) MCP istemcisine geri döndürür.

Ana paketler:

  • main.go – MCP sunucusunu başlatan ve araçları kaydeden giriş noktası.
  • pkg/apiclient/ – Dacast REST API'si etrafındaki minimal HTTP istemci sarmalayıcısı.
  • pkg/tools/ – alana göre gruplandırılmış araç uygulamaları:
    • channel/ – kanalla ilgili işlemler.
    • playlist/ – oynatma listesiyle ilgili işlemler.
    • images/ – küçük resim ve açılış görüntüsü işlemleri.
    • simulcast/ – eş zamanlı yayın hedefi işlemleri.
  • pkg/tools/toolscommon/ – araçlar oluşturmak için paylaşılan türler, işleyiciler ve yardımcı programlar.

Araçlar → Dacast API eşlemesi

pkg/tools/ altındaki her araç, bir veya daha fazla Dacast API uç noktasına karşılık gelir.

  • Kanallar (pkg/tools/channel/)

    • create_channel.go – yeni bir kanal oluşturur.
    • get_channel.go – kanal ayrıntılarını alır.
    • update_channel.go – mevcut bir kanalı günceller.
    • list_channel.go – tüm veya filtrelenmiş kanalları listeler.
  • Oynatma Listeleri (pkg/tools/playlist/)

    • create_playlist.go – yeni bir oynatma listesi oluşturur.
    • get_playlist.go – oynatma listesi ayrıntılarını alır.
    • update_playlist.go – mevcut bir oynatma listesini günceller.
    • list_playlist.go – oynatma listelerini listeler.
    • set_playlist_content.go – oynatma listesi içeriğini ayarlar veya günceller.
  • Görüntüler (pkg/tools/images/)

    • thumbnail.go – kanal/varlık küçük resimlerini yönetir.
    • splash.go – açılış görüntülerini yönetir.
  • Eş Zamanlı Yayın (pkg/tools/simulcast/)

    • create_simulcast_destination.go – bir eş zamanlı yayın hedefi oluşturur.
    • get_simulcast_destination.go – bir eş zamanlı yayın hedefini alır.
    • delete_simulcast_destination.go – bir eş zamanlı yayın hedefini siler.

Lisans

Bu proje, bu depodaki LICENSE dosyasında açıklanan koşullar altında lisanslanmıştır. Tam metin için lütfen bu dosyayı inceleyin.