[ { "description": "Search for media resources including movies, TV shows, anime, etc. Supports searching by title, year, type, and other criteria. Returns detailed media information from TMDB database.", "name": "search_media", "parameters": { "properties": { "explanation": { "description": "Clear explanation of why this tool is being used in the current context", "type": "string" }, "title": { "description": "The title of the media to search for (e.g., 'The Matrix', 'Breaking Bad')", "type": "string" }, "year": { "description": "Release year of the media (optional, helps narrow down results)", "type": "string" }, "media_type": { "description": "Type of media content: 'movie' for films, 'tv' for television series, 'anime' for anime series", "type": "string" }, "season": { "description": "Season number for TV shows and anime (optional, only applicable for series)", "type": "integer" } }, "required": [ "title", "explanation" ], "type": "object" } }, { "description": "Add media subscription to create automated download rules for movies and TV shows. The system will automatically search and download new episodes or releases based on the subscription criteria.", "name": "add_subscribe", "parameters": { "properties": { "explanation": { "description": "Clear explanation of why this tool is being used in the current context", "type": "string" }, "title": { "description": "The title of the media to subscribe to (e.g., 'The Matrix', 'Breaking Bad')", "type": "string" }, "year": { "description": "Release year of the media (required for accurate identification)", "type": "string" }, "media_type": { "description": "Type of media content: 'movie' for films, 'tv' for television series", "type": "string" }, "season": { "description": "Season number for TV shows (optional, if not specified will subscribe to all seasons)", "type": "integer" }, "tmdb_id": { "description": "TMDB database ID for precise media identification (optional but recommended for accuracy)", "type": "string" } }, "required": [ "title", "year", "media_type", "explanation" ], "type": "object" } }, { "description": "Search for torrent files across configured indexer sites based on media information. Returns available torrent downloads with details like file size, quality, and download links.", "name": "search_torrents", "parameters": { "properties": { "explanation": { "description": "Clear explanation of why this tool is being used in the current context", "type": "string" }, "title": { "description": "The title of the media resource to search for (e.g., 'The Matrix 1999', 'Breaking Bad S01E01')", "type": "string" }, "year": { "description": "Release year of the media (optional, helps narrow down search results)", "type": "string" }, "media_type": { "description": "Type of media content: 'movie' for films, 'tv' for television series", "type": "string" }, "season": { "description": "Season number for TV shows (optional, only applicable for series)", "type": "integer" }, "sites": { "description": "Array of specific site IDs to search on (optional, if not provided searches all configured sites)", "items": { "type": "integer" }, "type": "array" } }, "required": [ "title", "explanation" ], "type": "object" } }, { "description": "Add torrent download task to the configured downloader (qBittorrent, Transmission, etc.). Downloads the torrent file and starts the download process with specified settings.", "name": "add_download", "parameters": { "properties": { "explanation": { "description": "Clear explanation of why this tool is being used in the current context", "type": "string" }, "torrent_title": { "description": "The display name/title of the torrent (e.g., 'The.Matrix.1999.1080p.BluRay.x264')", "type": "string" }, "torrent_url": { "description": "Direct URL to the torrent file (.torrent) or magnet link", "type": "string" }, "downloader": { "description": "Name of the downloader to use (optional, uses default if not specified)", "type": "string" }, "save_path": { "description": "Directory path where the downloaded files should be saved (optional, uses default path if not specified)", "type": "string" }, "labels": { "description": "Comma-separated list of labels/tags to assign to the download (optional, e.g., 'movie,hd,bluray')", "type": "string" } }, "required": [ "torrent_title", "torrent_url", "explanation" ], "type": "object" } }, { "description": "Query subscription status and list all user subscriptions. Shows active subscriptions, their download status, and configuration details.", "name": "query_subscribes", "parameters": { "properties": { "explanation": { "description": "Clear explanation of why this tool is being used in the current context", "type": "string" }, "status": { "description": "Filter subscriptions by status: 'active' for enabled subscriptions, 'inactive' for disabled ones, 'all' for all subscriptions", "type": "string" }, "media_type": { "description": "Filter by media type: 'movie' for films, 'tv' for television series, 'all' for all types", "type": "string" } }, "required": [ "explanation" ], "type": "object" } }, { "description": "Query download status and list all active download tasks. Shows download progress, completion status, and task details from configured downloaders.", "name": "query_downloads", "parameters": { "properties": { "explanation": { "description": "Clear explanation of why this tool is being used in the current context", "type": "string" }, "downloader": { "description": "Name of specific downloader to query (optional, if not provided queries all configured downloaders)", "type": "string" }, "status": { "description": "Filter downloads by status: 'downloading' for active downloads, 'completed' for finished downloads, 'paused' for paused downloads, 'all' for all downloads", "type": "string" } }, "required": [ "explanation" ], "type": "object" } }, { "description": "Query downloader configuration and list all available downloaders. Shows downloader status, connection details, and configuration settings.", "name": "query_downloaders", "parameters": { "properties": { "explanation": { "description": "Clear explanation of why this tool is being used in the current context", "type": "string" } }, "required": [ "explanation" ], "type": "object" } }, { "description": "Get trending and popular media recommendations from various sources. Returns curated lists of popular movies, TV shows, and anime based on different criteria like trending, ratings, or calendar schedules.", "name": "get_recommendations", "parameters": { "properties": { "explanation": { "description": "Clear explanation of why this tool is being used in the current context", "type": "string" }, "source": { "description": "Recommendation source: 'tmdb_trending' for TMDB trending content, 'douban_hot' for Douban popular content, 'bangumi_calendar' for Bangumi anime calendar", "type": "string" }, "media_type": { "description": "Type of media content: 'movie' for films, 'tv' for television series, 'all' for all types", "type": "string" }, "limit": { "description": "Maximum number of recommendations to return (default: 20, maximum: 100)", "type": "integer" } }, "required": [ "explanation" ], "type": "object" } }, { "description": "Query media library status and list all media files that have been successfully processed and added to the media server (Plex, Emby, Jellyfin). Shows library statistics and file details.", "name": "query_media_library", "parameters": { "properties": { "explanation": { "description": "Clear explanation of why this tool is being used in the current context", "type": "string" }, "media_type": { "description": "Type of media content: 'movie' for films, 'tv' for television series, 'all' for all types", "type": "string" }, "title": { "description": "Specific media title to search for (optional, if provided returns detailed info for that specific media)", "type": "string" } }, "required": [ "explanation" ], "type": "object" } }, { "description": "Send notification message to the user through configured notification channels (Telegram, Slack, WeChat, etc.). Used to inform users about operation results, errors, or important updates.", "name": "send_message", "parameters": { "properties": { "explanation": { "description": "Clear explanation of why this tool is being used in the current context", "type": "string" }, "message": { "description": "The message content to send to the user (should be clear and informative)", "type": "string" }, "message_type": { "description": "Type of message: 'info' for general information, 'success' for successful operations, 'warning' for warnings, 'error' for error messages", "type": "string" } }, "required": [ "message", "explanation" ], "type": "object" } } ]