nuvio-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| NUVIO_EMAIL | No | Nuvio account email | |
| NUVIO_PASSWORD | No | Nuvio account password | |
| NUVIO_HTTP_HOST | No | Host for the HTTP endpoint (used with NUVIO_TRANSPORT=http) | |
| NUVIO_HTTP_PORT | No | Port for the HTTP endpoint (used with NUVIO_TRANSPORT=http) | |
| NUVIO_TRANSPORT | No | Transport mode: stdio (default) or http | |
| NUVIO_HTTP_TOKEN | No | Bearer token for the HTTP endpoint | |
| NUVIO_REFRESH_TOKEN | No | Alternative to email/password | |
| NUVIO_DISABLE_SNAPSHOTS | No | Set to 'true' to disable local snapshots |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| nuvio_list_profilesA | List all profiles (slot 1..6, name, avatar, flags, PIN lock state). |
| nuvio_create_profileA | Add a new profile, preserving every existing one. Max 6 profiles; slot 1 is primary. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_update_profileB | Sparsely update one profile (name, avatar color, avatar id/url, uses_primary_addons). Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_delete_profileA | Delete a profile and ALL of its data (addons, settings, collections, library, history). Profile 1 cannot be deleted and this cannot be undone. Cannot be undone: call it once to get a short-lived confirmation token, then call again with that token. Supports dry_run. |
| nuvio_copy_setupA | Copy a profile setup to another profile, optionally across platforms (platforms: [{from,to}], defaults to identity per platform). Settings are deep-merged (settings_mode=merge) or replaced (replace); provider credentials can be left alone, merged, or replaced. Transactional: on failure it rolls back and reports whether the rollback completed. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_set_profile_pinA | Set or change the PIN lock on a profile. Not reversible (the PIN hash is never returned). Cannot be undone: call it once to get a short-lived confirmation token, then call again with that token. Supports dry_run. |
| nuvio_clear_profile_pinA | Remove the PIN lock from a profile. Not reversible. Cannot be undone: call it once to get a short-lived confirmation token, then call again with that token. Supports dry_run. |
| nuvio_copy_profile_setupA | [DEPRECATED] Use nuvio_copy_setup instead. Copy TV/mobile/desktop settings (and optionally provider credentials) from one profile to another. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_list_addonsA | List the addons installed on a profile (url, name, enabled, sort_order). |
| nuvio_inspect_addonA | Fetch and summarise a Stremio/Nuvio addon manifest (name, version, resources, catalog types) before installing. |
| nuvio_add_addonA | Install an addon on a profile by manifest URL. The current addon list is read and preserved; only the new addon is appended. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_update_addonA | Change an addon name, enabled flag or sort order. Identify it by url or table id. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_reorder_addonsA | Set the display order of a profile's addons. Provide every installed addon URL exactly once, in the desired order. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_remove_addonA | Uninstall one addon from a profile. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_toggle_addonA | [DEPRECATED] Use nuvio_update_addon instead. Turn one addon on or off for a profile. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_list_pluginsA | List plugins installed on a profile. |
| nuvio_add_pluginA | Install a plugin on a profile by URL, preserving the existing plugin list. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_update_pluginA | Change a plugin name, enabled flag, repo type or sort order. Identify it by url or table id. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_reorder_pluginsA | Set plugin order. Provide every installed plugin URL exactly once, in the desired order. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_remove_pluginA | Uninstall a plugin from a profile. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_toggle_pluginA | [DEPRECATED] Use nuvio_update_plugin instead. Turn one plugin on or off for a profile. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_get_settingsB | Read the JSON settings blob for a profile on a platform. |
| nuvio_update_settingsA | Update a profile settings blob. |
| nuvio_update_home_catalog_settingsA | Update the home screen layout/catalog blob with the same patch/set/unset semantics as nuvio_update_settings. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_get_home_catalog_settingsA | Read the home screen layout/catalog configuration for a profile on a platform. |
| nuvio_set_settingA | [DEPRECATED] Use nuvio_update_settings instead. Set one nested value by dot path. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_unset_settingA | [DEPRECATED] Use nuvio_update_settings instead. Delete one nested value by dot path. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_set_home_catalog_pathA | [DEPRECATED] Use nuvio_update_home_catalog_settings instead. Set one nested value by dot path inside the home catalog settings blob. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_copy_settingsA | [DEPRECATED] Use nuvio_copy_setup instead. Replace the target's settings blob with a copy of the source's. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_list_collectionsA | List a profile's custom collections (titles, view mode, folders, catalog sources). |
| nuvio_create_collectionA | Add a new collection to a profile. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_update_collectionB | Edit a collection's title, view mode, pin state or replace its folder list. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_delete_collectionA | Remove a collection from a profile. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_add_collection_folderA | Append a folder (with catalog sources) to an existing collection. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_update_collection_folderA | Edit a folder's title, cover, tile shape or catalog sources. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_remove_collection_folderB | Remove a folder from a collection. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_reorder_collectionsA | Set collection order. Provide every collection id exactly once, in the desired order. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_duplicate_collectionA | Copy a collection (including folders and catalog sources) under a new id, placed right after the source. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_reorder_collection_foldersA | Set folder order. Provide every folder id in the collection exactly once, in the desired order. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_get_libraryA | List items in a profile's library (bookmarks/favourites). |
| nuvio_add_to_libraryA | Add or update library items in bulk (upsert by content_id + content_type). Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_remove_from_libraryA | Remove items from a profile's library by content_id + content_type. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_get_watch_progressC | List "continue watching" progress entries for a profile. |
| nuvio_set_watch_progressA | Create or update continue-watching entries (position/duration) for movies or episodes, in bulk. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_delete_watch_progressA | Delete continue-watching entries using structured keys (content_id + optional season/episode). Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_get_watch_historyC | List watched items for a profile. |
| nuvio_add_to_watch_historyB | Idempotently add watched items to a profile's history (upsert by content_id + season + episode). A repeated identical call does not create a duplicate. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_delete_watch_historyA | Delete watch-history entries by content id (and season/episode). Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_mark_watchedA | [DEPRECATED] Use nuvio_add_to_watch_history instead. Add an entry to a profile's watch history. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_list_provider_credentialsA | List configured providers for a profile (debrid services, TMDB, MDBList, AniSkip, IntroDB). Secret values are masked. |
| nuvio_set_provider_credentialA | Store an API key for a provider: debrid:torbox, debrid:premiumize, debrid:realdebrid, tmdb, mdblist, introdb (api key) or animeskip (client id). Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_test_provider_credentialA | Verify a provider credential without storing it. The secret is never returned or logged; the result reports format validity and, where the provider exposes a cheap endpoint, a live check. |
| nuvio_delete_provider_credentialA | Remove a stored provider credential from a profile. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_list_trackersA | List linked trackers (MAL / AniList / Kitsu) and their per-profile settings. Access tokens are masked. |
| nuvio_set_tracker_settingsA | Set which statuses sync, row order and progress syncing for a linked tracker. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_link_trackerA | Store tracker OAuth tokens for a profile. Use this only when tokens were obtained out-of-band; prefer the app sign-in flow. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_unlink_trackerA | Remove stored tokens for a tracker on a profile. Supports dry_run and snapshots the previous state before the write; revert with nuvio_undo. |
| nuvio_list_sessionsA | List active login sessions/devices (device name, platform, client, last active, which is current). |
| nuvio_revoke_sessionA | Revoke one login session (log that device out). Cannot be undone — the device must sign in again. Never deletes the account. Cannot be undone: call it once to get a short-lived confirmation token, then call again with that token. Supports dry_run. |
| nuvio_register_deviceA | Register a device/installation against the account. client_name must be one the Nuvio backend accepts (for example 'Nuvio Web'); other values are rejected by the backend. Cannot be undone: call it once to get a short-lived confirmation token, then call again with that token. Supports dry_run. |
| nuvio_whoamiA | Return the signed-in Nuvio account and the backend URL. |
| nuvio_sync_overviewA | Summary counts of profiles, addons, plugins, library items, watch progress and history. |
| nuvio_list_avatarsA | List avatar catalog ids available for profile avatars. |
| nuvio_healthA | Ping the Nuvio backend database. |
| nuvio_export_backupA | Export account data as a JSON backup (profiles, addons, plugins, library, progress, history, settings, collections). Credentials and tokens are excluded server-side. With no scope this is a full backup; pass scope/profile_ids/platforms to narrow it. |
| nuvio_restore_backupA | Replace account data from a backup produced by nuvio_export_backup. Only available on self-hosted backends that expose sync_restore_account_backup. High risk: overwrites profiles/addons/library/settings. Cannot be undone: call it once to get a short-lived confirmation token, then call again with that token. Supports dry_run. |
| nuvio_list_undoA | List recent automatically-captured snapshots. Each can be reverted with nuvio_undo. |
| nuvio_inspect_snapshotA | Show the captured previous state of a snapshot (secrets masked). |
| nuvio_undoA | Revert a previous change using its snapshot (single or composite). Defaults to the most recent change. Snapshots the current state first, so an undo can itself be undone. |
| nuvio_redoA | Re-apply the change that the most recent nuvio_undo reverted. Snapshots current state first. |
| nuvio_prune_snapshotsA | Delete old snapshot files according to retention limits (age, count, total size). Local-only; defaults to dry_run. Destructive local operation: previews unless confirm=true; dry_run=true always previews. |
| nuvio_apply_planB | Apply several canonical operations as one transaction with a composite snapshot and rollback. Defaults to dry_run. |
| nuvio_capabilitiesA | Describe this Nuvio MCP server: backend, transport, automatic-undo behaviour, the canonical tool list and the deprecated compatibility aliases. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 73 tools
The canonical tools are mostly distinct by resource+action, but the set includes 8 deprecated aliases that duplicate core operations (set_setting/unset_setting vs update_settings, copy_profile_setup/copy_settings vs copy_setup, toggle_addon vs update_addon, mark_watched vs add_to_watch_history). The [DEPRECATED] cross-references help, but in a 73-tool surface they still create avoidable selection ambiguity.
All tools share a nuvio_ prefix and mostly use verb_noun names, but the verb vocabulary is mixed: list_ vs get_ for reads, update_ vs set_ vs unset_ for settings, and deprecated aliases (toggle_, mark_, copy_) break the canonical pattern. It remains readable because the resource nouns are clear.
73 tools is an extreme count for a single MCP server, even for a broad media-profile management domain. The deprecated compatibility aliases could be hidden or stripped to reduce the surface significantly; exposing them all bloats the toolset.
The surface covers the full lifecycle of every major entity: profiles, addons, plugins, settings, collections, library, watch progress/history, provider credentials, trackers, sessions, and backups, plus snapshot/undo infrastructure. I don't see obvious operational gaps that would force agents into dead ends.