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": ["-p", "3.13", "-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
- Clone the repository:
git clone https://github.com/yourusername/mcp-applemusic.git
cd mcp-applemusic
- Install development dependencies:
pip install -e ".[dev]"
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - 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
Metadata
Release files for mcp-applemusic-fastmcp 0.1.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mcp_applemusic_fastmcp-0.1.6.tar.gz | 4.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mcp_applemusic_fastmcp-0.1.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.4 kB
Release files / mcp_applemusic_fastmcp-0.1.6.tar.gz
| Download URL | mcp_applemusic_fastmcp-0.1.6.tar.gz |
|---|---|
| Size | 4.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b6dbadf844bc2decbd8dfef90a2842a0cc76a6be8d01a7df1a59725bcd2a1fde
|
|
BLAKE2b-256 checksum How to use checksums |
bf06520c79fb9077291afeb6fc725fdbcf87b98a7f094ba7179510898ad8fc4e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.22
|
Release files / mcp_applemusic_fastmcp-0.1.6-py3-none-any.whl
| Download URL | mcp_applemusic_fastmcp-0.1.6-py3-none-any.whl |
|---|---|
| Size | 5.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b74025c349dce1ac81b9b282150ad9038c8a3c54e5199e40199e6ed03d2c41e4
|
|
BLAKE2b-256 checksum How to use checksums |
6bc2b01934f7b08c804a88b2dfb7a9498f0d28702721e92e8b019c6d893226c1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.22
|