/ Каталог / Песочница / media-library-organizer-skill
● Сообщество Innei ⚡ Сразу

media-library-organizer-skill

автор Innei · Innei/media-library-organizer-skill

Preps media libraries for Jellyfin/Plex/Emby — cleans junk, merges scattered episodes, normalizes folder names, verifies completeness against TMDB.

A Claude Code skill (with standalone bash scripts) that systematically organizes movie / TV / anime libraries for media servers. Scans directories, removes junk (.DS_Store, SMB residuals, empties), merges duplicates by title+year+quality, consolidates scattered release-group folders, normalizes to Title (Year), and cross-references TMDB to flag missing episodes. Tiered safety: only genuinely-junk deletes run unattended — substantive changes wait for your approval.

Зачем использовать

Ключевые функции

Живое демо

Как выглядит на практике

media-library-organizer-skill.replay ▶ готово
0/0

Установка

Репозиторий автора · Официальная документация Claude Skills

Сценарии использования

Реальные сценарии: media-library-organizer-skill

Prep a messy download library for Jellyfin

👤 Home media server users with a chaotic downloads folder ⏱ ~60 min intermediate

Когда использовать: Before pointing Jellyfin at a folder full of release-group-named chaos.

Поток
  1. Scan and analyze
    Use media-library-organizer on /media/downloads. Scan-only — list junk, duplicates, scattered episodes.✓ Скопировано
    → Report with 3 sections: junk / duplicates / scattered
  2. Auto-clean junk (safe tier)
    Proceed with junk cleanup (.DS_Store, SMB metadata, empty dirs).✓ Скопировано
    → Small deletions, nothing risky
  3. Confirm and merge duplicates
    Now consolidate duplicates — I'll approve each.✓ Скопировано
    → One-by-one approvals with title/year/quality shown
  4. Normalize folder names
    Rename to Title (Year) format — warn if anything is currently seeding.✓ Скопировано
    → Seed warning surfaces before renames
  5. Verify via TMDB
    Cross-check episode counts against TMDB — list missing.✓ Скопировано
    → Per-show missing-episode list

Итог: Jellyfin/Plex recognizes everything; missing gaps are explicit.

Подводные камни
  • Rename breaks an active torrent seed — Skill warns; stop the torrent or hard-link before renaming
  • Merging different-quality versions loses the good one — Skill prioritizes higher quality — double-check before confirming
Сочетать с: filesystem

Consolidate an anime library with mixed release groups

👤 Anime collectors ⏱ ~45 min intermediate

Когда использовать: Your anime library has 3 release groups per show across different folders.

Поток
  1. Scan
    Scan /anime for scattered-episode patterns across release groups.✓ Скопировано
    → Per-show merge candidates
  2. Pick canonical version per show
    For each candidate, pick the highest-quality release group and merge others into it (or trash).✓ Скопировано
    → Clean per-show folders

Итог: One folder per show with consistent naming.

Комбинации

Сочетайте с другими MCP — эффект x10

media-library-organizer-skill + filesystem

Edit NFO files or custom sidecars during the same session

While organizing, also add .nfo files for each movie with TMDB id.✓ Скопировано

Инструменты

Что предоставляет этот MCP

ИнструментВходные данныеКогда вызыватьСтоимость
scan root path Start of any organize session 0 — local
clean_junk root path, safe_only=true First destructive pass 0
merge_duplicates duplicate pair list After duplicates approved 0
normalize_names root path After cleanup 0
verify_tmdb show paths, TMDB_API_KEY Completeness check TMDB free quota

Стоимость и лимиты

Во что обходится

Квота API
TMDB: free tier generous for home libraries
Токенов на вызов
Low — skill mostly orchestrates shell
Деньги
Free
Совет
Scan-only first; don't burn tokens on the full analysis until you've committed to cleanup

Безопасность

Права, секреты, радиус поражения

Минимальные скоупы: Filesystem read/write on the library root only
Хранение учётных данных: TMDB key in env
Исходящий трафик: TMDB API for completeness checks (public metadata only)
Никогда не давайте: Run as root on the media disk — use a user with write on just the library

Устранение неполадок

Частые ошибки и исправления

Everything flagged as 'junk'

You pointed it at a non-media folder — confirm root

Проверить: ls /media/downloads
TMDB verify returns 401

TMDB_API_KEY missing or wrong

Проверить: curl https://api.themoviedb.org/3/movie/550?api_key=$TMDB_API_KEY
Jellyfin still doesn't detect after rename

Force library rescan; verify folder matches Jellyfin's expected naming

Альтернативы

media-library-organizer-skill в сравнении

АльтернативаКогда использоватьКомпромисс
FileBotYou want a GUI with prebuilt rulesPaid, no Claude loop
tinyMediaManagerMetadata-focused rather than junk cleanupNo merge / scattered-episode handling

Ещё

Ресурсы

📖 Читать официальный README на GitHub

🐙 Открытые задачи

🔍 Все 400+ MCP-серверов и Skills