Spotify Automation is a integrations claude skill built by Composio. Best for: Music curators and Spotify power users automate playlist organization, catalog discovery, and profile management without manual interaction..

What it does
Automate Spotify playlist management, music search, playback control, and profile access.
Category
integrations
Created by
Composio
Last updated
Claude Skillintegrations GitHub-backed CuratedintermediateClaude Code

Spotify Automation

Automate Spotify playlist management, music search, playback control, and profile access.

Skill instructions


name: Spotify Automation description: "Automate Spotify workflows including playlist management, music search, playback control, and user profile access via Composio" requires: mcp: - rube

Spotify Automation

Automate Spotify operations -- manage playlists, search the music catalog, control playback, browse albums and tracks, and access user profiles -- all orchestrated through the Composio MCP integration.

Toolkit docs: composio.dev/toolkits/spotify


Setup

  1. Connect your Spotify account through the Composio MCP server at https://rube.app/mcp
  2. The agent will prompt you with an authentication link if no active connection exists
  3. Once connected, all SPOTIFY_* tools become available for execution
  4. Note: Some features (playback control) require a Spotify Premium subscription

Core Workflows

1. Get Current User Profile

Retrieve comprehensive profile information for the authenticated Spotify user.

Tool: SPOTIFY_GET_CURRENT_USER_S_PROFILE

No parameters required.
Returns: display name, email, country, subscription level (premium/free),
explicit content settings, profile images, follower count, and Spotify URIs.
Required scopes: user-read-private, user-read-email.

2. Search the Spotify Catalog

Find albums, artists, playlists, tracks, shows, episodes, or audiobooks by keyword.

Tool: SPOTIFY_SEARCH_FOR_ITEM

| Parameter | Type | Required | Description | |-----------|------|----------|-------------| | q | string | Yes | Search query keywords | | type | array | Yes | Item types: album, artist, playlist, track, show, episode, audiobook | | limit | integer | No | Results to return (default: 20) | | offset | integer | No | Offset for pagination (default: 0) | | market | string | No | ISO 3166-1 alpha-2 country code | | include_external | string | No | Set to audio to include external content |

Note: Audiobooks are only available in US, UK, Canada, Ireland, New Zealand, and Australia.


3. Manage Playlists

Browse, create, modify, and populate playlists.

Get a user's playlists:

Tool: SPOTIFY_GET_USER_S_PLAYLISTS

| Parameter | Type | Required | Description | |-----------|------|----------|-------------| | user_id | string | Yes | Spotify user ID | | limit | integer | No | Max playlists, 1-50 (default: 20) | | offset | integer | No | Pagination offset, 0-100000 (default: 0) |

Get current user's playlists:

Tool: SPOTIFY_GET_CURRENT_USER_S_PLAYLISTS

| Parameter | Type | Required | Description | |-----------|------|----------|-------------| | limit | integer | No | Max playlists, 1-50 (default: 20) | | offset | integer | No | Pagination offset, 0-100000 (default: 0) |

Get playlist details:

Tool: SPOTIFY_GET_PLAYLIST

| Parameter | Type | Required | Description | |-----------|------|----------|-------------| | playlist_id | string | Yes | Spotify playlist ID (e.g., 3cEYpjA9oz9GiPac4AsH4n) | | fields | string | No | Comma-separated field filter to reduce response size | | market | string | No | ISO country code for market-specific content | | additional_types | string | No | track,episode to include podcast episodes |

Update playlist details:

Tool: SPOTIFY_CHANGE_PLAYLIST_DETAILS

| Parameter | Type | Required | Description | |-----------|------|----------|-------------| | playlist_id | string | Yes | Playlist ID (must be owned by current user) | | name | string | No | New playlist name | | description | string | No | New playlist description | | public | boolean | No | Public/private toggle | | collaborative | boolean | No | Collaborative mode (only on non-public playlists) |


4. Browse Playlist Items & Add Tracks

View tracks in a playlist and add new items.

Tool: SPOTIFY_GET_PLAYLIST_ITEMS

