SuperAPI AI 工具集

mediaserver-operation

通用与其它

查看项目

更新于 10-15 23:43

技能介绍

用途:该技能用于对已配置的媒体服务器进行服务器原生探索、诊断、播放状态查询、媒体库浏览、扫描与元数据刷新。脚本会自行读取 MoviePilot 的本地服务器配置与凭据,禁止请求、打印或传入主机、用户名、密码、API Key、Token、Cookie 或任意 URL。

主要能力:提供 activity.backdrops、activity.latest、activity.resume、capabilities.list、instances.list、items.count、items.detail、items.list、items.movies.search、items.music.search、items.season_episodes、libraries.list、library.scan、metadata.refresh、playback.sessions、playback.url、server.statistics、server.user.library_folders、server.users.count 等动作。多数为只读;library.scan 与 metadata.refresh 会产生外部副作用。

使用方式:在 MoviePilot 程序目录用项目运行时执行,例如 cd <MOVIEPILOT_ROOT> 后运行 python skills/mediaserver-operation/scripts/mp-mediaserver.py instances。调用动作示例:python skills/mediaserver-operation/scripts/mp-mediaserver.py call --server "living-room" --action activity.latest --arguments '{"limit":20}'。--arguments 必须是单个 JSON 对象,列表读取默认 50 条、上限 200。已知服务器名时用 --server 直接调用;未知时可省略,助手会自动使用唯一启用的服务器;多个实例有歧义时失败结果会列出有效名称。外部 MCP 客户端使用管理员专用工具 mediaserver_operation,参数结构相同但无需 shell 引号。

适用场景:服务器原生探索、诊断、播放状态、库浏览、扫描与元数据刷新。库去重应使用 moviepilot-api 的 library.exists;提供方结果不等于 MoviePilot 的转移、订阅或历史事实。

限制:执行 library.scan 前需确认服务器与扫描范围/模式;metadata.refresh 前需确认条目列表,因为无法精确映射时可能触发大范围刷新。扫描或刷新后应通过 activity.latest、items.detail 或最小相关库查询验证。若提供方不支持某动作,应报告为不支持,不得回退到原始 HTTP、任意 SDK 方法或从 MoviePilot 设置复制的凭据。不要用不满足 MoviePilot 所需 Python 版本的系统 python3。从 <CONFIG_PATH>/agent/skills/ 直接运行复制脚本时需先设置 MOVIEPILOT_ROOT。