CAT
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Cross AI Tools

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by @mertduzgun

Independent project, not affiliated with Anthropic

Tidal Mcp

ibeal/tidal-mcp
440 toolsSTDIOregistry active
Summary

Connects Claude to TIDAL's music streaming service through their API. Exposes search across tracks, albums, artists, and playlists, plus full playlist management including creation, editing, reordering, and deletion. The main workflow centers on recommendations: you can ask for tracks similar to your recent favorites but filtered by criteria like release year, tempo, or mood, and the LLM uses TIDAL's similarity API to build custom playlists directly in your account. This is a community fork that adds Docker support, pagination for large playlists, and search functionality missing from the original. Authentication happens via OAuth with a browser flow, and sessions persist across restarts. Useful when you want programmatic music curation that goes beyond platform defaults.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

Tools

Public tool metadata for what this MCP can expose to an agent.

40 tools
tidal_searchSearch Tidal for artists, albums, tracks, videos, or playlists2 params

Search Tidal for artists, albums, tracks, videos, or playlists

Parameters* required
typestring
Type of content to searchone of artist · album · track · video · playlist
querystring
Search query
tidal_search_suggestionsGet search suggestions and direct hits for a query1 params

Get search suggestions and direct hits for a query

Parameters* required
querystring
Search query
tidal_artist_infoGet artist details including biography1 params

Get artist details including biography

Parameters* required
artistIdstring
Tidal artist ID
tidal_artist_tracksGet top tracks for an artist1 params

Get top tracks for an artist

Parameters* required
artistIdstring
Tidal artist ID
tidal_artist_albumsGet albums by an artist1 params

Get albums by an artist

Parameters* required
artistIdstring
Tidal artist ID
tidal_similar_artistsFind artists similar to a given artist1 params

Find artists similar to a given artist

Parameters* required
artistIdstring
Tidal artist ID
tidal_artist_radioGet radio playlists based on an artist1 params

Get radio playlists based on an artist

Parameters* required
artistIdstring
Tidal artist ID
tidal_track_infoGet track details including artists, album, BPM, key1 params

Get track details including artists, album, BPM, key

Parameters* required
trackIdstring
Tidal track ID
tidal_track_radioGet radio playlists based on a track1 params

Get radio playlists based on a track

Parameters* required
trackIdstring
Tidal track ID
tidal_track_by_isrcFind tracks by ISRC code1 params

Find tracks by ISRC code

Parameters* required
isrcstring
ISRC code (e.g., USRC11700101)
tidal_similar_tracksFind tracks similar to a given track1 params

Find tracks similar to a given track

Parameters* required
trackIdstring
Tidal track ID
tidal_album_infoGet album details including artists and cover art1 params

Get album details including artists and cover art

Parameters* required
albumIdstring
Tidal album ID
tidal_album_by_barcodeFind albums by barcode/UPC1 params

Find albums by barcode/UPC

Parameters* required
barcodestring
Album barcode (UPC/EAN)
tidal_playlist_listList your playlists

List your playlists

No parameter schema in public metadata yet.

tidal_playlist_createCreate a new playlist2 params

Create a new playlist

Parameters* required
namestring
Playlist name
descriptionstring
Playlist descriptiondefault:
tidal_playlist_renameRename a playlist2 params

Rename a playlist

Parameters* required
namestring
New name
playlistIdstring
Playlist ID
tidal_playlist_deleteDelete a playlist1 params

Delete a playlist

Parameters* required
playlistIdstring
Playlist ID
tidal_playlist_add_trackAdd a track to a playlist2 params

Add a track to a playlist

Parameters* required
trackIdstring
Track ID
playlistIdstring
Playlist ID
tidal_playlist_remove_trackRemove a track from a playlist2 params

Remove a track from a playlist

Parameters* required
trackIdstring
Track ID
playlistIdstring
Playlist ID
tidal_playlist_add_albumAdd all tracks from an album to a playlist2 params

Add all tracks from an album to a playlist

Parameters* required
albumIdstring
Album ID
playlistIdstring
Playlist ID
tidal_playlist_move_trackMove a track to a different position in a playlist3 params

Move a track to a different position in a playlist

Parameters* required
trackIdstring
Track ID
playlistIdstring
Playlist ID
positionBeforestring
Item ID to place before, or "end"default: end
tidal_playlist_update_descriptionUpdate playlist description2 params

Update playlist description