| Parameter | Type | Required | Description | |-----------|------|----------|-------------| | playlist_id | string | Yes | Spotify playlist ID | | limit | integer | No | Items per page, 1-50 (default: 20) | | offset | integer | No | Pagination offset (default: 0) | | fields | string | No | Field filter (e.g., items(track(name,id))) | | market | string | No | ISO country code | | additional_types | string | No | track,episode for podcast episodes |

Tool: SPOTIFY_ADD_ITEMS_TO_PLAYLIST

Add tracks or episodes to a playlist using Spotify URIs.


5. Get Track & Album Details

Retrieve catalog information for individual tracks and albums.

Tool: SPOTIFY_GET_TRACK -- Get details for a single track by Spotify ID.

Tool: SPOTIFY_GET_ALBUM -- Get comprehensive album data including track listing, artist info, cover art, and popularity.


6. Control Playback

Start, resume, or change playback on the user's active device.

Tool: SPOTIFY_START_RESUME_PLAYBACK

| Parameter | Type | Required | Description | |-----------|------|----------|-------------| | context_uri | string | No | Spotify URI of album, artist, or playlist (cannot combine with uris) | | uris | array | No | List of track URIs to play (cannot combine with context_uri) | | offset | object | No | Starting position: {position: 5} or {uri: 'spotify:track:...'} | | position_ms | integer | No | Start position in milliseconds | | device_id | string | No | Target device ID (defaults to active device) |

Requirements: Spotify Premium subscription and at least one active device.


Known Pitfalls

| Pitfall | Details | |---------|---------| | Premium required for playback | SPOTIFY_START_RESUME_PLAYBACK returns 403 if the user does not have Spotify Premium | | Active device required | Playback control returns 404 if no Spotify device (mobile, desktop, web, speaker) is active | | context_uri vs uris are exclusive | Cannot use both context_uri and uris in the same playback call | | Collaborative playlists | collaborative can only be set to true on non-public playlists (public must be false) | | Playlist ownership | SPOTIFY_CHANGE_PLAYLIST_DETAILS only works on playlists owned by the authenticated user | | Audiobook market restrictions | Audiobooks via search are only available in US, UK, Canada, Ireland, New Zealand, and Australia | | Max 11000 playlists | Users are limited to approximately 11,000 playlists via SPOTIFY_CREATE_PLAYLIST |


Quick Reference

| Tool Slug | Purpose | |-----------|---------| | SPOTIFY_GET_CURRENT_USER_S_PROFILE | Get authenticated user's profile | | SPOTIFY_SEARCH_FOR_ITEM | Search catalog for tracks, albums, artists, etc. | | SPOTIFY_GET_USER_S_PLAYLISTS | Get playlists for any user | | SPOTIFY_GET_CURRENT_USER_S_PLAYLISTS | Get current user's playlists | | SPOTIFY_GET_PLAYLIST | Get detailed playlist info | | SPOTIFY_GET_PLAYLIST_ITEMS | List tracks/episodes in a playlist | | SPOTIFY_CHANGE_PLAYLIST_DETAILS | Update playlist name, description, visibility | | SPOTIFY_CREATE_PLAYLIST | Create a new playlist | | SPOTIFY_ADD_ITEMS_TO_PLAYLIST | Add tracks/episodes to a playlist | | SPOTIFY_GET_TRACK | Get track details by ID | | SPOTIFY_GET_ALBUM | Get album details by ID | | SPOTIFY_START_RESUME_PLAYBACK | Start or resume playback on a device |


Powered by Composio

Use this skill

Most skills are portable instruction packages. Claude Code supports SKILL.md directly. Other agents can use adapted files like AGENTS.md, .cursorrules, and GEMINI.md.

Claude Code

Save SKILL.md into your Claude Skills folder, then restart Claude Code.

mkdir -p ~/.claude/skills/spotify-automation && curl -L "https://raw.githubusercontent.com/ComposioHQ/awesome-claude-skills/HEAD/composio-skills/spotify-automation/SKILL.md" -o ~/.claude/skills/spotify-automation/SKILL.md

Installs to ~/.claude/skills/spotify-automation/SKILL.md.

Use cases

Music curators and Spotify power users automate playlist organization, catalog discovery, and profile management without manual interaction.

Reviews

No reviews yet. Be the first to review this skill.

No signup required

Stats

Installs0
GitHub Stars55.0k
Forks5902
UpdatedMar 25, 2026