mcpField
S
Sonos Mcp

Sonos Mcp

ローカル
github.com/castbreezeゲーム・エンタメ147 週間前に更新

Sonos Mcp について

Sonos Mcpは、CastBreeze経由でSonosスピーカーを操作するMCPサーバーです。AIクライアントから音声の再生やスピーカーグループの確認を行いたいユーザー向けです。

主な機能

  1. 01CastBreezeのOAuthログイン
  2. 02Sonosスピーカーの操作
  3. 03URL・ローカル音声の再生
  4. 04音声ストリームのリピート
  5. 05音量と再生優先度の管理
  6. 06グループとプレーヤーの確認

活用シーン

  1. 01指定したスピーカーでチャイムを再生
  2. 02URLやファイルのMP3・WAVを再生
  3. 03インターネットラジオをリピート再生
  4. 04スピーカーグループとプレーヤー情報を確認

MCP 対応

互換クライアント向けにSonos操作、音声再生、デバイス照会のツールと、認証状態のリソースを提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"castbreeze": {
"command": "npx",
"args": [
"-y",
"@castbreeze/sonos-mcp"
]
}
}
}
起動コマンドnpx -y @castbreeze/sonos-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@castbreeze/sonos-mcp

ツール

6

掲載時のツール一覧 · 3 週間前に更新

このツールにパラメーターはありません。

詳細

@castbreeze/sonos-mcp

CastBreeze を通じて Sonos スピーカーを操作し、オーディオストリームを再生する Model Context Protocol(MCP)サーバーです。

機能

  • 🔐 CastBreeze での OAuth 認証
  • 🔊 MCP を通じた Sonos スピーカーの操作
  • 🎵 URL またはローカルファイルからのオーディオクリップ(MP3、WAV)の再生
  • 📻 オーディオ URL の繰り返しストリーミング
  • 🎚️ 再生の優先度と音量の管理
  • 🏠 スピーカーグループとプレーヤー情報の取得
  • 🔔 デフォルトのチャイム音の再生

インストール

NPM
npm install -g @castbreeze/sonos-mcp
PNPM
pnpm add -g @castbreeze/sonos-mcp
NPX(インストール不要)
npx @castbreeze/sonos-mcp

使用方法

Claude Desktop での使用

Claude Desktop の設定ファイルに追加します。

MacOS:~/Library/Application Support/Claude/claude_desktop_config.json Windows:%APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "castbreeze-sonos": {
      "command": "npx",
      "args": ["-y", "@castbreeze/sonos-mcp"]
    }
  }
}

または、グローバルにインストールした場合:

{
  "mcpServers": {
    "castbreeze-sonos": {
      "command": "sonos-mcp"
    }
  }
}
Cline(VS Code 拡張機能)での使用

Cline の MCP 設定(.roo/mcp.json)に追加します。

{
  "mcpServers": {
    "castbreeze-sonos": {
      "command": "node",
      "args": ["path/to/dist/index.js"]
    }
  }
}

認証

このサーバーは CastBreeze との認証に OAuth を使用します。

  1. start_login ツールを使用して OAuth フローを開始します
  2. ブラウザーで認証を完了します
  3. 認証コードを使って finish_login ツールを使用します
  4. アクセストークンは、次回以降の利用に備えて auth.json に保存されます

利用可能なツール

認証
  • start_login:OAuth ログインフローを開始します(ブラウザーが開きます)
  • finish_login:認証コードを使って OAuth ログインを完了します
再生
  • play_default_chime:デフォルトのチャイム音を再生します

    • パラメーター:players(配列または「*」)、volume(任意)、priority(任意)
  • play_audio_clip:オーディオクリップ(MP3/WAV)を再生します

    • パラメーター:players、uri(URL または file:// パス)、volume(任意)、priority(任意)
    • 対応 URI:https://、http://、file://
  • play_radio:URI を繰り返し再生します(ストリーミング)

    • パラメーター:uri、groups(任意)、volume(任意)
デバイス管理
  • get_groups:すべてのスピーカーグループとプレーヤーを取得します

利用可能なリソース

  • auth://status:現在の認証状態とトークン情報

使用例

すべてのスピーカーでチャイムを再生する
Play the default chime on my Sonos speakers
URL から MP3 を再生する
Play https://example.com/audio.mp3 on my Sonos
ローカルファイルを再生する
Play the file at /path/to/audio.mp3 on Sonos
ラジオ局をストリーミングする
Play https://stream.example.com/radio on repeat

開発

# Install dependencies
pnpm install

# Build
pnpm build

# Run with inspector
pnpm inspector

必要条件

  • Node.js >= 22.0.0
  • CastBreeze アカウント(OAuth 認証用)
  • ネットワーク上の Sonos スピーカー

プロジェクト構成

mcp/
├── src/
│   ├── index.ts           # Main MCP server implementation
│   └── server-selection.ts # Server selection utilities
├── dist/                  # Compiled JavaScript output
├── auth.json             # OAuth tokens (auto-generated)
├── package.json
└── README.md

ライセンス

MIT

コントリビューション

コントリビューションを歓迎します。お気軽に Pull Request を送信してください。

サポート

関連プロジェクト

  • CastBreeze - オーディオストリーミング自動化プラットフォーム
  • Cast to Sonos - Sonos へのキャスト用 Chrome 拡張機能

変更履歴

1.1.0
  • @castbreeze/sonos-mcp として初回の npm リリース
  • OAuth 認証に対応
  • URL およびローカルファイルからのオーディオクリップ再生
  • ラジオストリーミングに対応
  • スピーカーグループ管理

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。