applemusic-mcp-server
The applemusic-mcp-server is a Rust-based server designed to manage music data using the Apple Music API. It combines high performance with security, making it useful for building music streaming services. Leveraging Rust's characteristics, it enables efficient data processing.
GitHub Stars
2
User Rating
Not Rated
Favorites
0
Views
30
Forks
0
Issues
5
Apple Music MCP Server
An MCP server for interacting with the Apple Music API. This server provides tools for searching songs, generating playback links.
Features
- Search for songs by title, artist, or album
- Generate deep links for songs and playlists
- Simple command-line interface
- Uses the Model Context Protocol (MCP) to interact with clients
Requirements
- Rust (nightly, because of rmcp)
- Apple Developer account with Apple Music API access
- Apple Music API Key (.p8 file)
Installation
# Build the project
cargo install --path .
Usage
The Apple Music MCP server requires authentication credentials to access the Apple Music API. These are provided via command-line arguments.
cargo run -- --team-id YOUR_TEAM_ID --key-id YOUR_KEY_ID --private-key-path /path/to/AuthKey.p8
Command-line Arguments
Usage: applemusic-mcp-server [OPTIONS]
Options:
--team-id <TEAM_ID> Apple Developer Team ID
--key-id <KEY_ID> Apple Music Key ID
--private-key-path <PRIVATE_KEY_PATH> Path to the Apple Music private key file (.p8)
--storefront <STOREFRONT> Storefront for Apple Music (e.g. us, jp) [default: jp]
-h, --help Print help
-V, --version Print version
API Tools
searchSongs
Search for songs from Apple Music by title, album name, or artist name.
Parameters:
query: (string) - The search query text
Returns:
- Array of Song objects with details including title, artist, album, duration, and URLs
generatePlaybackLink
Generate a deep link for playback of a song or playlist.
Parameters:
- Either
song_idorplaylist_idmust be provided
Returns:
- Object containing the Apple Music URL
echokit_server is a high-performance server software built in Rust, offering efficient data processing and API management. Designed for developers, it boasts high scalability and adaptability for various applications. It is particularly well-suited for real-time data processing and microservices architecture.