Skip to content

MCP tool reference ​

Generated file. Do not edit this page by hand. Run npm run docs:generate after changing MCP tool registrations.

Generated from the runtime tool registry. Current tool count: 95.

Title: Add tracks by search

Type: Write / action

Resolve every search entry before writing; strict mode blocks all writes if any is ambiguous or unmatched.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
tracksunknownyes—
strictunknownyes—
dry_rununknownyes—
skip_existingunknownyes—

add_tracks_to_playlist ​

Title: Add tracks

Type: Write / action

Add tracks sequentially in chunks of at most 100 using /items.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
track_idsunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—

apply_playlist_recipe ​

Title: Apply playlist recipe

Type: Write / action Destructive hint: yes

Apply a persistent recipe; dry_run defaults true, execution creates one safety snapshot.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
recipe_idunknownyes—
dry_rununknownyes—
seedunknownyes—

archive_playlist ​

Title: Archive playlist

Type: Write / action

Persist an immutable local snapshot/version; no provider mutation.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
labelunknownyes—

avoid_recently_played ​

Title: Avoid recently played

Type: Write / action Destructive hint: yes

Uses only locally observed history; dry_run defaults true.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
lookback_hoursunknownyes—
lookback_daysunknownyes—
behaviorunknownyes—
dry_rununknownyes—

balance_artists ​

Title: Balance artists

Type: Write / action Destructive hint: yes

Reorder without removing tracks; dry_run defaults true.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
dry_rununknownyes—
min_artist_gapunknownyes—
strategyunknownyes—

build_session_queue ​

Title: Build session queue

Type: Read

Read-only deterministic queue plan from a playlist; never writes Spotify queue.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
max_tracksunknownyes—
target_duration_minutesunknownyes—
min_artist_gapunknownyes—
seedunknownyes—

bulk_add_tracks ​

Title: Bulk add tracks

Type: Write / action

Add mixed ID/URI/search track inputs in ordered chunks; supports strict, dry_run and skip_existing.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
tracksunknownyes—
strictunknownyes—
dry_rununknownyes—
skip_existingunknownyes—

cancel_job ​

Title: Cancel job

Type: Write / action

Cancel a durable job without deleting its history.

Arguments:

ArgumentTypeRequiredDetails
job_idunknownyes—

chapterize_playlist ​

Title: Chapterize playlist

Type: Read

Analyze the existing playlist order into deterministic narrative chapters. Read-only for Spotify.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
styleunknownyes—
target_chapter_minutesunknownyes—
min_chapter_minutesunknownyes—
max_chapter_minutesunknownyes—
chapter_countunknownyes—
regenerate_titlesunknownyes—
saveunknownyes—

check_saved_tracks ​

Title: Check saved tracks

Type: Read

Return an exact input-to-saved mapping using current /me/library/contains.

Arguments:

ArgumentTypeRequiredDetails
track_idsunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

clone_playlist ​

Title: Clone playlist

Type: Write / action

Clone ordered playlist content; dry_run defaults true and never creates a playlist.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
new_nameunknownyes—
include_descriptionunknownyes—
dry_rununknownyes—

commit_job ​

Title: Commit job

Type: Write / action

Commit a ready durable job once, using its original provider connection. Uncertain outcomes require local operator review.

Arguments:

ArgumentTypeRequiredDetails
job_idunknownyes—

compare_playlists ​

Title: Compare playlists

Type: Read

Read-only efficient URI, artist, album and duration comparison.

Arguments:

ArgumentTypeRequiredDetails
playlist_id_aunknownyes—
playlist_id_bunknownyes—

create_bulk_job ​

Title: Create bulk job

Type: Write / action

Persist a bulk track operation for later processing.

Arguments:

ArgumentTypeRequiredDetails
typeunknownyes—
payloadunknownyes—
itemsunknownyes—
max_attemptsunknownyes—

create_playlist ​

Title: Create playlist

Type: Write / action

