Skip to main content
Glama
raydollete

TIDAL Music MCP

by raydollete

create_tidal_playlist

Creates a new TIDAL playlist with specified tracks. Provide a title and track IDs, with an optional description.

Instructions

Creates a new TIDAL playlist with the specified tracks.

USE THIS TOOL WHENEVER A USER ASKS FOR:
- "Create a playlist with these songs"
- "Make a TIDAL playlist"
- "Save these tracks to a playlist"
- "Create a collection of songs"
- Any request to create a new playlist in their TIDAL account

This function creates a new playlist in the user's TIDAL account and adds the specified tracks to it.
The user must be authenticated with TIDAL first.

NAMING CONVENTION GUIDANCE:
When suggesting or creating a playlist, first check the user's existing playlists using get_user_playlists()
to understand their naming preferences. Some patterns to look for:
- Do they use emoji in playlist names?
- Do they use all caps, title case, or lowercase?
- Do they include dates or seasons in names?
- Do they name by mood, genre, activity, or artist?
- Do they use specific prefixes or formatting (e.g., "Mix: Summer Vibes" or "[Workout] High Energy")

Try to match their style when suggesting new playlist names. If they have no playlists yet or you
can't determine a pattern, use a clear, descriptive name based on the tracks' common themes.

When processing the results of this tool:
1. Confirm the playlist was created successfully
2. Provide the playlist title, number of tracks added, and URL
3. Always include the direct TIDAL URL (https://tidal.com/playlist/{playlist_id})
4. Suggest that the user can now access this playlist in their TIDAL account

Args:
    title: The name of the playlist to create
    track_ids: List of TIDAL track IDs to add to the playlist
    description: Optional description for the playlist (default: "")

Returns:
    A dictionary containing the status of the playlist creation and details about the created playlist

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleYes
track_idsYes
descriptionNo
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It states that the tool creates a new playlist and adds tracks, and mentions authentication. But it does not disclose potential side effects (e.g., duplicate names), error conditions, rate limits, or whether the operation is reversible. More behavioral details could be provided.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with bullet points and sections, but it is somewhat verbose, especially the naming convention guidance. The first sentence is clear, and the most critical information is front-loaded. It could be tightened without losing value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (3 parameters, no output schema, no annotations), the description is remarkably complete. It covers purpose, usage guidelines, parameter meanings, authentication requirement, naming convention advice, and even post-processing steps including confirmation and URL inclusion. It leaves little ambiguity for an AI agent to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must compensate. It explains that track_ids are 'TIDAL track IDs' and that description is optional with a default. However, it does not define constraints for the title parameter (e.g., length, allowed characters). The naming convention guidance is helpful but pertains more to usage than parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description starts with a clear verb and resource: 'Creates a new TIDAL playlist with the specified tracks.' It also lists specific user requests that trigger this tool, clearly distinguishing from sibling tools like add_tracks_to_playlist which adds to existing playlists.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit examples of when to use this tool ('USE THIS TOOL WHENEVER A USER ASKS FOR:') and mentions the prerequisite of TIDAL authentication. However, it does not explicitly state when not to use it or mention alternatives like add_tracks_to_playlist for adding to existing playlists.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/raydollete/tidal-dl-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server