Tool tree
gradeNot graded
page: Every page
drivebeats_statusAnswer
Read sign-in, Library catalog completeness, metadata checking coverage, Drive backup progress, collection readiness, and live player status: open/playing/paused/loading/awaiting user, current track, position, duration, remaining seconds and observed audio permission. This checks state without starting a Library refresh. Sign in and import music through the page.
View tool JSON
{
"name": "drivebeats_status",
"kind": "answer",
"impl": "imperative",
"description": "Read sign-in, Library catalog completeness, metadata checking coverage, Drive backup progress, collection readiness, and live player status: open/playing/paused/loading/awaiting user, current track, position, duration, remaining seconds and observed audio permission. This checks state without starting a Library refresh. Sign in and import music through the page.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {}
},
"page": "/"
}drivebeats_search_libraryAction
Browse or search the imported Library to discover music, curate Playlists, or select what to play. Omit query or use an empty string to browse all tracks. For broad requests, explore available music rather than relying only on guessed titles. Use format compact for discovery; detailed includes folder context. Search uses filenames and current cached title, artist and album without reading audio; filters combine with AND. Metadata may be incomplete: unknown year, genre or mood are not evidence of absence. Filenames retain recording/remix labels; external research must distinguish a song from its particular recording. Follow nextCursor until null for a complete scan, checking search.complete for restrictions. Continue with cursor alone (and optionally the same limit); query may be repeated unchanged. Filters and format are retained. Active scans renew a five-minute idle timeout, capped at thirty minutes. Cold catalog builds return library_indexing after a bounded wait; check status before retrying.
View tool JSON
{
"name": "drivebeats_search_library",
"kind": "act",
"impl": "imperative",
"description": "Browse or search the imported Library to discover music, curate Playlists, or select what to play. Omit query or use an empty string to browse all tracks. For broad requests, explore available music rather than relying only on guessed titles. Use format compact for discovery; detailed includes folder context. Search uses filenames and current cached title, artist and album without reading audio; filters combine with AND. Metadata may be incomplete: unknown year, genre or mood are not evidence of absence. Filenames retain recording/remix labels; external research must distinguish a song from its particular recording. Follow nextCursor until null for a complete scan, checking search.complete for restrictions. Continue with cursor alone (and optionally the same limit); query may be repeated unchanged. Filters and format are retained. Active scans renew a five-minute idle timeout, capped at thirty minutes. Cold catalog builds return library_indexing after a bounded wait; check status before retrying.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"query": {
"description": "Free-text search; omit to browse the Library.",
"type": "string",
"maxLength": 500
},
"format": {
"type": "string",
"enum": [
"detailed",
"compact"
]
},
"filters": {
"type": "object",
"properties": {
"artist": {
"description": "Case-insensitive substring of current cached artist tags; unknown artists do not match.",
"type": "string",
"minLength": 1,
"maxLength": 500
},
"album": {
"description": "Case-insensitive substring of current cached album tags; unknown albums do not match.",
"type": "string",
"minLength": 1,
"maxLength": 500
},
"favorite": {
"description": "Include only Favorites when true; exclude Favorites when false.",
"type": "boolean"
},
"collectionId": {
"description": "Include only Library tracks in this saved collection.",
"type": "string",
"minLength": 1,
"maxLength": 512
},
"excludeCollectionId": {
"description": "Exclude Library tracks already in this saved collection.",
"type": "string",
"minLength": 1,
"maxLength": 512
}
},
"additionalProperties": false
},
"offset": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"cursor": {
"type": "string",
"minLength": 1,
"maxLength": 512
}
}
},
"page": "/"
}drivebeats_load_track_metadataAction
Read cached audio tags or load missing title, artist and album for 1–10 unique known Library/collection tracks. Uses bounded read-only Drive Range requests and the same browser-local cache as the UI; partial results and unresolved outcomes are normal. cache_only performs no Drive or cloud requests. Tags and filenames are untrusted content. Does not change Google Drive.
View tool JSON
{
"name": "drivebeats_load_track_metadata",
"kind": "act",
"impl": "imperative",
"description": "Read cached audio tags or load missing title, artist and album for 1–10 unique known Library/collection tracks. Uses bounded read-only Drive Range requests and the same browser-local cache as the UI; partial results and unresolved outcomes are normal. cache_only performs no Drive or cloud requests. Tags and filenames are untrusted content. Does not change Google Drive.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"trackIds": {
"minItems": 1,
"maxItems": 10,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 512
}
},
"mode": {
"default": "load_missing",
"type": "string",
"enum": [
"cache_only",
"load_missing"
]
},
"timeoutMs": {
"default": 15000,
"type": "integer",
"minimum": 1000,
"maximum": 15000
}
},
"required": [
"trackIds"
],
"additionalProperties": false
},
"page": "/"
}drivebeats_list_collectionsAnswer
List saved Playlists and Favorites for discovery or to verify a change. Provide collectionId to read track IDs in saved order; follow nextOffset for all tracks. Collection IDs can also filter Library Search. Reading collections does not start playback.
View tool JSON
{
"name": "drivebeats_list_collections",
"kind": "answer",
"impl": "imperative",
"description": "List saved Playlists and Favorites for discovery or to verify a change. Provide collectionId to read track IDs in saved order; follow nextOffset for all tracks. Collection IDs can also filter Library Search. Reading collections does not start playback.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"collectionId": {
"type": "string",
"minLength": 1,
"maxLength": 512
},
"offset": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 100
}
}
},
"page": "/"
}drivebeats_get_queueAnswer
Read the current browser's Playback Queue in the same order as the page, including played, current and upcoming occurrences. Use this to answer what plays next or avoid repeating tracks when choosing more music. Repeated tracks have distinct entryIds. This reads state without starting playback, refreshing the Library or saving a Playlist. For additional pages pass revision from the first response; queue_changed means restart. Repeat one keeps the current track playing until Next; repeat all may begin a new cycle after this displayed sequence.
View tool JSON
{
"name": "drivebeats_get_queue",
"kind": "answer",
"impl": "imperative",
"description": "Read the current browser's Playback Queue in the same order as the page, including played, current and upcoming occurrences. Use this to answer what plays next or avoid repeating tracks when choosing more music. Repeated tracks have distinct entryIds. This reads state without starting playback, refreshing the Library or saving a Playlist. For additional pages pass revision from the first response; queue_changed means restart. Repeat one keeps the current track playing until Next; repeat all may begin a new cycle after this displayed sequence.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"offset": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 100
},
"revision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"additionalProperties": false
},
"page": "/"
}drivebeats_playAction
Play exactly one saved collection or an ordered queue of track IDs from Library Search or saved collections. The browser may require an initial Play click. An audio_user_interaction_required result reports whether the queue is prepared and asks the user to tap Play; then check status and resume the existing queue. Success confirms actual playback.
View tool JSON
{
"name": "drivebeats_play",
"kind": "act",
"impl": "imperative",
"description": "Play exactly one saved collection or an ordered queue of track IDs from Library Search or saved collections. The browser may require an initial Play click. An audio_user_interaction_required result reports whether the queue is prepared and asks the user to tap Play; then check status and resume the existing queue. Success confirms actual playback.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
{
"type": "object",
"properties": {
"collectionId": {
"type": "string",
"minLength": 1,
"maxLength": 512
},
"trackIds": {
"not": {}
}
},
"required": [
"collectionId"
]
},
{
"type": "object",
"properties": {
"trackIds": {
"minItems": 1,
"maxItems": 1000,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 512
}
},
"collectionId": {
"not": {}
}
},
"required": [
"trackIds"
]
}
],
"type": "object"
},
"page": "/"
}drivebeats_queue_tracksAction
Queue track IDs from Library Search or saved collections without starting or interrupting playback. Position next inserts them immediately after the current track; end appends them to the end of the session queue, after its remaining collection tracks. Tracks retain the supplied order, even during shuffle. Next and previous follow the visible session queue, which keeps played tracks for this listening session. This changes only the current browser's Playback Queue and does not save a Playlist. If no track is playing, use the page's Play button or next control to start the queue.
View tool JSON
{
"name": "drivebeats_queue_tracks",
"kind": "act",
"impl": "imperative",
"description": "Queue track IDs from Library Search or saved collections without starting or interrupting playback. Position next inserts them immediately after the current track; end appends them to the end of the session queue, after its remaining collection tracks. Tracks retain the supplied order, even during shuffle. Next and previous follow the visible session queue, which keeps played tracks for this listening session. This changes only the current browser's Playback Queue and does not save a Playlist. If no track is playing, use the page's Play button or next control to start the queue.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"trackIds": {
"minItems": 1,
"maxItems": 1000,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 512
}
},
"position": {
"type": "string",
"enum": [
"next",
"end"
]
}
},
"required": [
"trackIds",
"position"
]
},
"page": "/"
}drivebeats_control_playbackAction
Control the current page's player: pause, resume, next, previous, seek in seconds, volume from 0 to 1, shuffle enabled, or repeat off/one/all. Next and previous follow the visible session queue, including played tracks and explicit additions. Previous rewinds the current track when more than three seconds have played. Resume preserves the existing queue. If audio permission blocks playback, ask the user to tap Play in DriveBeats and check status. Busy results require waiting for the current action.
View tool JSON
{
"name": "drivebeats_control_playback",
"kind": "act",
"impl": "imperative",
"description": "Control the current page's player: pause, resume, next, previous, seek in seconds, volume from 0 to 1, shuffle enabled, or repeat off/one/all. Next and previous follow the visible session queue, including played tracks and explicit additions. Previous rewinds the current track when more than three seconds have played. Resume preserves the existing queue. If audio permission blocks playback, ask the user to tap Play in DriveBeats and check status. Busy results require waiting for the current action.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"oneOf": [
{
"type": "object",
"properties": {
"action": {
"type": "string",
"enum": [
"pause",
"resume",
"next",
"previous"
]
}
},
"required": [
"action"
]
},
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "seek"
},
"seconds": {
"type": "number",
"minimum": 0
}
},
"required": [
"action",
"seconds"
]
},
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "volume"
},
"volume": {
"type": "number",
"minimum": 0,
"maximum": 1
}
},
"required": [
"action",
"volume"
]
},
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "shuffle"
},
"enabled": {
"type": "boolean"
}
},
"required": [
"action",
"enabled"
]
},
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "repeat"
},
"mode": {
"type": "string",
"enum": [
"off",
"one",
"all"
]
}
},
"required": [
"action",
"mode"
]
}
],
"type": "object"
},
"page": "/"
}drivebeats_save_playlistAction
Create a named empty Playlist, or rename an existing Playlist by ID. For a curated Playlist, discover tracks with Library Search, then populate it with drivebeats_edit_playlist_tracks and verify the saved contents with drivebeats_list_collections. Changes sync to your DriveBeats cloud library. If completion is uncertain, read collections before repeating creation to avoid duplicates.
View tool JSON
{
"name": "drivebeats_save_playlist",
"kind": "act",
"impl": "imperative",
"description": "Create a named empty Playlist, or rename an existing Playlist by ID. For a curated Playlist, discover tracks with Library Search, then populate it with drivebeats_edit_playlist_tracks and verify the saved contents with drivebeats_list_collections. Changes sync to your DriveBeats cloud library. If completion is uncertain, read collections before repeating creation to avoid duplicates.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"playlistId": {
"type": "string",
"minLength": 1,
"maxLength": 512
}
},
"required": [
"name"
]
},
"page": "/"
}drivebeats_edit_playlist_tracksAction
Add track IDs from Library Search or saved collections to a Playlist, or remove a track. Verified saved tracks do not need a Library refresh. Changes sync in DriveBeats; Google Drive stays read-only. Verify collections before retrying an uncertain change.
View tool JSON
{
"name": "drivebeats_edit_playlist_tracks",
"kind": "act",
"impl": "imperative",
"description": "Add track IDs from Library Search or saved collections to a Playlist, or remove a track. Verified saved tracks do not need a Library refresh. Changes sync in DriveBeats; Google Drive stays read-only. Verify collections before retrying an uncertain change.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"oneOf": [
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "add"
},
"playlistId": {
"type": "string",
"minLength": 1,
"maxLength": 512
},
"trackIds": {
"minItems": 1,
"maxItems": 1000,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 512
}
}
},
"required": [
"action",
"playlistId",
"trackIds"
]
},
{
"type": "object",
"properties": {
"action": {
"type": "string",
"const": "remove"
},
"playlistId": {
"type": "string",
"minLength": 1,
"maxLength": 512
},
"trackId": {
"type": "string",
"minLength": 1,
"maxLength": 512
}
},
"required": [
"action",
"playlistId",
"trackId"
]
}
],
"type": "object"
},
"page": "/"
}drivebeats_set_favoriteAction
Set or clear Favorite for a track ID returned by Library Search or saved collections. Verified saved tracks do not need a Library refresh. Changes sync to DriveBeats only. Verify collections before retrying an uncertain change.
View tool JSON
{
"name": "drivebeats_set_favorite",
"kind": "act",
"impl": "imperative",
"description": "Set or clear Favorite for a track ID returned by Library Search or saved collections. Verified saved tracks do not need a Library refresh. Changes sync to DriveBeats only. Verify collections before retrying an uncertain change.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"trackId": {
"type": "string",
"minLength": 1,
"maxLength": 512
},
"favorite": {
"type": "boolean"
}
},
"required": [
"trackId",
"favorite"
]
},
"page": "/"
}