Create a playlist; collaborative playlists must be private.

Arguments:

ArgumentTypeRequiredDetails
nameunknownyes—
descriptionunknownyes—
publicunknownyes—
collaborativeunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—

create_playlist_from_tracks ​

Title: Create playlist from tracks

Type: Write / action

Resolves all tracks before creation in strict mode, then creates and inserts sequential chunks.

Arguments:

ArgumentTypeRequiredDetails
nameunknownyes—
descriptionunknownyes—
publicunknownyes—
tracksunknownyes—
strictunknownyes—
skip_duplicatesunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—

deduplicate_playlist ​

Title: Deduplicate playlist

Type: Write / action Destructive hint: yes

Fetches all items, preserves first occurrence and order, and refuses lossless reconstruction when unsupported items exist.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
dry_rununknownyes—

dry_run_playlist_operation ​

Title: Dry run playlist operation

Type: Read

Read-only planner for supported smart playlist operations; performs zero Spotify writes.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
operationunknownyes—
max_artist_shareunknownyes—
min_artist_gapunknownyes—
min_album_gapunknownyes—
seedunknownyes—

estimate_operation_cost ​

Title: Estimate operation cost

Type: Read

Read-only conservative Spotify API request estimate; no financial pricing.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
operationunknownyes—
track_countunknownyes—

execute_playlist_transfer ​

Title: Execute playlist transfer

Type: Write / action Destructive hint: yes

Execute a previously validated transfer plan against the explicitly selected destination. Requires confirmation and verifies the resulting playlist.

Arguments:

ArgumentTypeRequiredDetails
transfer_planunknownyes—
destination_playlist_idunknownyes—
confirmunknownyes—
resumedunknownyes—

export_playlist ​

Title: Export playlist

Type: Read

Export provider-neutral canonical playlist data without credentials or provider calls.

Arguments:

ArgumentTypeRequiredDetails
formatunknownyes—
playlistunknownyes—

extend_playlist_to_duration ​

Title: Extend playlist to duration

Type: Write / action

Resolve a local candidate pool, append only needed tracks, snapshot and verify.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
target_duration_msunknownyes—
dry_rununknownyes—
candidate_limitunknownyes—
min_artist_gapunknownyes—
seedunknownyes—

filter_playlist ​

Title: Filter playlist

Type: Write / action Destructive hint: yes

Filter by typed deterministic predicates; dry_run defaults true.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
filtersunknownyes—
modeunknownyes—
dry_rununknownyes—

find_playlist_by_name ​

Title: Find playlist by name

Type: Read

Find all current-user playlists matching a normalized name across all pages.

Arguments:

ArgumentTypeRequiredDetails
nameunknownyes—

find_track_exact ​

Title: Find track exactly

Type: Read

Resolve a track by deterministic title/artist/album/year scoring; returns matched, ambiguous, or unmatched.

Arguments:

ArgumentTypeRequiredDetails
titlestringyes—
artiststringyes—
albumstringno—
yearnumberno—

get_artist ​

Type: Read

Get a provider artist by ID, URI, or URL.

Arguments:

ArgumentTypeRequiredDetails
artist_idunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

get_capabilities ​

Title: Get provider capabilities

Type: Read

Describe supported provider operations and explain unavailable capabilities.

Arguments:

ArgumentTypeRequiredDetails
providerunknownyes—
connection_idunknownyes—

get_connections ​

Title: Get provider connections

Type: Read

List compact provider connection summaries without credentials.

Arguments:

  • None

get_currently_playing ​

Title: Get currently playing

Type: Read

Get the currently playing track or episode; 204 is returned as inactive playback.

Arguments:

ArgumentTypeRequiredDetails
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

get_devices ​

Title: Get devices

Type: Read

List Spotify Connect devices.

Arguments:

  • None

get_job_status ​

Title: Get job status

Type: Read

Inspect a durable bulk job with bounded item pagination.

Arguments:

