
Mediafleet
io.github.CloudCorpRecords由 GitHub 账号 CloudCorpRecords 发布v0.1.0更新于 Nov 3, 2026
在沙箱中运行 JavaScript,以编排 Sonarr、Radarr、Plex 及其他媒体服务。
AI 翻译由 AI 模型根据下方的原文描述翻译,可能有误。
原文描述
Run JavaScript in a sandbox to orchestrate Sonarr, Radarr, Plex and other media services.
概览
Mediafleet 的本地 MCP 服务;无需登录;STDIO。
暂无 AI 概览:以下信息来自注册中心条目和服务本身。
安装
在 SourceWeft 中
- 打开 控制台中的 Mediafleet,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
mediafleet
mediafleet puts a whole self-hosted media stack behind a single MCP
tool. Instead of one tool per operation per service, the server exposes
one Code Mode tool, yarr: you hand it a JavaScript async arrow
function, and it runs in a sandbox whose globals are callables for the
media services you configured — Sonarr, Radarr, Prowlarr, Tautulli,
Overseerr, Bazarr, SABnzbd, qBittorrent, Plex and Jellyfin. A single
call can query three services, combine the answers, and return one
composed result.
This package is a clean-room rebuild of that documented surface. It implements the full documented core: the one tool, the sandbox globals, the action dispatch, and the snippet store described below.
Configuration
Services are opted in through the environment:
Only configured services appear in the sandbox. Unconfigured names are
simply not defined there, and api.<service> is absent for them too.
The sandbox
The code argument is an async arrow function. It is invoked with no
argument (snippet runs pass their input instead; see below) and its
return value — normalised to plain JSON-shaped data — becomes the
tool result, alongside any artifacts written and any console lines
captured during the run.
Globals available to the code:
- Per-service callables —
sonarr,radarr, … Calling one performs a GET (await sonarr("/api/v3/series"));.get,.post,.putand.delete(path, body)are attached, plus.status(), which probes the service's conventional status endpoint and reports{service, ok, status}or{service, ok: false, error}. api.<service>.get/post/put/delete(path, body)— the explicit HTTP surface for each configured service.callTool(action, params)— dispatch for the documented actions. Generic:service_status({service?}),api_get,api_post,api_put,api_delete(each{service, path, body?}) andhelp. Codemode:codemode({code, input?}runs nested code, otherwise returns a summary),op(one of{path}to describe,{name, input?}to run a snippet,{code, input?}to run code),snippet_list,snippet_save({name, code}),snippet_run({name, input?}) andsnippet_delete({name}).codemode.search(query)— substring-search the catalogue of services, api paths, actions and helpers.codemode.describe(path)— return the catalogue entry for one path, e.g.codemode.describe("api.sonarr.get").codemode.snippets()— list the snippets in the store.codemode.run(name, input)— run a saved snippet; its function receivesinputas its argument.writeArtifact(name, content)— store a named text artifact; everything written during a run is returned with that run's result.console.log/info/warn/error— captured and returned as the run'slogs, never written to the server's stdout.
Snippets live in a per-process in-memory store: they persist across calls for the life of the server process and are gone when it exits.
Two honest limits: the sandbox is node:vm, which isolates globals
(there is no process or require inside) but is not a hardened
security boundary; and destructive verbs are not specially gated — if
the code issues a DELETE, mediafleet executes it, exactly as written.
Install
Or run the container image:
The container defaults to the MCP server. Pass CLI arguments to use
it as a CLI instead. Remember to pass the YARR_* environment
variables to whichever process runs the server.
CLI
Exit codes: 0 on success, 1 on an execution or validation error,
2 on a usage error.
MCP client config
MCP tools
Development
All service traffic goes through a single injectable executor function, and the default executor's HTTP goes through an injectable fetch, which is what lets the test suite exercise the whole surface — URL and header construction included — without a live service.
License
MIT — see LICENSE. Copyright (c) 2026 Rene Turcios.
来源:README.md,提交 8155277
工具
0版本历史
1- v0.1.0最新Nov 3, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分