mcpField
A
applemusic-mcp

applemusic-mcp

ローカル
github.com/ephetersonゲーム・エンタメ1235 日前に更新

applemusic-mcp について

applemusic-mcpは、MCPクライアントからApple Musicのライブラリ、プレイリスト、再生、キューを操作するMCPサーバーです。Macアプリ、Apple Music API、Webプレーヤーへのアクセスを段階的に設定でき、macOS、Windows、Linuxで動作します。

主な機能

  1. 01プレイリスト、フォルダー、曲の管理
  2. 02ライブラリとApple Musicカタログの検索
  3. 03おすすめ、チャート、再生履歴の確認
  4. 04再生、音量、Up Nextキューの操作
  5. 05権限レベルによる機能アクセス制御

活用シーン

  1. 01Apple Musicのプレイリスト整理や移行
  2. 02曲の検索とライブラリへの追加
  3. 03アルバム再生とUp Nextキューの調整

MCP 対応

Apple Musicのカタログ、プレイリスト、ライブラリ、再生、Up Nextキューを扱うツールをMCPクライアントに公開します。設定した権限レベルに応じて、Music.app、Apple Music API、Webプレーヤーを利用します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"epheterson-applemusic": {
"command": "uvx",
"args": [
"applemusic-mcp"
]
}
}
}
起動コマンドuvx applemusic-mcp

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

パッケージ
pypiapplemusic-mcp0.21.0

ツール

7

掲載時のツール一覧 · 5 日前に更新

パラメーター型必須説明
fullbooleanいいえ
namestringいいえ
albumstringいいえ
limitintegerいいえ
querystringいいえ
trackstringいいえ
actionstringいいえ
artiststringいいえ
exportstringいいえ
filterstringいいえ
folderstringいいえ
formatstringいいえ
offsetintegerいいえ
sourcestringいいえ
verifybooleanいいえ
dry_runbooleanいいえ
replacestringいいえ
auto_addanyいいえ
new_namestringいいえ
playliststringいいえ
descriptionstringいいえ
fetch_explicitanyいいえ
allow_duplicatesbooleanいいえ

詳細

applemusic-mcp

Release License macOS Python Downloads MCP

Apple Music 用の MCP サーバーです。MCP クライアント(Claude、Cursor、Cline、Windsurf)からプレイリスト、ライブラリ、カタログ、音楽の発見、再生、「次はこちら」キューを操作できます。macOS、Windows、Linux で動作します。

Mac または Apple Music のサブスクリプションがあれば利用できます。

「Road Trip というプレイリストを作成して、アップテンポな90年代オルタナティブで満たして」 · 「ワークアウト用プレイリストをシャッフル再生して、次に Bohemian Rhapsody をキューに追加して」 · 「最近聴いている曲と、チャートの上位曲を教えて」

アクセス範囲を選択

MCP クライアントの設定で、このサーバーがアクセスできる範囲を指定します。アシスタントがこの設定を変更することはできません。また、許可された範囲を超えるアクセスが必要なツールは、アシスタントに提供されません。

--levelアクセスできる範囲適した用途
musicMac の Music アプリのみ。ネットワークやブラウザーにはアクセスしません。ライブラリ、プレイリスト、再生、評価、AirPlay
api+ インターネット経由で Apple の音楽サービスカタログ全体からの検索と追加、おすすめ、Windows と Linux
web+ Safari または Chrome のウェブプレーヤー「次はこちら」キュー、Mac 以外での再生
fullMusic アプリ内でのクリック操作を含むすべてすべての機能。選択は不要です
--allow-ui(任意のレベルと併用)+ Music アプリ内でのクリック操作(macOS アクセシビリティ)サインインせずにカタログの曲を再生

まずは music から始め、より多くの機能が必要になったらレベルを上げてください。現時点では --level を省略すると full と同じになり、0.21 より前と同じ動作です。