ArgumentTypeRequiredDetails
job_idunknownyes—
offsetunknownyes—
limitunknownyes—

get_my_playlists ​

Title: Get my playlists

Type: Read

List compact playlists; all=true fetches all pages up to the server safety cap.

Arguments:

ArgumentTypeRequiredDetails
limitunknownyes—
offsetunknownyes—
allunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

get_playback_state ​

Title: Get playback state

Type: Read

Get playback state and normalize either a track or episode item.

Arguments:

ArgumentTypeRequiredDetails
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

get_playlist ​

Title: Get playlist

Type: Read

Get playlist metadata.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

get_playlist_chapters ​

Title: Get playlist chapters

Type: Read

Read the latest saved chapter set and report whether the playlist order has changed.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
chapter_set_idunknownyes—

get_playlist_stats ​

Title: Get playlist stats

Type: Read

Fetches all playlist items and computes local aggregates.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—

get_playlist_tracks ​

Title: Get playlist items

Type: Read

Read normalized playlist items using current /items; maximum page size is 50.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
limitunknownyes—
offsetunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

get_rate_limit_status ​

Title: Get rate limit status

Type: Read

Inspect persisted provider rate-limit scopes.

Arguments:

ArgumentTypeRequiredDetails
providerunknownyes—
scopeunknownyes—
connection_idunknownyes—

get_recent_api_errors ​

Title: Get recent API errors

Type: Read

Inspect bounded, normalized API error history.

Arguments:

ArgumentTypeRequiredDetails
limitunknownyes—
providerunknownyes—
status_codeunknownyes—
unresolved_onlyunknownyes—
connection_idunknownyes—

get_recently_played ​

Title: Get recently played

Type: Read

Read recent history; before and after cannot be combined.

Arguments:

ArgumentTypeRequiredDetails
limitunknownyes—
beforeunknownyes—
afterunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

get_saved_tracks ​

Title: Get saved tracks

Type: Read

Read saved tracks with pagination.

Arguments:

ArgumentTypeRequiredDetails
limitunknownyes—
offsetunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

get_state_diagnostics ​

Title: Get State DB diagnostics

Type: Read

Return authenticated, bounded State DB health counters.

Arguments:

ArgumentTypeRequiredDetails
providerunknownyes—
connection_idunknownyes—

get_top_artists ​

Type: Read

Read personalized top Spotify items; Spotify maximum is 50.

Arguments:

ArgumentTypeRequiredDetails
time_rangeunknownyes—
limitunknownyes—
offsetunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

get_top_tracks ​

Type: Read

Read personalized top Spotify items; Spotify maximum is 50.

Arguments:

ArgumentTypeRequiredDetails
time_rangeunknownyes—
limitunknownyes—
offsetunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

get_track ​

Type: Read

Get a provider track by ID, URI, or URL.

Arguments:

ArgumentTypeRequiredDetails
track_idunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

import_playlist ​

Title: Import playlist

Type: Write / action

Parse and validate provider-neutral playlist data. This operation never writes to a provider.

Arguments:

ArgumentTypeRequiredDetails
formatunknownyes—
contentunknownyes—

limit_artist_share ​

Title: Limit artist share

Type: Write / action Destructive hint: yes

Plan or execute deterministic artist-share removals; dry_run defaults true.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
dry_rununknownyes—
max_shareunknownyes—
max_tracks_per_artistunknownyes—
selection_strategyunknownyes—

list_jobs ​

Title: List jobs

Type: Read

List bounded durable job summaries.

Arguments:

ArgumentTypeRequiredDetails
offsetunknownyes—
limitunknownyes—

merge_playlists_smart ​

Title: Smart merge playlists

Type: Write / action

Merge source playlists without mutating them; dry_run defaults true.

Arguments:

ArgumentTypeRequiredDetails
playlist_idsunknownyes—
target_playlist_idunknownyes—
new_playlist_nameunknownyes—
dry_rununknownyes—
deduplicateunknownyes—
balance_artistsunknownyes—
seedunknownyes—

