search
Search the USER'S COLLECTION by title, creator, genre, or theme. Returns items they own with status, ratings, and for box sets, the list of contained albums. Use this to answer questions about what the user has.
get_details
Get FULL details of an item FROM THE USER'S COLLECTION including AI analysis, user notes, rating, timeline, and all metadata. For albums: includes track list with durations. For box sets: lists ALL contained albums. Use this to answer specific questions about items the user owns.
get_stats
Get collection statistics including progress, rating distribution, genre/theme breakdown, and timeline. If no media_type specified, returns combined stats.
update_status
Update status. Books: unread, reading, finished, abandoned. Movies/shows/anime: unwatched, watching, watched, abandoned. Albums: unheard, listening, played, saved.
update_rating
Set or update user rating (1-5 stars).
update_notes
Add or update personal notes for an item.
get_by_rating
Get items filtered by user rating range.
get_by_status
Get items filtered by status. Books: unread, reading, finished, abandoned. Movies/shows/anime: unwatched, watching, watched, abandoned. Albums: unheard, listening, played, saved.
get_timeline
Get timeline showing items started and finished over time.
edit_item
Edit metadata (title, creator, external ID). Use new_external_id to re-link to correct database entry, then call re_enrich to fetch correct metadata.
lookup_item
Search EXTERNAL databases (NOT the user's collection) to find items BEFORE adding them. Use search/get_details for items the user already owns. Data sources: Books=OpenLibrary, Movies/Shows=TMDB, Albums=Discogs, Anime=AniList. Use anime (not show) for Japanese animation.
add_item
Add a new item to the library. For best results, use lookup_item first to get the external_id. IMPORTANT: Use anime (not show) for ALL Japanese animation including series, movies, OVAs.
delete_item
Delete an item from the library.
re_enrich
Re-fetch all metadata from external sources. Use when item has wrong data.
search_youtube
Search YouTube for relevant videos (interviews, trailers, analysis, music videos).
get_track_previews
Get playable 30-second audio previews for tracks from an album IN THE USER'S LIBRARY.
preview_album
Preview any album from Apple Music WITHOUT adding to library. Use this to sample before committing to add. Returns playable 30-second previews.
search_book_content
Semantic search within an uploaded book (EPUB/PDF). Uses AI embeddings to find relevant passages.
read_book_section
Read a specific section of an uploaded book by line numbers.
bulk_update_status
Update status for multiple items at once.
random_pick
Pick random item(s) for serendipitous discovery.
expand_research_scope
Add an item to the current research corpus (focused research mode only).
get_scope_info
Get information about the current research scope.
get_context
Get user context for adaptive conversation. Returns lifecycle stage and behavioral signals.
get_signals
Get behavioral signals: theme repetition, consumption gaps, and recent activity.
search_conversations
Search past conversations with this user. Supports semantic search - finds conceptually related conversations, not just keyword matches.
save_insight
Save a lasting insight about the user to their persistent profile. Use when you discover meaningful patterns, preferences, personal connections to media, or cross-media themes.
get_user_profile
Get the persistent profile built from past conversations. Shows taste patterns, key facts, cross-media connections, and preferences.
show_item
ALWAYS use this tool when users say "show me", "open", "go to", "take me to", or "pull up" an item. This navigates them to the item's detail page. Works on ALL clients (web app, iOS app, Claude Desktop) - triggers navigation or returns clickable URL. Do NOT just describe the item when they want to SEE it.