ターミナルコマンドの代わりにガイド付きセットアップがある Mac アプリをお探しの場合は、コミュニティフォークの secure-applemusic-mcp-for-osx をご検討ください。

機能

各エンジンでできることと、それを有効にするレベルを示します。✓ は対応、✗ は対応不可、— は該当なしです。

機能Music.app (macOS) · musicApple Music API (任意の OS) · apiウェブプレーヤー(Safari / Chrome) · web
カタログ検索 / 閲覧✓✓(+ トークン不要の解決)—
おすすめ / チャート / 提案✗✓—
ライブラリ検索 / 閲覧✓✓—
ジャンル検索✓✗—
最近再生 / 追加した項目✓✓—
カタログ → ライブラリに追加✓✓✓(ページ内 POST)
ライブラリから削除✓✓—
お気に入り / 好みではない✓✓—
1~5つ星の評価✓✗✗
お気に入りリスト✓✗✗
プレイリストの作成 / 追加 / 削除 / 名前変更✓✓—
プレイリストのコピー✓✗—
プレイリストの削除✓✓(ウェブトークン)—
フォルダー:1階層 + 移動(出し入れ)✓✓—
フォルダー:ネストされたパス / ツリー / path✓✗✗
再生:曲 / アルバム / プレイリスト / URL の再生✓—✓
操作:一時停止 / 停止 / 次へ / 前へ / シーク✓—✓
設定:音量 / シャッフル / リピート✓—✓
再生中の曲✓—✓
「次はこちら」キュー:表示 / 次へ / 最後へ / 削除 / 移動 / 消去 / 自動再生✗—✓
アプリで表示✓—✓(ページに移動)
AirPlay デバイスの選択✓✗✗
ライブラリのスナップショット / 整合性✓✗✗
Apple アカウントなしで動作✓✗✗
クロスプラットフォーム(Win/Linux)✗✓✓

Music.app のカタログ検索とカタログ再生ではアプリ内をクリックするため、レベルを設定していても --allow-ui が必要です。ウェブプレーヤーでの再生とキューの操作には、デスクトップセッションが必要です。Mac では Safari(インストール不要)、それ以外では Google Chrome を使用します。エンジンの選択と上書きの方法については、設定をご覧ください。

セットアップ

必要条件: Python 3.10 以降、および Mac または Apple Music のサブスクリプション。Mac ではほかに何も必要ありません。Chrome ウェブプレーヤー(Windows、Linux、または Mac でオプトインする場合)には、Google Chrome が必要です。

Claude Code の場合は、1 行で設定します。

claude mcp add "Apple Music" -- uvx applemusic-mcp serve --level music

Claude Desktop / Cursor / Cline / Windsurf の場合は、まず一度インストールしてから、設定ブロックを追加します。

pipx install applemusic-mcp        # or: pip install applemusic-mcp
playwright install chromium        # the Chrome web player: Windows/Linux, or a Mac with the [browser] extra
{
  "mcpServers": {
    "Apple Music": {
      "command": "applemusic-mcp",
      "args": ["serve", "--level", "music"]
    }
  }
}

music を api または web に変更すると、利用範囲を広げることができます。Windows または Linux では、music の利用には Mac が必要なため、api から始めてください。設定ファイルの場所、Mac での Chrome ウェブプレーヤー、ソースからのインストールについては、設定を参照してください。

クライアントを再起動して、*「Apple Music のプレイリストを一覧表示して」または「お気に入りを再生して」*と試してみてください。macOS では、ローカルライブラリと再生がすぐに利用できます。カタログの音楽を追加する場合や、任意の OS で実行する場合は、サインインしてください。

サインイン

api と web で必要です。パスワードがこのツールに渡ることはなく、サインイン状態は保持されます。

applemusic-mcp login            # Mac: reads your signed-in Safari. Windows/Linux: opens Chrome
applemusic-mcp status           # verify

