0.2.1npm · @torrentclaw/mcp · latest release
Observed 2026-08-17T21:27:42.177Z using mcpSecurity-inventory. Protocol 2025-06-18.
| Tool | Category | Risk |
|---|---|---|
autocompleteGet type-ahead search suggestions for movies and TV shows. Use this to validate or disambiguate a title before calling search_content. Returns up to 8 suggestions with id, title, year, and content type. Much faster than a full search.Input schema{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 200,
"description": "Partial title to get suggestions for (min 2 chars). E.g. 'break' → 'Breaking Bad', 'The Break-Up'."
}
},
"required": [
"query"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — |
get_creditsGet the director and top 10 cast members (with character names) for a movie or TV show. Use when the user asks about actors, cast, director, or 'who is in' a title. Requires content_id from search_content results.Input schema{
"type": "object",
"properties": {
"content_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 999999999,
"description": "Numeric content ID from search_content results (the 'Content ID' field). Example: 42"
}
},
"required": [
"content_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — |
get_popularGet trending movies and TV shows ranked by user click count. Use when the user asks for recommendations, trending titles, or 'what's popular'. Returns a paginated list with title, year, type, ratings, and content_id. Note: results do NOT include torrents — to get torrents for a title, call search_content with its name.Input schema{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 24,
"description": "Number of items (default: 12)"
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number (default: 1)"
},
"locale": {
"type": "string",
"pattern": "^[a-z]{2}$",
"description": "Locale for translated titles (e.g. 'es' for Spanish, 'fr' for French). If omitted, returns English."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — |
get_recentGet the most recently added movies and TV shows, sorted by addition date. Use when the user asks 'what's new', 'latest additions', or 'recently added'. Returns a paginated list with title, year, type, ratings, date added, and content_id. Note: results do NOT include torrents — to get torrents for a title, call search_content with its name.Input schema{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 24,
"description": "Number of items (default: 12)"
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number (default: 1)"
},
"locale": {
"type": "string",
"pattern": "^[a-z]{2}$",
"description": "Locale for translated titles (e.g. 'es' for Spanish, 'fr' for French). If omitted, returns English."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — |
get_scan_statusCheck the status of a torrent audio/video scan request. Returns the current scan status (pending, scanning, completed, failed). Use after submit_scan_request.Input schema{
"type": "object",
"properties": {
"info_hash": {
"type": "string",
"pattern": "^[a-fA-F0-9]{40}$",
"description": "40-character hex torrent info_hash to check"
}
},
"required": [
"info_hash"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — |
get_torrent_urlGet a direct .torrent file download URL from an info_hash. Use when the user specifically wants a .torrent file rather than a magnet link (magnet links are already in search_content results). Returns a single URL the user can open in their browser or torrent client.Input schema{
"type": "object",
"properties": {
"info_hash": {
"type": "string",
"pattern": "^[a-fA-F0-9]{40}$",
"description": "40-character hex torrent info_hash from search_content results (e.g. 'a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2')"
}
},
"required": [
"info_hash"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — |
get_watch_providersCheck where a movie or TV show is available to stream, rent, or buy (Netflix, Disney+, Amazon Prime, etc.) in a specific country. Requires content_id from search_content results. Note: if you passed country to search_content, streaming info is already in those results — use this tool only for a different country or to get more detail. Returns grouped providers: Stream (subscription), Free, Rent, Buy.Input schema{
"type": "object",
"properties": {
"content_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 999999999,
"description": "Numeric content ID from search_content results (the 'Content ID' field). Example: 42"
},
"country": {
"type": "string",
"pattern": "^[A-Z]{2}$",
"default": "US",
"description": "ISO 3166-1 country code (e.g. US, ES, GB, DE). Default: US"
}
},
"required": [
"content_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — |
search_contentSearch for movies and TV shows by title, genre, year, rating, or quality. Returns matching content with metadata (title, year, genres, IMDb/TMDB ratings) and torrent download options (magnet links, quality, seeders, file size). This is the primary tool — use it first when a user asks to find, download, or learn about a movie or TV show. Results include a content_id needed by get_watch_providers and get_credits. For TV shows, you can filter by season/episode. Season/episode can also be auto-detected from the query (e.g. 'Bluey s01e05'). IMPORTANT: When presenting results to users, make magnet links clickable using markdown format [Download](magnet:?xt=...), include the contentUrl for browsing all seasons/episodes, and present the information in a user-friendly format rather than raw tables.Input schema{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Search query — typically a movie or TV show title (e.g. 'The Matrix', 'Breaking Bad'). Supports partial matches. Season/episode can be included in query (e.g. 'Bluey s01e05')."
},
"type": {
"type": "string",
"enum": [
"movie",
"show"
],
"description": "Filter by content type: 'movie' or 'show'"
},
"genre": {
"type": "string",
"maxLength": 50,
"pattern": "^[a-zA-Z\\s&-]+$",
"description": "Filter by genre name. Common values: Action, Adventure, Animation, Comedy, Crime, Documentary, Drama, Family, Fantasy, History, Horror, Music, Mystery, Romance, Science Fiction, Thriller, War, Western"
},
"year_min": {
"type": "integer",
"description": "Minimum release year (e.g. 2020)"
},
"year_max": {
"type": "integer",
"description": "Maximum release year (e.g. 2025)"
},
"min_rating": {
"type": "number",
"minimum": 0,
"maximum": 10,
"description": "Minimum IMDb rating (0-10). Example: 7 for well-rated content"
},
"quality": {
"type": "string",
"enum": [
"480p",
"720p",
"1080p",
"2160p"
],
"description": "Filter torrents by resolution"
},
"language": {
"type": "string",
"pattern": "^[a-z]{2}$",
"description": "ISO 639-1 language code to filter torrents (e.g. 'en' for English, 'es' for Spanish, 'fr' for French). Lowercase 2-letter code."
},
"audio": {
"type": "string",
"pattern": "^[a-zA-Z0-9.]+$",
"description": "Filter torrents by audio codec (e.g. 'aac', 'flac', 'atmos', 'opus', 'dts'). Substring match."
},
"hdr": {
"type": "string",
"enum": [
"hdr10",
"dolby_vision",
"hdr10plus",
"hlg"
],
"description": "Filter torrents by HDR format"
},
"availability": {
"type": "string",
"enum": [
"all",
"available",
"unavailable"
],
"description": "Filter by torrent availability: 'available' (has seeders), 'unavailable' (no seeders), 'all' (default)."
},
"season": {
"type": "integer",
"minimum": 0,
"maximum": 99,
"description": "Season number for TV shows (0-99). Use with type='show' to filter torrents for a specific season."
},
"episode": {
"type": "integer",
"minimum": 0,
"maximum": 999,
"description": "Episode number for TV shows (0-999). Use with season to filter torrents for a specific episode."
},
"locale": {
"type": "string",
"pattern": "^[a-z]{2}$",
"description": "Locale for translated titles and overviews (e.g. 'es' for Spanish, 'fr' for French). If omitted, returns English."
},
"sort": {
"type": "string",
"enum": [
"relevance",
"seeders",
"year",
"rating",
"added"
],
"default": "relevance",
"description": "Sort order for results"
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 1000,
"description": "Page number (default: 1, max: 1000)"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"description": "Results per page (default: 20, max: 50)"
},
"country": {
"type": "string",
"pattern": "^[A-Z]{2}$",
"description": "ISO 3166-1 country code for streaming availability (e.g. US, ES, GB, DE). If provided, results include which streaming services offer each title. If omitted, no streaming data is returned."
},
"compact": {
"type": "boolean",
"default": false,
"description": "When true, returns shorter magnet links (hash only, no trackers) to reduce output size. Magnets are still clickable. Recommended for large result sets or when context window is limited."
}
},
"required": [
"query"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — |
submit_scan_requestSubmit a torrent for audio/video quality analysis (codec, tracks, resolution, HDR). Use when the user wants to know the exact media specs of a torrent before downloading. Results are not instant — use get_scan_status to check progress. Rate limited to 5 requests per hour.Input schema{
"type": "object",
"properties": {
"info_hash": {
"type": "string",
"pattern": "^[a-fA-F0-9]{40}$",
"description": "40-character hex torrent info_hash to scan"
},
"email": {
"type": "string",
"format": "email",
"maxLength": 200,
"description": "Email address for scan completion notification"
}
},
"required": [
"info_hash",
"email"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — |
track_interactionTrack a user interaction with a torrent (magnet link click, .torrent download, or hash copy). Use this after presenting a magnet link or torrent URL to the user, to keep popularity stats accurate. Fire-and-forget — does not block.Input schema{
"type": "object",
"properties": {
"info_hash": {
"type": "string",
"pattern": "^[a-fA-F0-9]{40}$",
"description": "40-character hex torrent info_hash"
},
"action": {
"type": "string",
"enum": [
"magnet",
"torrent_download",
"copy"
],
"description": "Type of interaction: 'magnet' (clicked magnet link), 'torrent_download' (downloaded .torrent file), 'copy' (copied info hash or magnet)"
}
},
"required": [
"info_hash",
"action"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | — |
Best practices for presenting torrent search results to users in a user-friendly, actionable format
{
"resource_key": "torrentclaw://presentation-guide",
"uri": "torrentclaw://presentation-guide",
"name": "presentation-guide",
"description": "Best practices for presenting torrent search results to users in a user-friendly, actionable format",
"mime_type": "text/markdown",
"annotations": null,
"metadata_hash": "b23e0a033e1bda11b2e7a02522564087eeb6812513879041e717a4ac414b72fc"
}TorrentClaw catalog statistics. Returns JSON with: content counts (movies, shows, TMDB-enriched), torrent counts (total, with seeders, by source), and recent ingestion job history. Useful for understanding catalog coverage and data freshness.
{
"resource_key": "torrentclaw://stats",
"uri": "torrentclaw://stats",
"name": "stats",
"description": "TorrentClaw catalog statistics. Returns JSON with: content counts (movies, shows, TMDB-enriched), torrent counts (total, with seeders, by source), and recent ingestion job history. Useful for understanding catalog coverage and data freshness.",
"mime_type": "application/json",
"annotations": null,
"metadata_hash": "b5bafcd23a2c029c52521deaaafba71ad9f7fda2b404d86b633a9331bd7b3678"
}Guide for presenting torrent search results in a user-friendly format
{
"prompt_key": "presentation_guide",
"name": "presentation_guide",
"description": "Guide for presenting torrent search results in a user-friendly format",
"arguments": [],
"metadata_hash": "bae132c4295fa1c6cd55112811c13005c4a17efc96c4fc5282fc5f6f5540f4cd"
}Search for a movie by title and get torrent download options
{
"prompt_key": "search_movie",
"name": "search_movie",
"description": "Search for a movie by title and get torrent download options",
"arguments": [
{
"name": "title",
"description": "Movie title to search for",
"required": true
}
],
"metadata_hash": "285dcdaa27082f50dbda231eeb3280a511dd8d0cd131b21cc430e63f93311632"
}Search for a TV show by title and get torrent download options
{
"prompt_key": "search_show",
"name": "search_show",
"description": "Search for a TV show by title and get torrent download options",
"arguments": [
{
"name": "title",
"description": "TV show title to search for",
"required": true
},
{
"name": "season",
"description": "Specific season number",
"required": false
}
],
"metadata_hash": "ab78f01ab456c76c774bcc4b8c402986c339f746da8db4f157df9214933234bd"
}Discover recently added movies and TV shows
{
"prompt_key": "whats_new",
"name": "whats_new",
"description": "Discover recently added movies and TV shows",
"arguments": [],
"metadata_hash": "a818871dbed5db9acf8a7db1c1eb7357d02d6fb8f15ddc99a604f6d8bfba5a43"
}Find where to watch a movie or TV show via streaming services
{
"prompt_key": "where_to_watch",
"name": "where_to_watch",
"description": "Find where to watch a movie or TV show via streaming services",
"arguments": [
{
"name": "title",
"description": "Movie or TV show title",
"required": true
},
{
"name": "country",
"description": "2-letter country code (e.g. US, ES)",
"required": false
}
],
"metadata_hash": "96d4b427fb302dff1540bb5844fd4a8d4fa805601f43fc19b9456191b6566774"
}Compared with initial baseline using full_baseline.
| Risk | Change | Subject |
|---|---|---|
| No material changes recorded. | ||
| Severity | Finding | Advisory |
|---|---|---|
| No confirmed vulnerability is published for this version. | ||
Artifact SHA-256: c4bbf2cf0f69cccf4acc5ab616a5b74417e64c69027d456e826af207609f069b
Scanner: mcp-proof-engine 0.1.0.