Skip to main content

A simple Apple Music API client for MCP

Project description

MCP-AppleMusic

A FastMCP server implementation for controlling Apple Music (formerly iTunes) on macOS through AppleScript commands.

Requirements

  • Python 3.13+
  • macOS with Apple Music app installed
  • MCP library ≥1.2.1

Installation

First, ensure you have uv installed:

$ brew install uv

Then, with Claude Desktop, add the following to claude_desktop_config.json:

{
  "mcpServers": {
    "iTunesControlServer": {
      "command": "uvx",
      "args": ["-n", "mcp-applemusic"]
    }
  }
}

Available Commands

The following commands are available through the MCP server:

itunes_play()         # Start playback
itunes_pause()        # Pause playback
itunes_next()         # Skip to next track
itunes_previous()     # Go to previous track
itunes_search(query)  # Search library for tracks
itunes_play_song(song)  # Play specific song
itunes_create_playlist(name, songs)  # Create new playlist
itunes_library()      # Get library statistics

Usage

Start the server:

python server.py

Example interactions:

# Search for a song
results = itunes_search("Hey Jude")

# Create a new playlist
itunes_create_playlist("Beatles Favorites", ["Yesterday", "Hey Jude", "Let It Be"])

# Play a specific song
itunes_play_song("Hey Jude")

Development

  1. Clone the repository:
git clone https://github.com/yourusername/mcp-applemusic.git
cd mcp-applemusic
  1. Install development dependencies:
pip install -e ".[dev]"

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Notes

  • This tool only works on macOS systems due to its AppleScript dependency
  • Requires Apple Music (formerly iTunes) to be installed

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mseep_mcp_applemusic-0.1.6.tar.gz (3.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mseep_mcp_applemusic-0.1.6-py3-none-any.whl (3.3 kB view details)

Uploaded Python 3

File details

Details for the file mseep_mcp_applemusic-0.1.6.tar.gz.

File metadata

  • Download URL: mseep_mcp_applemusic-0.1.6.tar.gz
  • Upload date:
  • Size: 3.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.12

File hashes

Hashes for mseep_mcp_applemusic-0.1.6.tar.gz
Algorithm Hash digest
SHA256 c902d3cdd2258bb4d437226d3fcbcc48f23d2c4ddc2ddd54215c3178621ce542
MD5 b6dac1e1de509ce1ec99a1a57178fd24
BLAKE2b-256 ade4badd02c4233daae53649f7c0e0c5a0b33efc8e5a346b57afb151e26fbe44

See more details on using hashes here.

File details

Details for the file mseep_mcp_applemusic-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for mseep_mcp_applemusic-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 bb1164410c4e8e164e745f904dfbbb676895c39debb523b6913c50b7722a9156
MD5 c32e82cbf49c042caa3dee1a82ed808e
BLAKE2b-256 ae0c01d1f6a182c46a72ce87c854088787862c179132d112a5cdb9e948d4fbc2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page