Mac では、まず Safari で music.apple.com にサインインし、Safari の Develop → Allow JavaScript from Apple Events を一度有効にしてください。login が不足しているものを正確に知らせます。プレイリストのインポートやライブラリの移行など、大量の処理を行う場合は、共有のレート制限を避けるために、ご自身の Apple デベロッパートークンを使用してください。詳細、Chrome とデベロッパートークンを使う方法、書き込みごとに使用される API については、サインインを参照してください。

ツール

7 つのアクションベースのツールにより、MCP コンテキストを小さく保てます。各ツールは action を受け取り、適切なエンジンに処理を振り分けます。

ツールアクション
playlistlist、folders、tracks、search、create、add、copy、move、remove、delete、rename、path(プレイリストとフォルダー)
librarysearch、add、browse、favorites、recently_played、recently_added、rate、remove、snapshot
catalogsearch、resolve、album_tracks、album_details、song_details、artist_details、genres、suggestions
discoverrecommendations、heavy_rotation、charts、top_songs、similar_artists、personal_station、song_station
playbackplay(トラック/アルバム/プレイリスト/URL)、control、now_playing、settings、reveal、airplay
queuelist、set、play_next、play_last、remove、jump、clear、autoplay(次に再生 — macOS では Safari、それ以外では Chrome。エンジンを選ぶには engine= を指定)
configstatus、signin、logout、reset、set-pref、audit-log、clear-audit-log、list-storefronts

バッチ処理、プレイリストのインポート、ドライラン、エクスポート形式、ストアフロントについては、使用パターンを参照してください。

CLI

applemusic-mcp serve --level music   # run the MCP server (your client calls this)
applemusic-mcp login                 # web sign-in (macOS: Safari; Windows/Linux: Chrome)
applemusic-mcp login --chrome        # use the Chrome web player on a Mac
applemusic-mcp login --dev           # your own Apple developer token (.p8)
applemusic-mcp logout                # sign out (switch accounts)
applemusic-mcp status                # auth status and permission level
applemusic-mcp reset --force         # wipe credentials (keeps your .p8 key file)
applemusic-mcp reset --all --force   # full uninstall: also removes the .p8, profile, and cache

知っておくと便利なこと

  • Music.app でカタログの曲を再生するには、--allow-ui、ロック解除済みの画面、およびアクセシビリティ権限が必要です。 アプリ内の「再生」をクリックします。すでにライブラリにある曲には、これらは必要ありません。または、--level web で mode="safari" を設定すると、代わりに Safari で再生できます。
  • Safari での再生を開始するには、実際のクリックが 1 回必要です。 新しく開いた、または再読み込みした Safari タブで初めて再生するときは、音声を開始する前にブラウザー上で実際にクリックする必要があります(標準の自動再生ルールであり、クリックを偽装することはありません)。Apple Music のタブで ▶ を一度クリックすれば、その後は再生/一時停止/次へをハンズフリーで操作できます。再生コマンドでキューの準備ができたと表示されても、トラックが 0:00 のままなら、この状態です。タブを一度クリックしてください。
  • 新しく作成したプレイリストは、API で追加できるようになるまで少し時間がかかります(クラウドへの反映に時間がかかります)。既存のプレイリストはすぐに利用できます。
  • カタログ関連のアクションが失敗し始めた場合は、 applemusic-mcp login を再実行してください。一部のユーザープレイリストでは、AppleScript による編集が通知なく元に戻ることがあります(Music.app の既知のバグ)。サーバーはこのロールバックを検出し、通知します。

Star History

Star History Chart


ライセンス

MIT · Apple とは提携も推奨も受けていない、非公式のコミュニティプロジェクトです。個人利用にはご自身の Apple Music アカウントを使用し、Apple の利用規約に従ってください。

mcp-name: io.github.epheterson/applemusic-mcp

クレジット

FastMCP · Apple MusicKit · Model Context Protocol


@epheterson と Claude Code がカリフォルニアで ❤️ を込めて開発しました。

コメント

MCP は初めてですか?

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

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