Provides comprehensive access to TIDAL music streaming service, including search (tracks, albums, artists, playlists), favorites management, playlist operations (create, update, delete, add/remove tracks), album and artist information retrieval, and personalized recommendations through track and artist radio.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@TIDAL MCP Serversearch for Radiohead tracks and add them to a new playlist"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
TIDAL MCP Server
A traditional MCP (Model Context Protocol) server for TIDAL music streaming service. Clean API wrapper following official MCP best practices - thin wrappers around tidalapi methods with no custom business logic.
Features
27 Tools
Category | Tool | Description |
Auth |
| OAuth browser authentication |
Search |
| Find tracks by name/artist |
| Find albums | |
| Find artists | |
| Find public playlists | |
Favorites |
| Get liked tracks |
| Get saved albums | |
| Get followed artists | |
| Like a track | |
| Unlike a track | |
| Remove saved album | |
Playlists |
| List your playlists |
| Get tracks from playlist | |
| Create new playlist | |
| Add tracks to playlist | |
| Remove tracks from playlist | |
| Update name/description | |
| Delete a playlist | |
Albums |
| Get all album tracks |
| Get album details | |
| Find similar albums | |
Artists |
| Get artist details with bio |
| Get artist discography | |
| Get popular tracks | |
| Find similar artists | |
Recommendations |
| Similar tracks to seed |
| Tracks based on artist style |
Installation
Requirements
Python 3.10+
uv (recommended) or pip
Setup
# Clone and enter directory
cd tidal-mcp
# Install with uv
uv sync
# Or with pip
pip install -e .Usage
With Claude Desktop
Add to your Claude Desktop config:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"tidal": {
"command": "/path/to/uv",
"args": [
"--directory", "/path/to/tidal-mcp",
"run", "tidal-mcp"
]
}
}
}Note: Use full path to
uv(find withwhich uv)
With MCP Inspector
npx @modelcontextprotocol/inspector uv run tidal-mcpDirect Usage
uv run tidal-mcpAuthentication
python authenticate.pyExample Workflows
Create a Playlist from Search Results
login- Authenticate with TIDALsearch_tracks("Radiohead Creep")- Find trackscreate_playlist("My Playlist", "A collection of favorites")- Create playlistadd_tracks_to_playlist(playlist_id, [track_ids...])- Add tracks
Browse and Add Album to Playlist
search_albums("OK Computer")- Find albumget_album_tracks(album_id)- Get all tracksadd_tracks_to_playlist(playlist_id, [all_track_ids...])- Add to playlist
Manage Existing Playlist
get_user_playlists()- List your playlistsget_playlist_tracks(playlist_id)- View tracksremove_tracks_from_playlist(playlist_id, track_ids=[...])- Remove tracksupdate_playlist(playlist_id, name="New Name")- Rename
Development
Project Structure
tidal-mcp/
├── pyproject.toml # Project configuration
├── README.md # This file
├── CLAUDE.md # AI development guidance
└── src/
└── tidal_mcp/
├── __init__.py # Package init
├── models.py # Pydantic response models
└── server.py # MCP server with 27 toolsDependencies
fastmcp>=2.12.0- MCP protocol frameworktidalapi>=0.8.6- TIDAL API client (v0.8.6+ required for working OAuth)anyio>=4.0.0- Async utilities
Testing
# Test with MCP Inspector
npx @modelcontextprotocol/inspector uv run tidal-mcp
# Quick protocol test
echo '{"jsonrpc": "2.0", "method": "initialize", "params": {"protocolVersion": "2024-11-05", "capabilities": {}, "clientInfo": {"name": "test", "version": "1.0.0"}}, "id": 1}' | uv run tidal-mcpTroubleshooting
Authentication Fails
Ensure tidalapi >= 0.8.6 (older versions have invalid OAuth credentials)
Delete
.tidal-sessions/and re-authenticate
Search Returns No Results
Simplify query (single artist or song name)
Check spelling
Port Conflicts (Inspector)
pkill -f "inspector|tidal-mcp"Future Roadmap
The server currently has 27 tools covering core TIDAL functionality. Potential future additions:
Remote Server: HTTP/SSE transport for Claude.ai and mobile apps (see
docs/REMOTE-DEPLOYMENT.md)Advanced Search: ISRC/UPC lookup for precise track/album identification
Playback: Queue management and now-playing info (requires TIDAL Connect)
Social: Following users, collaborative playlists
License
MIT