move_artist_tracks ​

Type: Write / action Destructive hint: yes

Move selected artist tracks to the beginning of the same playlist; dry_run defaults true.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
artist_idunknownyes—
artist_nameunknownyes—
dry_rununknownyes—

next_track ​

Type: Write / action

Control Spotify playback.

Arguments:

ArgumentTypeRequiredDetails
device_idunknownyes—

optimize_playlist ​

Title: Optimize playlist

Type: Write / action Destructive hint: yes

Meta-tool composing deterministic playlist primitives; dry_run defaults true and does not snapshot.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
dry_rununknownyes—
semantic_deduplicateunknownyes—
smart_shuffleunknownyes—
balance_artistsunknownyes—
max_artist_shareunknownyes—
min_artist_gapunknownyes—
min_album_gapunknownyes—
seedunknownyes—

pause ​

Type: Write / action

Pause Spotify playback; verifies the resulting state after a 403 restriction response.

Arguments:

ArgumentTypeRequiredDetails
device_idunknownyes—

personalize_playlist ​

Title: Personalize playlist

Type: Write / action Destructive hint: yes

Deterministic local personalization combining affinity and artist spacing; dry_run defaults true.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
dry_rununknownyes—
min_artist_gapunknownyes—
seedunknownyes—

plan_playlist_transfer ​

Title: Plan playlist transfer

Type: Read

Create an explainable cross-provider transfer plan. Dry-run only; performs zero destination writes.

Arguments:

ArgumentTypeRequiredDetails
source_connection_idunknownyes—
source_playlist_idunknownyes—
destination_connection_idunknownyes—
destination_providerunknownyes—
start_positionunknownyes—
max_tracksunknownyes—

play ​

Title: Play

Type: Write / action

Start or resume playback; context_uri and uris are mutually exclusive. Verifies the resulting state after a 403 restriction response.

Arguments:

ArgumentTypeRequiredDetails
device_idunknownyes—
context_uriunknownyes—
urisunknownyes—
offsetunknownyes—
position_msunknownyes—

play_playlist_chapter ​

Title: Play playlist chapter

Type: Write / action

Start Spotify playback at a chapter offset; playback may continue after the chapter ends.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
chapter_set_idunknownyes—
chapter_numberunknownyes—
device_idunknownyes—

playlist_diff ​

Title: Playlist diff

Type: Read

Read-only linear diff between a playlist and a durable snapshot.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
snapshot_idunknownyes—

playlist_health_report ​

Title: Playlist health report

Type: Read

Read-only deterministic playlist health analysis; never mutates a provider.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—

playlist_recipe ​

Title: Playlist recipe

Type: Write / action

Create, read, list, update or delete a persistent versioned playlist recipe.

Arguments:

ArgumentTypeRequiredDetails
actionunknownyes—
recipe_idunknownyes—
nameunknownyes—
descriptionunknownyes—
rulesunknownyes—
operationsunknownyes—

playlist_rules_engine ​

Title: Playlist rules engine

Type: Read

Read-only deterministic rule evaluation; never mutates Spotify.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
rulesunknownyes—
dry_rununknownyes—

playlist_trim_to_duration ​

Title: Trim playlist to duration

Type: Write / action Destructive hint: yes

Plan or trim a playlist without exceeding the target; dry_run defaults true.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
target_duration_msunknownyes—
target_minutesunknownyes—
strategyunknownyes—
seedunknownyes—
dry_rununknownyes—

preview_playlist_import ​

Title: Preview playlist import

Type: Read

Parse and validate provider-neutral playlist data. This operation never writes to a provider.

Arguments:

ArgumentTypeRequiredDetails
formatunknownyes—
contentunknownyes—

previous_track ​

Type: Write / action

Control Spotify playback.

Arguments:

ArgumentTypeRequiredDetails
device_idunknownyes—

