Dacast について
Dacast MCP Serverは、Dacastの動画プラットフォームAPIをMCP対応クライアント向けのツールとして公開します。標準入出力で通信し、チャンネル、プレイリスト、画像、同時配信先を管理できます。
主な機能
- 01チャンネル管理
- 02プレイリストとコンテンツの管理
- 03サムネイルとスプラッシュ画像の管理
- 04同時配信先の管理
- 05標準入出力による通信
活用シーン
- 01動画チャンネルの作成や更新
- 02プレイリストのコンテンツ整理
- 03動画のサムネイルやスプラッシュ画像の管理
- 04同時配信先の設定
MCP 対応
このMCPサーバーは、Dacast APIのツールを対応クライアントに提供します。クライアントはリソース管理を呼び出し、JSON形式の結果を受け取れます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Dacast MCP サーバー
このリポジトリは、Dacast 動画プラットフォームの API を構造化された MCP ツールとして公開する Model Context Protocol(MCP)サーバーを提供します。MCP 対応クライアント(Claude Desktop など)を通じて、チャンネル、プレイリスト、画像、同時配信先などの Dacast リソースを自然言語で管理できます。
機能
-
StdIO ベースの MCP サーバー
- 標準入力/出力を介して Model Context Protocol を使用します。
- MCP クライアントのプロセスによって起動され、子プロセスとして動作し続けるように設計されています。
-
Dacast API との統合
- チャンネル管理:作成、一覧表示、取得、更新。
- プレイリスト管理:作成、一覧表示、取得、更新、プレイリストコンテンツの設定。
- 画像管理:サムネイルとスプラッシュ画像。
- 同時配信先の管理:作成、取得、削除。
インストール
前提条件
- Go:Go 1.24 以降(以前のバージョンでも動作する可能性がありますが、保証されません)。
- Dacast アカウントと API キー:認証が必要な操作を行うために必要です。
MCP クライアントの設定
JSON ベースの MCP クライアント設定は次のようになります。
{
"mcpServers": {
"dacast": {
"command": "go",
"args": ["run", "github.com/Dacast-Inc/mcp-server-public@latest"],
"env": {
"DACAST_API_KEY": "DACAST API KEY HERE"
}
}
}
}
アーキテクチャの概要
高レベル設計
このサーバーは、次の処理を行う単一の Go バイナリです。
- MCP stdio サーバーを起動します。
- Dacast のドメイン(チャンネル、プレイリスト、画像、同時配信)ごとにグループ化されたツールを登録します。
- MCP の
call_toolリクエストを受信するたびに、次の処理を行います。- ツールの引数をバインドして検証します。
- 内部の
ApiClientを使用して、該当する Dacast REST エンドポイントへの HTTP リクエストを構築します。 - 適切な認証ヘッダーを付けて、リクエストを Dacast に転送します。
- JSON レスポンス(および必要に応じて変換された構造化形式)を MCP クライアントに返します。
主要なパッケージ:
main.go– MCP サーバーを初期化し、ツールを登録するエントリーポイントです。pkg/apiclient/– Dacast REST API 用の最小限の HTTP クライアントラッパーです。pkg/tools/– ドメインごとにグループ化されたツールの実装です。channel/– チャンネル関連の操作。playlist/– プレイリスト関連の操作。images/– サムネイルとスプラッシュ画像の操作。simulcast/– 同時配信先の操作。
pkg/tools/toolscommon/– ツールの構築に使用する共通の型、ハンドラー、ユーティリティです。
ツールと Dacast API の対応関係
pkg/tools/ 内の各ツールは、1 つ以上の Dacast API エンドポイントに対応します。
-
チャンネル(
pkg/tools/channel/)create_channel.go– 新しいチャンネルを作成します。get_channel.go– チャンネルの詳細を取得します。update_channel.go– 既存のチャンネルを更新します。list_channel.go– すべてのチャンネルまたは絞り込んだチャンネルを一覧表示します。
-
プレイリスト(
pkg/tools/playlist/)create_playlist.go– 新しいプレイリストを作成します。get_playlist.go– プレイリストの詳細を取得します。update_playlist.go– 既存のプレイリストを更新します。list_playlist.go– プレイリストを一覧表示します。set_playlist_content.go– プレイリストのコンテンツを設定または更新します。
-
画像(
pkg/tools/images/)thumbnail.go– チャンネル/アセットのサムネイルを管理します。splash.go– スプラッシュ画像を管理します。
-
同時配信(
pkg/tools/simulcast/)create_simulcast_destination.go– 同時配信先を作成します。get_simulcast_destination.go– 同時配信先を取得します。delete_simulcast_destination.go– 同時配信先を削除します。
ライセンス
このプロジェクトは、このリポジトリ内の LICENSE ファイルに記載された条件に基づいてライセンスされています。全文については、そのファイルをご確認ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。