mcp-applemusic
MCP-AppleMusic
macOS 上の Apple Music を AI エージェントで操作するための包括的な FastMCP サーバー。
再生、プレイリスト管理、再生履歴分析、Spotify 変換、スマート DJ トランジション、オーディオデバイス制御にわたる 66 のツール を搭載。
主なスーパーパワー
Apple Music の完全制御: 再生、音量、AirPlay デバイス別レベル、EQ プリセット、リピート/シャッフルモード、MiniPlayer。
リスニングジャーナル & 月次リプレイ: ローカル SQLite データベース + バックグラウンドデーモンスクロブラーによる継続的なトラッキングと Apple Replay レポート。
クロスプラットフォーム Spotify インポーター: 公開 Spotify プレイリストとアルバムを Apple Music に直接インポート(ログインやトークンは不要)。
スマート AI DJ トランジション: BPM を自動計算し、
start/finishオフセットを調整して、途切れのないシームレスなクロスフェードを実現。ハイブリッド歌詞 & ユニバーサルリンク: LRCLIB による即時歌詞取得 + Spotify/YouTube/Tidal 間で曲を共有するためのユニバーサル
song.linkジェネレーター。プレイリスト管理 & エクスポート: ネストされたフォルダ、重複排除、自動ソート、JSON・CSV・Markdown へのエクスポート。
Related MCP server: applemusic-mcp
必要条件
macOS(Apple Music アプリがインストールされていること)
Python 3.13+
uv パッケージマネージャー(
brew install uv)
クイックセットアップ & 設定
オプション 1: Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json に追加:
{
"mcpServers": {
"applemusic": {
"command": "uvx",
"args": ["git+https://github.com/suleyman416/mcp-applemusic.git"]
}
}
}オプション 2: Cursor / Windsurf / VS Code(Cline & Roo Code)
MCP 設定に追加:
{
"mcpServers": {
"applemusic": {
"command": "uvx",
"args": ["git+https://github.com/suleyman416/mcp-applemusic.git"]
}
}
}macOS 権限に関する注意: 初回実行時、macOS は AI クライアントまたはターミナルが Music.app を制御するための許可を求めます。許可 をクリックしてください(または システム設定 > プライバシーとセキュリティ > 自動化 を確認してください)。
自然言語コマンドの例
接続後、AI エージェントに自然に話しかけることができます:
再生 & オーディオ:
"Dave の Location を再生"
"音量を 80% に設定して、EQ を Hip-Hop に切り替えて"
"オーディオ出力を AirPods Pro に切り替えて"
"Gym プレイリストでシャッフルをオンにして"
発見 & 変換:
"この Spotify プレイリストをインポート:
https://open.spotify.com/playlist/...""現在再生中の曲のユニバーサル共有リンクを生成して"
"UK トップ 10 の Apple Music チャートを表示して"
"この曲の歌詞を取得して"
分析 & リプレイ:
"8 月の Replay レポートを教えて"
"私の音楽リスニングパーソナリティプロフィールは?"
"最近の 10 曲の再生履歴を表示して"
DJ & ライブラリ管理:
"'Party' プレイリストのスマート DJ クロスフェードを設定して"
"'Favorites' プレイリストの重複曲を検索して削除して"
"'Chill Vibes' プレイリストを Markdown にエクスポートして"
全 66 ツールの完全スイート
# 1. Playback & Track Control
itunes_play() # Start playback
itunes_pause() # Pause playback
itunes_next() # Skip to next track
itunes_previous() # Go to previous track
itunes_current_track() # Get currently playing track info
itunes_set_volume(volume) # Set volume (0–100)
itunes_mute(muted) # Mute or unmute audio
itunes_shuffle(enabled) # Enable or disable shuffle
itunes_set_shuffle_mode(mode) # Set shuffle granularity ('songs', 'albums', 'groupings')
itunes_repeat(mode) # Set repeat mode ('off', 'one', 'all')
itunes_seek(seconds) # Seek/jump to timestamp in seconds
itunes_get_position() # Get elapsed position & total duration
itunes_favorite_track(favorited) # Favorite or unfavorite currently playing track
itunes_favorite_song(song, favorited) # Favorite or unfavorite any song by title
itunes_dislike_track(disliked) # Mark current track as Disliked for algorithms
itunes_rate_track(stars) # Set star rating (1–5 stars)
itunes_favorite_album(favorited) # Star or unstar currently playing album
itunes_rate_album(stars) # Set star rating on currently playing album
itunes_get_lyrics(song) # Get lyrics with global database fallback
itunes_set_eq(preset) # Set Equalizer preset (e.g. 'Hip-Hop', 'Bass Booster')
itunes_open_location(url) # Stream audio URL or music:// link
itunes_get_stream_info() # Get live radio / stream station title & URL
# 2. Audio Quality & Technical Inspection
itunes_get_track_audio_info(song) # Inspect bit rate, sample rate, BPM, cloud status, format
itunes_set_track_bpm(bpm, song) # Set BPM tempo on a track
itunes_set_track_start_finish(start, finish, song) # Set custom start/finish offsets
itunes_set_track_volume_adjustment(adj, song) # Set track volume adjustment (-100% to +100%)
# 3. Deep Tagging & Metadata Editor
itunes_get_track_metadata(song) # Inspect genre, composer, track/disc numbers, comments, dates
itunes_edit_track_metadata(...) # Update metadata tags (genre, composer, comment, year)
itunes_get_artwork_info(song) # Inspect album artwork format, description & status
# 4. Library, Catalog & Artist Discovery
itunes_search(query) # Search local/iCloud library for tracks
itunes_search_catalog(query, limit) # Search global Apple Music catalog (100M+ tracks)
itunes_get_artist_top_tracks(artist, limit)# Get top songs for any artist worldwide
itunes_get_artist_albums(artist, limit) # Get official albums for any artist worldwide
itunes_play_song(song) # Find and play a specific song
# 5. Cross-Platform Converters & Curation
itunes_import_from_spotify(url, name) # Import public Spotify playlist/album directly into Apple Music
itunes_generate_share_link(song) # Generate universal share link (song.link) for all platforms
itunes_get_top_charts(country, limit) # Fetch official Apple Music Daily Top 100 Charts
itunes_get_new_releases(country, limit) # Fetch official Apple Music latest album releases
itunes_dj_auto_transition(playlist, crossfade) # Configure smart DJ radio-style crossfades across playlist
itunes_get_listening_personality() # AI analysis of your listening archetype & signature vibes
# 6. Playlist & Folder Management
itunes_create_playlist(name) # Create a new playlist
itunes_create_playlist_folder(name) # Create a playlist folder
itunes_move_playlist_to_folder(playlist, folder) # Move playlist into a folder
itunes_set_playlist_description(playlist, description) # Set playlist description
itunes_add_to_playlist(song, playlist) # Add a song to a named playlist (cross-playlist search)
itunes_remove_from_playlist(song, playlist)# Remove a track from a playlist by song title
itunes_move_playlist_track(playlist, from, to) # Move track position in playlist
itunes_sort_playlist(playlist, sort_by) # Sort playlist by 'title', 'artist', or 'album'
itunes_favorite_playlist(playlist, favorited)# Star or unstar a playlist in sidebar
itunes_duplicate_playlist(source, new_name)# Clone an existing playlist into a new one
itunes_merge_playlists(play_a, play_b, new)# Merge two playlists into a new master playlist
itunes_find_duplicates(playlist, remove) # Detect duplicate tracks in a playlist
itunes_delete_playlist(playlist) # Delete a user playlist
itunes_list_playlists() # List all playlists with track counts
itunes_get_playlist_tracks(playlist) # Get all tracks in a playlist
itunes_export_playlist(playlist, format) # Export playlist to JSON, CSV, or Markdown
# 7. Listening Journal & Replay Analytics
itunes_get_monthly_replay(year, month) # Generate Apple Music Replay report (hours, top songs/artists)
itunes_get_listening_history(limit, artist)# Chronological playback journal with timestamps & skips
itunes_get_listening_stats_by_date(start, end) # Custom date-range listening analytics & top charts
itunes_log_current_play() # Manually record current track to journal database
# 8. Audio Devices & UI Controls
itunes_list_devices() # List AirPlay audio output devices & active status
itunes_set_device(device_name) # Switch audio output device (AirPods, HomePod, TV)
itunes_set_device_volume(device, volume) # Set individual volume for specific AirPlay device
itunes_get_selected_tracks() # Get tracks highlighted by user in Music window
itunes_set_miniplayer(enabled) # Toggle MiniPlayer window mode
itunes_reveal_track(song) # Reveal & highlight track in Music window
itunes_get_stats() # Generate library analytics (tracks, hours, favorites)開発 & コントリビューション
リポジトリをクローン:
git clone https://github.com/suleyman416/mcp-applemusic.git
cd mcp-applemusic開発モードで実行:
uv run mcp_applemusic.pyプルリクエストを送信!
ライセンス
MIT ライセンス。詳細は LICENSE を参照してください。
Maintenance
Related MCP Servers
- Flicense-qualityDmaintenanceAllows controlling Apple Music on macOS through an MCP server that supports playback control, volume adjustment, and music search functionality.2
- Alicense-qualityAmaintenanceMCP server for Apple Music that lets AI assistants manage playlists, control playback, and browse the music library.81MIT
- Alicense-qualityFmaintenanceMCP server for controlling Apple Music on macOS using JXA (JavaScript for Automation). Manage playback, search tracks, create playlists, and more without API keys.14MIT
- Alicense-qualityCmaintenanceMCP server for controlling Apple Music on macOS via AppleScript, enabling playlist management, playback control, and library search through natural language.141MIT
Related MCP Connectors
MCP connector for iMessage & Contacts via a local Mac agent + Vercel relay
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/suleyman416/mcp-applemusic'
If you have feedback or need assistance with the MCP directory API, please join our Discord server