Parameters* required
playlistIdstring
Playlist ID
descriptionstring
New description
tidal_library_addAdd an item to your library/favorites2 params

Add an item to your library/favorites

Parameters* required
resourceIdstring
Item ID
resourceTypestring
Type of itemone of artist · album · track · video
tidal_library_removeRemove an item from your library/favorites2 params

Remove an item from your library/favorites

Parameters* required
resourceIdstring
Item ID
resourceTypestring
Type of itemone of artist · album · track · video
tidal_library_favorited_playlistsList your favorited playlists

List your favorited playlists

No parameter schema in public metadata yet.

tidal_library_add_playlist_favoriteAdd a playlist to favorites1 params

Add a playlist to favorites

Parameters* required
playlistIdstring
Playlist ID
tidal_library_remove_playlist_favoriteRemove a playlist from favorites1 params

Remove a playlist from favorites

Parameters* required
playlistIdstring
Playlist ID
tidal_playback_infoGet playback/streaming info for a track2 params

Get playback/streaming info for a track

Parameters* required
qualitystring
Audio qualityone of LOW · HIGH · LOSSLESS · HI_RESdefault: HIGH
trackIdstring
Track ID
tidal_playback_urlGet stream URL for a track2 params

Get stream URL for a track

Parameters* required
qualitystring
Audio qualityone of LOW · HIGH · LOSSLESS · HI_RESdefault: HIGH
trackIdstring
Track ID
tidal_recommendationsGet personalized music recommendations across daily, discovery, new-release, and offline mixes1 params

Get personalized music recommendations across daily, discovery, new-release, and offline mixes

Parameters* required
categorystring
Filter to a single mix categoryone of daily · discovery · new-release · offline
tidal_mix_itemsGet items inside a specific mix returned by tidal_recommendations2 params

Get items inside a specific mix returned by tidal_recommendations

Parameters* required
mixIdstring
Mix ID from tidal_recommendations
categorystring
Mix categoryone of daily · discovery · new-release · offline
tidal_search_historyList your recent search queries

List your recent search queries

No parameter schema in public metadata yet.

tidal_search_history_deleteDelete a single search history entry1 params

Delete a single search history entry

Parameters* required
entryIdstring
Search history entry ID
tidal_search_history_clearClear all search history entries

Clear all search history entries

No parameter schema in public metadata yet.

tidal_saved_listList items saved for later (separate from main library)

List items saved for later (separate from main library)

No parameter schema in public metadata yet.

tidal_saved_addSave an item for later without adding it to the main library2 params

Save an item for later without adding it to the main library

Parameters* required
itemIdstring
Item ID
itemTypestring
Item typeone of tracks · albums · artists · playlists · videos
tidal_saved_removeRemove an item from the save-for-later list2 params

Remove an item from the save-for-later list

Parameters* required
itemIdstring
Item ID
itemTypestring
Item typeone of tracks · albums · artists · playlists · videos
tidal_share_createCreate a public share link for a track or album2 params

Create a public share link for a track or album

Parameters* required
resourceIdstring
Resource ID
resourceTypestring
Type of resource to shareone of tracks · albums
tidal_recently_addedGet recently added items from your library1 params

Get recently added items from your library

Parameters* required
typestring
Type of itemsone of tracks · albums · artists
tidal_user_profileGet your Tidal user profile

Get your Tidal user profile

No parameter schema in public metadata yet.

🎵 TIDAL MCP (Community Maintained Fork)

📢 Active Maintenance Notice: This is an actively maintained community fork of yuhuacheng/tidal-mcp. The original repository appears unmaintained since May 2025. Contributions, issues, and PRs are welcome here!

Active Development Docker Support Python 3.10+ MCP Compatible

Demo: Music Recommendations in Action

Most music platforms offer recommendations — Daily Discovery, Top Artists, New Arrivals, etc. — but even with the state-of-the-art system, they often feel too "aggregated". I wanted something more custom and context-aware.

With TIDAL MCP, you can ask for things like:

"Based on my last 10 favorites, find similar tracks — but only ones from recent years."

"Find me tracks like those in this playlist, but slower and more acoustic."

The LLM filters and curates results using your input, finds similar tracks via TIDAL's API, and builds new playlists directly in your account.

🆕 What's New in This Fork