rank_playlist_tracks ​

Title: Rank playlist tracks

Type: Read

Read-only explainable local affinity/freshness ranking; no Spotify popularity fallback.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
ranking_modeunknownyes—

remember_track ​

Title: Remember track

Type: Write / action

Verify a known Spotify track ID, URI, or public URL and save its safe alias.

Arguments:

ArgumentTypeRequiredDetails
track_idunknownyes—
titleunknownyes—
artistunknownyes—
albumunknownyes—
providerunknownyes—
connection_idunknownyes—

remove_artist_from_playlist ​

Type: Write / action Destructive hint: yes

Remove selected artist tracks; dry_run defaults true.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
artist_idunknownyes—
artist_nameunknownyes—
dry_rununknownyes—

remove_saved_tracks ​

Type: Write / action Destructive hint: yes

Save or remove tracks using current /me/library endpoint in chunks of 40.

Arguments:

ArgumentTypeRequiredDetails
track_idsunknownyes—

remove_tracks_from_playlist ​

Title: Remove playlist items

Type: Write / action Destructive hint: yes

Remove requested URI occurrences using DELETE /items and return the final snapshot.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
track_idsunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—

reorder_playlist_tracks ​

Title: Reorder playlist items

Type: Write / action

Reorder with current PUT /items payload.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
range_startunknownyes—
insert_beforeunknownyes—
range_lengthunknownyes—
snapshot_idunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—

replace_playlist_tracks ​

Title: Replace playlist items

Type: Write / action Destructive hint: yes

Replace then append ordered chunks, max 100 per request; rolls back after later chunk failure.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
track_idsunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—

restore_playlist_snapshot ​

Title: Restore playlist snapshot

Type: Write / action Destructive hint: yes

Restore exact ordered content from a durable snapshot; creates a PRE-RESTORE safety snapshot.

Arguments:

ArgumentTypeRequiredDetails
snapshot_idunknownyes—
dry_rununknownyes—
connection_idunknownyes—
providerunknownyes—

resume_job ​

Title: Resume job

Type: Write / action

Make a durable job eligible for processing.

Arguments:

ArgumentTypeRequiredDetails
job_idunknownyes—

resume_playlist_chapter ​

Title: Resume playlist chapter

Type: Write / action

Resume a previously started chapter from its first saved position.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
chapter_set_idunknownyes—
chapter_numberunknownyes—
device_idunknownyes—

save_tracks ​

Type: Write / action

Save or remove tracks using current /me/library endpoint in chunks of 40.

Arguments:

ArgumentTypeRequiredDetails
track_idsunknownyes—

search_albums ​

Type: Read

Search the selected provider catalog with current pagination.

Arguments:

ArgumentTypeRequiredDetails
queryunknownyes—
limitunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

search_artists ​

Type: Read

Search the selected provider catalog with current pagination.

Arguments:

ArgumentTypeRequiredDetails
queryunknownyes—
limitunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

search_tracks ​

Type: Read

Search the selected provider catalog with current pagination.

Arguments:

ArgumentTypeRequiredDetails
queryunknownyes—
limitunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—
read_fallbackunknownyes—

seek ​

Title: Seek

Type: Write / action

Seek to a non-negative position.

Arguments:

ArgumentTypeRequiredDetails
position_msunknownyes—
device_idunknownyes—

semantic_deduplicate_playlist ​

Title: Semantic deduplicate playlist

Type: Write / action Destructive hint: yes

Conservative deterministic deduplication. dry_run defaults true; execution snapshots and verifies.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
dry_rununknownyes—
prefer_originalunknownyes—
remove_remastersunknownyes—
remove_liveunknownyes—
remove_remixesunknownyes—
remove_sped_upunknownyes—
remove_slowedunknownyes—
duration_tolerance_msunknownyes—

session_history ​

Title: Session history

Type: Read

Read locally observed playback history with provenance; does not claim complete Spotify history.

Arguments:

