spotify について
@striderlabs/mcp-spotifyは、AIエージェントからSpotifyの音楽検索、プレイリスト管理、再生操作を行うためのサーバーです。OAuth 2.0 PKCEで認証し、トークンをローカルに保存して自動更新します。
主な機能
- 01曲、アーティスト、アルバム、プレイリストの検索
- 02プレイリストの作成と編集
- 03再生と音量の操作
- 04Spotify Connectデバイスの一覧表示と切り替え
- 05OAuth 2.0 PKCE認証とローカルトークン更新
活用シーン
- 01曲、アーティスト、アルバム、プレイリストから音楽を検索
- 02曲をSpotifyプレイリストに整理
- 03利用可能なSpotifyデバイスで再生を操作
MCP 対応
このMCPサーバーは、Spotifyの検索、プレイリスト、認証、再生操作のツールをstdio経由でMCPクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
15掲載時のツール一覧 · 2 週間前に更新
このツールにパラメーターはありません。
詳細
@striderlabs/mcp-spotify
Spotify 向け MCP サーバー — AI エージェントが Spotify Web API を使って、音楽を検索し、再生を操作し、プレイリストを管理できます。
Strider Labs が開発しました。
機能
- 検索 — トラック、アーティスト、アルバム、プレイリストを検索します
- プレイリスト — プレイリストの表示、作成、編集ができます
- 再生コントロール — 再生、一時停止、スキップ、前のトラックへの移動、音量の設定ができます
- マルチデバイス — Spotify Connect デバイスの一覧表示と切り替えができます
- OAuth 2.0 — PKCE による安全な認証(クライアントシークレットは不要です)
- トークンの永続化 — トークンはローカルに保存され、自動更新されます
セットアップ
1. Spotify アプリを作成する
- Spotify Developer Dashboard にアクセスします
- Create App をクリックします
- Redirect URI に
http://localhost:8888/callbackを設定します - Client ID をコピーします
2. インストール
npx @striderlabs/mcp-spotify
または、グローバルにインストールします:
npm install -g @striderlabs/mcp-spotify
3. Claude Desktop を設定する
claude_desktop_config.json に追加します:
{
"mcpServers": {
"spotify": {
"command": "npx",
"args": ["-y", "@striderlabs/mcp-spotify"],
"env": {
"SPOTIFY_CLIENT_ID": "your_client_id_here"
}
}
}
}
4. 認証する
Claude で、認証ツールを一度呼び出します:
spotify_auth
認証を許可するためのブラウザーウィンドウが開きます。許可すると、トークンはローカルの ~/.striderlabs/spotify/tokens.json に保存され、自動更新されます。
環境変数
| 変数 | 必須 | 説明 |
|---|---|---|
SPOTIFY_CLIENT_ID | はい | Spotify アプリの Client ID |
ツール
認証
| ツール | 説明 |
|---|---|
spotify_status | 接続状態とログイン中のアカウントを確認します |
spotify_auth | ブラウザーで認証します(OAuth 2.0 PKCE) |
spotify_logout | 保存されたトークンを消去します |
検索
| ツール | パラメーター | 説明 |
|---|---|---|
search_tracks | query, limit? | 曲を検索します |
search_artists | query, limit? | アーティストを検索します |
search_albums | query, limit? | アルバムを検索します |
search_playlists | query, limit? | プレイリストを検索します |
プレイリスト
| ツール | パラメーター | 説明 |
|---|---|---|
get_playlists | limit? | プレイリストを取得します |
create_playlist | name, description?, public? | 新しいプレイリストを作成します |
add_to_playlist | playlistId, uris[], position? | トラックを追加します |
remove_from_playlist | playlistId, uris[] | トラックを削除します |
再生
| ツール | パラメーター | 説明 |
|---|---|---|
get_currently_playing | — | 再生中のトラック、再生位置、デバイスを取得します |
play | deviceId?, contextUri?, uris?[], offsetPosition?, positionMs? | 再生を開始または再開します |
pause | deviceId? | 再生を一時停止します |
next_track | deviceId? | 次のトラックにスキップします |
previous_track | deviceId? | 前のトラックに戻ります |
set_volume | volumePercent, deviceId? | 音量を設定します(0–100) |
get_devices | — | Spotify Connect デバイスを一覧表示します |
transfer_playback | deviceId, play? | 再生デバイスを切り替えます |
ワークフローの例
1. spotify_status → check if authenticated
2. spotify_auth → open browser to authorize (first time)
3. search_tracks query="Bohemian Rhapsody"
4. get_devices → list available devices
5. play uris=["spotify:track:..."] deviceId="..."
6. get_currently_playing → see what's playing
7. set_volume volumePercent=70
8. next_track → skip to next
9. get_playlists → see your playlists
10. create_playlist name="AI Picks"
11. add_to_playlist playlistId="..." uris=["spotify:track:..."]
要件
- Node.js 18+
- Spotify アカウント(Free または Premium)
- 音量と再生の操作には Spotify Premium が必要です
技術詳細
- プロトコル:stdio を介した Model Context Protocol(MCP)
- 認証:PKCE を使用した OAuth 2.0 Authorization Code
- API:Spotify Web API v1
- トークンの保存先:
~/.striderlabs/spotify/tokens.json - ブラウザー自動化:Playwright(OAuth のブラウザー起動用)
ライセンス
MIT — Strider Labs
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。