# Tidal Library

> Add or remove artists, albums, or tracks from your Tidal favorites library. Use when the user wants to save music, like a song, follow an artist, or remove items from their library.

- Skill: `majiayu000/tidal-library` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add majiayu000/tidal-library`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/tidal-library/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/tidal-library

---


# Tidal Library

Add or remove artists, albums, and tracks from your Tidal favorites library.

## Commands

### library add
- **Usage**: `tidal-cli --json library add <--artist-id|--album-id|--track-id> <id>`
- **Arguments**: exactly one of `--artist-id`, `--album-id`, or `--track-id` (required)
- **Output**: `{status, type, id, name}`

### library remove
- **Usage**: `tidal-cli --json library remove <--artist-id|--album-id|--track-id> <id>`
- **Arguments**: exactly one of `--artist-id`, `--album-id`, or `--track-id` (required)
- **Output**: `{status, type, id, name}`

## Instructions

1. Parse `$ARGUMENTS`:
   - First word: operation (`add` or `remove`)
   - Remaining: the ID flag and its value (`--artist-id <id>`, `--album-id <id>`, or `--track-id <id>`)
   - If no operation given, show usage: `/tidal-library <add|remove> <--artist-id|--album-id|--track-id> <id>`
   - If operation is provided but no ID flag, show: "Please specify one ID: `--artist-id <id>`, `--album-id <id>`, or `--track-id <id>`"

2. Build and run the command:
   ```bash
   tidal-cli --json library <add|remove> <--artist-id|--album-id|--track-id> <id>
   ```

3. Parse JSON output and display confirmation:
   - **add** → "Added **<name>** (<type>, ID: `<id>`) to your library."
   - **remove** → "Removed **<name>** (<type>, ID: `<id>`) from your library."

## Error Handling

- If exit code is non-zero, read stderr:
  - `"Error: Not authenticated"` → "You need to authenticate first. Run `/tidal-auth` to log in."
  - `"Error: Artist/Album/Track not found"` → "Item not found (ID: `<id>`). Please verify the ID is correct."
  - `"Error: You must provide exactly one of --artist-id, --album-id or --track-id"` → "Please provide exactly one ID type: `--artist-id`, `--album-id`, or `--track-id`."
  - `"Error: Unable to connect to Tidal"` → "Network error: unable to reach Tidal. Check your internet connection."
  - Any other error → display the raw error message with label "Error:"