ArgumentTypeRequiredDetails
sinceunknownyes—
untilunknownyes—
limitunknownyes—
artistunknownyes—
trackunknownyes—
sourceunknownyes—

set_volume ​

Title: Set volume

Type: Write / action

Set volume from 0 to 100.

Arguments:

ArgumentTypeRequiredDetails
volume_percentunknownyes—
device_idunknownyes—

smart_insert_tracks ​

Title: Smart insert tracks

Type: Write / action Destructive hint: yes

Insert tracks at deterministic distributed positions; dry_run defaults true.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
dry_rununknownyes—
track_idsunknownyes—
min_artist_gapunknownyes—
min_album_gapunknownyes—
seedunknownyes—

smart_next ​

Title: Smart next

Type: Read

Selects from a supplied playlist using local evidence; does not start playback.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
min_artist_gapunknownyes—
seedunknownyes—

smart_shuffle_playlist ​

Title: Smart shuffle playlist

Type: Write / action Destructive hint: yes

Deterministic seeded spacing layout; dry_run defaults true.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
dry_rununknownyes—
min_artist_gapunknownyes—
min_album_gapunknownyes—
seedunknownyes—
preserve_first_nunknownyes—
preserve_last_nunknownyes—

snapshot_playlist ​

Title: Snapshot playlist

Type: Write / action

Persist an ordered playlist snapshot; requires the state database.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
reasonunknownyes—

sort_by_personal_affinity ​

Title: Sort by personal affinity

Type: Write / action Destructive hint: yes

Plan or reorder using local evidence only; dry_run defaults true and snapshots on execution.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
directionunknownyes—
dry_rununknownyes—
preserve_artist_spacingunknownyes—
min_artist_gapunknownyes—

split_playlist_balanced ​

Title: Split playlist

Type: Read

Preview deterministic sequential or round-robin groups. Preview only; no playlists are created.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
partsunknownyes—
max_tracks_per_playlistunknownyes—
strategyunknownyes—
dry_rununknownyes—
output_name_templateunknownyes—

sync_playlist_transfer ​

Title: Synchronize transferred playlist

Type: Write / action Destructive hint: yes

Apply an explicitly confirmed provider-neutral sync policy. Destructive cross-provider conflicts fail closed.

Arguments:

ArgumentTypeRequiredDetails
transfer_planunknownyes—
destination_playlist_idunknownyes—
policyunknownyes—
confirmunknownyes—

sync_playlists ​

Title: Sync playlists

Type: Write / action Destructive hint: yes

Plan or apply deterministic playlist synchronization; dry_run defaults true.

Arguments:

ArgumentTypeRequiredDetails
source_playlist_idunknownyes—
target_playlist_idunknownyes—
modeunknownyes—
dry_rununknownyes—

transfer_playback ​

Title: Transfer playback

Type: Write / action

Transfer playback to a Spotify Connect device.

Arguments:

ArgumentTypeRequiredDetails
device_idunknownyes—
playunknownyes—

undo_last_playlist_change ​

Title: Undo last playlist change

Type: Write / action Destructive hint: yes

Restore the latest completed JamRelay-managed reversible operation only; dry_run defaults true.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
dry_rununknownyes—
connection_idunknownyes—
providerunknownyes—

update_playlist_details ​

Title: Update playlist details

Type: Write / action

Update playlist metadata; collaborative playlists must be private.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
nameunknownyes—
descriptionunknownyes—
publicunknownyes—
collaborativeunknownyes—
connection_idunknownyes—
providerunknownyes—
preferred_connection_idunknownyes—

verify_playlist_integrity ​

Title: Verify playlist integrity

Type: Read

Read-only verification of playlist readability, count, content and optional snapshot state.

Arguments:

ArgumentTypeRequiredDetails
playlist_idunknownyes—
expected_snapshot_idunknownyes—
operation_plan_idunknownyes—

Unofficial community project. Not affiliated with Spotify or AI platform vendors.