This community fork includes significant improvements over the original:

  • ✅ Docker Support: Full Docker and docker-compose setup for easy deployment
  • ✅ Search Functionality: Search for tracks, albums, artists, and playlists across TIDAL
  • ✅ Pagination: Fetch all tracks from large playlists (no more 50-track limit!)
  • ✅ Complete Playlist Editing: Add, remove, reorder tracks, and update metadata
  • ✅ Refactored Codebase: ~60% smaller files with better organization and maintainability
  • ✅ DRY Pagination Helper: Reusable pagination utilities across all endpoints

See the full changelog and contribute at: https://github.com/ibeal/tidal-mcp

Features

  • 🌟 Music Recommendations: Get personalized track recommendations based on your listening history plus your custom criteria
  • 🎵 Full Playlist Management: Create, view, edit, and delete playlists with complete control
  • 🔍 Advanced Search: Search across tracks, albums, artists, and playlists
  • 📄 Smart Pagination: Automatically fetch all tracks from playlists of any size
  • 🎛️ Playlist Editing: Add, remove, reorder tracks, and update metadata
  • 🐳 Docker Ready: Easy deployment with Docker and docker-compose support
  • 🔐 OAuth Authentication: Secure browser-based TIDAL login flow

Quick Start

Prerequisites

  • Python 3.10+ OR Docker
  • uv (Python package manager) - only needed for non-Docker installation
  • TIDAL subscription

Installation

Option 1: Docker (Recommended)

  1. Clone this repository:

    git clone https://github.com/ibeal/tidal-mcp.git
    cd tidal-mcp
    
  2. Build and run with Docker Compose:

    docker-compose up -d
    

    Or with Docker directly:

    docker build -t tidal-mcp .
    docker run -d -p 5050:5050 --name tidal-mcp tidal-mcp
    

    The server will be available at http://localhost:5050.

  3. To customize the port, edit the TIDAL_MCP_PORT environment variable in docker-compose.yml or pass it to docker run:

    docker run -d -p 5100:5100 -e TIDAL_MCP_PORT=5100 --name tidal-mcp tidal-mcp
    

Option 2: Local Python Installation

  1. Clone this repository:

    git clone https://github.com/ibeal/tidal-mcp.git
    cd tidal-mcp
    
  2. Create a virtual environment and install dependencies using uv:

    uv venv
    source .venv/bin/activate  # On Windows: .venv\Scripts\activate
    
  3. Install the package with all dependencies from the pyproject.toml file:

    uv pip install --editable .
    

    This will install all dependencies defined in the pyproject.toml file and set up the project in development mode.

MCP Client Configuration

Claude Desktop Configuration

To add this MCP server to Claude Desktop, you need to update the MCP configuration file.

Option 1: Docker Configuration (if using Docker)

{
  "mcpServers": {
    "TIDAL Integration": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "--network",
        "host",
        "-v",
        "/tmp:/tmp",
        "tidal-mcp"
      ],
      "env": {
        "TIDAL_MCP_PORT": "5050"
      }
    }
  }
}

Setup:

  1. Build the Docker image:

    docker build -t tidal-mcp .
    
  2. Authenticate with TIDAL (run this once):

    docker-compose -f docker-compose.auth.yml run --rm tidal-auth
    

    You'll see the OAuth URL in the output:

    ============================================================
    TIDAL LOGIN REQUIRED
    Please open this URL in your browser:
    
    https://link.tidal.com/XXXXX
    
    Expires in 300 seconds
    ============================================================
    

    Open the URL in your browser, log in to TIDAL, and the session will be saved to /tmp/tidal-session-oauth.json.

  3. Update your Claude Desktop config (see above) and restart Claude Desktop.

Configuration details:

  • --network host - Allows the container to use the host's network directly
  • -v /tmp:/tmp - Mounts the host's /tmp directory so the TIDAL session persists across container restarts

To use a custom port:

{
  "mcpServers": {
    "TIDAL Integration": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "--network",
        "host",
        "-v",
        "/tmp:/tmp",
        "-e",
        "TIDAL_MCP_PORT=5100",
        "tidal-mcp"
      ]
    }
  }
}

Option 2: Local Python Configuration (if not using Docker)

{
  "mcpServers": {
    "TIDAL Integration": {
      "command": "/path/to/your/uv",
      "env": {
        "TIDAL_MCP_PORT": "5100"
      },
      "args": [
        "run",
        "--with",
        "requests",
        "--with",
        "mcp[cli]",
        "--with",
        "flask",
        "--with",
        "tidalapi",
        "mcp",
        "run",
        "/path/to/your/project/tidal-mcp/mcp_server/server.py"
      ]
    }
  }
}

