{
  "version": "2",
  "generatedAt": "2026-11-03T22:49:39.280Z",
  "listing": {
    "slug": "nmbrthirteen--podcli",
    "name": "podcli",
    "tagline": "Local podcast clipper with face tracking and burned captions, driven from a CLI, a web studio, or 26 MCP tools.",
    "shortTagline": "Local podcast clipper",
    "description": "One command transcribes an episode with whisper.cpp, scores moments, crops to the speaker, and renders captioned vertical clips on your machine. The same engine is exposed as a stdio MCP server so Claude Code or Codex can run the whole flow through to YouTube publishing.",
    "capabilities": [
      "adaptable",
      "operable"
    ],
    "vertical": "video-streaming",
    "alternativeTo": [
      "Opus Clip",
      "Descript"
    ],
    "shape": "product",
    "formFactor": "cli",
    "executionModel": "hybrid",
    "provenance": "unknown",
    "codeStack": {
      "languages": [
        "Python",
        "TypeScript"
      ],
      "frameworks": [
        "whisper.cpp",
        "ffmpeg",
        "Remotion",
        "pyannote"
      ],
      "packageManager": "npm",
      "database": [],
      "hostingTarget": [
        "macOS (Apple Silicon)",
        "Linux",
        "Windows"
      ]
    },
    "modelStack": {
      "providers": [
        "local whisper.cpp",
        "AssemblyAI (optional)",
        "Claude or Codex CLI (optional scoring)",
        "HuggingFace pyannote (diarization)"
      ],
      "models": [
        "Whisper"
      ],
      "requiredKeys": [
        "HF_TOKEN"
      ],
      "promptLocations": [
        ".claude/commands/",
        "CLAUDE.md"
      ],
      "tools": [
        "transcribe_podcast",
        "suggest_clips",
        "create_clip",
        "batch_create_clips",
        "manage_reel",
        "manage_presets",
        "manage_thumbnail_config",
        "manage_integrations",
        "export_to_davinci_resolve",
        "knowledge_base"
      ]
    },
    "repos": [
      {
        "url": "https://github.com/nmbrthirteen/podcli",
        "owner": "nmbrthirteen",
        "name": "podcli",
        "license": "AGPL-3.0",
        "stars": 58,
        "lastCommit": "2026-09-02"
      }
    ],
    "interface": {
      "kind": "mcp",
      "url": "https://podcli.com/docs/mcp-server",
      "official": true,
      "hosted": "local"
    },
    "operability": "native",
    "recommendedWrapper": null,
    "reach": [
      {
        "job": "Transcribe an episode with diarization",
        "reachable": true,
        "evidence": "MCP tools transcribe_podcast, transcribe_start, import_transcript"
      },
      {
        "job": "Pick the moments worth clipping",
        "reachable": true,
        "evidence": "MCP tools suggest_clips, analyze_energy; AI scoring against the knowledge base"
      },
      {
        "job": "Render clips with face tracking and captions",
        "reachable": true,
        "evidence": "MCP tools create_clip, batch_create_clips, modify_clip"
      },
      {
        "job": "Choose caption style and aspect ratio",
        "reachable": true,
        "evidence": "MCP tools manage_presets, update_settings; four caption styles"
      },
      {
        "job": "Build highlight reels",
        "reachable": true,
        "evidence": "MCP tool manage_reel"
      },
      {
        "job": "Generate thumbnails",
        "reachable": true,
        "evidence": "MCP tool manage_thumbnail_config"
      },
      {
        "job": "Publish to YouTube",
        "reachable": true,
        "evidence": "README: 26 MCP tools let an agent transcribe, score, render, and publish; manage_integrations"
      },
      {
        "job": "Read performance analytics",
        "reachable": null,
        "evidence": "README lists analytics in the studio; no MCP tool named for it in the docs list"
      },
      {
        "job": "Export to DaVinci Resolve",
        "reachable": true,
        "evidence": "MCP tool export_to_davinci_resolve (FCPXML)"
      },
      {
        "job": "Keep titles and captions in the show's voice",
        "reachable": true,
        "evidence": "MCP tool knowledge_base; clip_history stops resuggesting published moments"
      }
    ],
    "editions": [
      {
        "name": "Free",
        "price": null,
        "open": true,
        "distributions": [
          {
            "kind": "installable",
            "url": "https://podcli.com",
            "command": "curl -fsSL https://podcli.com/install.sh | sh"
          },
          {
            "kind": "source",
            "url": "https://github.com/nmbrthirteen/podcli"
          }
        ]
      },
      {
        "name": "Commercial license",
        "price": null,
        "open": false,
        "distributions": []
      }
    ],
    "skills": {
      "kind": "none",
      "paths": [],
      "install": null,
      "note": "No SKILL.md, Claude Code plugin, or published skill found in the repo."
    },
    "customization": {
      "summary": "Copy .env.example to .env: PODCLI_HOME for knowledge, presets, and assets; PODCLI_OUTPUT for renders; PODCLI_QUALITY; HF_TOKEN for diarization; FFMPEG_PATH overrides. Presets and config profiles are documented in docs/configuration.md. The PodStack slash commands in .claude/commands/ are editable prompts for the content workflow.",
      "envVars": [
        "PODCLI_HOME",
        "PODCLI_OUTPUT",
        "PODCLI_QUALITY",
        "PODCLI_PORT",
        "PODCLI_LOG_LEVEL",
        "PODCLI_PYTHON",
        "PODCLI_TRANSITION_AUTOFIX_PASSES",
        "HF_TOKEN",
        "FFMPEG_PATH",
        "FFPROBE_PATH"
      ],
      "configFiles": [
        ".env",
        "docs/configuration.md (config profiles)",
        "presets"
      ],
      "promptFiles": [
        ".claude/commands/",
        "CLAUDE.md"
      ],
      "effort": "config-only",
      "editCount": 15
    },
    "useWhen": [
      "I host a weekly podcast and want captioned vertical clips without uploading episodes to a cloud clipper",
      "I want Claude Code to clip, title, and publish shorts from a transcript as one conversation"
    ],
    "accounts": [
      "HuggingFace (diarization token)",
      "YouTube (publishing)",
      "AssemblyAI (optional)"
    ],
    "active": true,
    "lastActivity": "2026-09-02",
    "gotchas": [
      "AGPL-3.0; a commercial license is offered by email",
      "58 stars and a young repo: thin evidence of users beyond the Builder",
      "First run downloads Python, Node, ffmpeg, whisper.cpp, and models into a managed folder",
      "Intel Mac support is in progress"
    ],
    "fit": {
      "adaptable": 2,
      "operable": 3
    },
    "evidence": {
      "formFactor": "README: podcli process episode.mp4; installer fetches a self-contained binary",
      "executionModel": "README: transcription and rendering local; optional Claude or Codex calls for AI clip scoring",
      "operability": "README: 'Agent-native. 26 MCP tools'; podcli mcp install; tool list from podcli.com/llms.txt",
      "effort": ".env.example with named PODCLI_* variables; docs/configuration.md referenced",
      "editions": "README: free and open source under AGPL-3.0; commercial license by email",
      "active": "GitHub pushedAt 2026-09-02"
    },
    "confidence": {
      "formFactor": 0.95,
      "executionModel": 0.85,
      "operability": 0.9,
      "effort": 0.85,
      "reach": 0.8,
      "editions": 0.9
    },
    "openQuestions": [
      "Real-software gate is met on stars alone (58); look for issues, forum threads, or the X demo's reach before verifying",
      "Whether analytics is reachable through manage_integrations"
    ],
    "sources": [
      {
        "url": "https://podcli.com",
        "foundBy": "sourcing:video-streaming:github"
      },
      {
        "url": "https://github.com/nmbrthirteen/podcli",
        "foundBy": "sourcing:video-streaming:github"
      },
      {
        "url": "https://podcli.com/llms.txt",
        "foundBy": "analysis"
      }
    ],
    "research": {
      "stage": "verified",
      "verdict": "unverified",
      "reason": "Native MCP with near-complete Reach and a documented .env surface; AGPL and thin user evidence are the caveats.",
      "disputed": []
    },
    "url": "apps/nmbrthirteen--podcli.html",
    "coverage": "partial",
    "paid": false,
    "source": "research/verified/nmbrthirteen--podcli.json"
  }
}