Example scrrenshot of the MCP configuration in Claude Desktop: Claude MCP Configuration

Cursor Configuration

For Cursor users, add this configuration to your MCP settings file (~/.cursor/mcp.json):

{
  "mcpServers": {
    "TIDAL Integration": {
      "command": "/path/to/your/project/tidal-mcp/.venv/bin/python",
      "env": {
        "TIDAL_MCP_PORT": "5100"
      },
      "args": ["/path/to/your/project/tidal-mcp/start_mcp.py"]
    }
  }
}

Important: Replace /path/to/your/project/tidal-mcp with the actual path to your project directory.

Steps to Install MCP Configuration in Cursor

  1. Create or edit the MCP configuration file at ~/.cursor/mcp.json
  2. Add the TIDAL Integration configuration above
  3. Update the paths to match your actual project location
  4. Save the file
  5. Restart Cursor to load the new MCP server

Steps to Install MCP Configuration in Claude Desktop

  1. Open Claude Desktop
  2. Go to Settings > Developer
  3. Click on "Edit Config"
  4. Paste the modified JSON configuration
  5. Save the configuration
  6. Restart Claude Desktop

Suggested Prompt Starters

Once configured, you can interact with your TIDAL account through a LLM by asking questions like:

  • “Recommend songs like those in this playlist, but slower and more acoustic.”
  • “Create a playlist based on my top tracks, but focused on chill, late-night vibes.”
  • “Find songs like these in playlist XYZ but in languages other than English.”

💡 You can also ask the model to:

  • Use more tracks as seeds to broaden the inspiration.
  • Return more recommendations if you want a longer playlist.
  • Or delete a playlist if you’re not into it — no pressure!

Available Tools

The TIDAL MCP integration provides the following tools:

Authentication & Core Features

  • tidal_login: Authenticate with TIDAL through browser login flow
  • get_favorite_tracks: Retrieve your favorite tracks from TIDAL
  • recommend_tracks: Get personalized music recommendations

Playlist Management

  • create_tidal_playlist: Create a new playlist in your TIDAL account
  • get_user_playlists: List all your playlists on TIDAL
  • get_playlist_tracks: Retrieve all tracks from a specific playlist (with automatic pagination)
  • delete_tidal_playlist: Delete a playlist from your TIDAL account
  • add_tracks_to_playlist: Add tracks to an existing playlist
  • remove_tracks_from_playlist: Remove tracks by ID or position index
  • update_playlist_metadata: Update playlist title and/or description
  • reorder_playlist_tracks: Move tracks to different positions within a playlist

Search & Discovery

  • search_tidal: Comprehensive search across all TIDAL content types
  • search_tracks: Search specifically for tracks/songs
  • search_albums: Search specifically for albums
  • search_artists: Search specifically for artists
  • search_playlists: Search specifically for playlists

License

MIT License

Contributing

This is an actively maintained community fork. Contributions are welcome!

  1. Fork the repository
  2. Create a 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

Acknowledgements

Original Project:

  • yuhuacheng/tidal-mcp - Original TIDAL MCP implementation

Contributors:

  • ra100 - Search functionality features

Libraries & Frameworks:

  • Model Context Protocol (MCP)
  • TIDAL Python API
Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

Configuration

TIDAL_MCP_PORT

Port for the TIDAL API Flask server (default: 5050)

Categories
Search & Web Crawling
Registryactive
Packageghcr.io/ibeal/tidal-mcp:latest
TransportSTDIO
UpdatedJun 9, 2026
View on GitHub

Related Search & Web Crawling MCP Servers

View all →
Google Search

com.mcparmory/google-search

Scrape Google search results with SERP data, ads, and knowledge panels
25
Brave Search

io.github.pipeworx-io/brave-search

Brave Search MCP — independent web index (no Google/Bing dependency)
Serper Search and Scrape

marcopesani/mcp-server-serper

Serper MCP Server supporting search and webpage scraping
154
Brave Search Mcp Server

brave/brave-search-mcp-server

Brave Search MCP Server: web results, images, videos, rich results, AI summaries, and more.
1.2k
Google Search Console

com.mcparmory/google-search-console

Query search analytics, manage sitemaps, and inspect site URLs and status
25
Google Search Console

acamolese/google-search-console-mcp

Google Search Console MCP server: SEO audits, performance queries, URL inspection, indexing checks.
3