Skip to main content
Glama
sdvsdrv8990

Video Pipeline MCP Server

by sdvsdrv8990

Video Pipeline MCP Server

MCP-Server zur Verwaltung der Video-Pipeline. Arbeitet mit Claude AI Web über einen cloudflared-Tunnel.

Status (2026-07): Die Datenschicht (Dateien, Tabellen/Excel, Kanalstruktur, Suche) + Firewall + Transport sind implementiert. Die produktive Video-Pipeline (Sprachausgabe/Transkription/Bilder/Schnitt) befindet sich in Entwicklung. Plan zur Erreichung des Unternehmensniveaus: docs/roadmap/. Legende unten: ✅ implementiert · 🟠 Platzhalter/teilweise · 🔲 geplant.

Projektstruktur (aktuell)

video_pipeline_mcp/
├── server.py              ✅ точка входа: MCP-эндпоинт + туннель; регистрация инструментов
├── pyproject.toml         ✅ сборка/зависимости (PEP 621) · requirements.lock — точные пины
├── install.sh · run.sh    ✅ установка (.venv + cloudflared) · запуск (--tunnel)
│
├── config/                ✅ декларации (поведение, НЕ код)
│   │                          (конфиг канала с S22 — не файл, а 7 листов channel_data.xlsx:
│   │                           RESOURCE_LIMITS, WORKFLOW_SEQUENCES, PUBLISHING_SCHEDULE,
│   │                           METADATA_DEFAULTS, AUTOMATION_RULES, SCENE_PROFILE, RENDER_CONFIG)
│   ├── server_reactions.yaml  ✅ реестр реакций (коды → класс + recovery)
│   ├── firewall.yaml          ✅ правила файрвола
│   ├── tunnel.yaml            ✅ конфиг туннеля (gitignored — секрет)
│   └── templates/
│       ├── workspace/         ✅ 6 шаблонов: niche/network/channel/video/competitor_channel/competitor_video
│       └── tables/            🔲 схемы книг (*.schema.yaml) — воркстрим A1′
│
├── core/                  — ядро (бизнес-логика)
│   ├── contracts/         ✅ Pydantic: ToolResult, ErrorDetail, Fact, TaskStatus
│   ├── engine/            ✅ generic-движок + template_engine
│   ├── firewall/          ✅ файрвол + rules/ (rate_limit, injection, ip_blocklist, anomaly)
│   ├── state/             ✅ read.json / write.json / session log
│   ├── reactions/         ✅ читалка server_reactions
│   ├── ids/               ✅ генерация ID + link_registry
│   ├── tables/ · excel/   ✅ слой таблиц и Excel-книг
│   ├── search/            ✅ поиск по ФС/таблицам (FsSearcher + QueryPlanner)
│   ├── transport/         ✅ туннель к Claude (transport + tunnel)
│   ├── runner/            ✅ инференс в отдельном процессе: сервис на петле + супервизор
│   ├── paths.py           ✅ containment путей в workspace/
│   └── providers/         🟠 адаптеры провайдеров (заглушки — в разработке)
│       ├── stt/ (stable-ts) · tts/ (LiteLLM) · img/ (LiteLLM) · ffmpeg/ (внешний MCP)
│
├── tools/                 🔲 тонкие обёртки Bounded Context (план: вынос из server.py, A2)
├── pipeline/              🔲 оркестрация процессов (entry_points + steps) — план
├── scripts/               🔲 утилиты (план: introspect_tables.py — A1′)
├── docker/                ✅ образ раннера (среда инференса заперта в контейнере)
├── tests/                 ✅ quick/ (unit) + симуляции (virus/bot_army/cache_*/…)
└── docs/
    ├── dev/               — история файлов, спеки (gitignored)
    └── roadmap/           ✅ план развития до корпоративного уровня + канон спек (spec/)

Aktuelle Werkzeuge (52 in tools/list): ✅ fs_* (Dateien), table_*/json_* (Tabellen), excel_* (Arbeitsmappen), structure_* (Erstellung von Kanälen/Videos nach Vorlagen), search_* (Suche); 🟠 tts_*/stt_*/img_*/video (Media – Platzhalter).

Related MCP server: Video MCP

Installation

./install.sh            # .venv + БАЗОВЫЕ зависимости + cloudflared
./install.sh --media    # + облачные/HTTP-провайдеры и ONNX (bg_removal/upscale)
./install.sh --local    # + локальный ML-инференс (torch/stable-ts/piper/diffusers)
./install.sh --gpu-amd  # + локальный инференс на карте AMD (rocm-сборка torch)

Einsparung: Die Basis wird ohne schwere Bibliotheken installiert (torch ~3 GB, stable-ts, litellm, onnxruntime) – diese werden lazy importiert und in optionale Gruppen ausgelagert. Der Server funktioniert auf reiner Basis, Media-Werkzeuge antworten ehrlich mit PROVIDER_NOT_CONFIGURED / LOCAL_INFERENCE_FAILED.

Start

./run.sh              # сервер + туннель (--no-tunnel — только локально)

Abhängigkeiten

Wahrheitsquelle ist pyproject.toml (pip install -e .); exakte Pins der Basis – requirements.lock; Dev-Werkzeuge – pip install -e ".[dev]"; Media – pip install -e ".[media]"; lokale ML-Inferenz – pip install -e ".[local]" (und pip install -e ".[gpu-amd]" für AMD-Karten).

Basis (obligatorisch, ~50 MB)

Paket

Zweck

pydantic

Verträge (ToolResult, ErrorDetail)

openpyxl

Arbeit mit Excel

pyyaml · jsonschema

Lesen von Konfigurationen · Validierung von Parametern nach Schema

aiohttp

HTTP-Transport des Servers hinter dem Tunnel

cryptography

Signierung von Artefakten (S9), Instanzschlüssel

Media (auf Anfrage, .[media])

Paket

Zweck

httpx

HTTP-Client zu Cloud-Gateways der Anbieter

litellm

einheitlicher Zugriff auf Online-Modelle (STT/TTS/IMG)

onnxruntime · pillow

Hintergrundentfernung, Upscaling (ONNX-Graph)

ffmpeg-python

Video-Operationen

Local (auf Anfrage, .[local] – Gigabyte an Laufzeit)

Paket

Zweck

torch · torchaudio

Laufzeit der lokalen Inferenz

stable-ts

lokale Transkription (whisper)

piper-tts · diffusers · transformers

Sprachausgabe, Bildgenerierung

cloudflared – Binärdatei (nicht pip), wird mit install.sh installiert.

Entwicklung

Entwicklungsplan, Erkenntnisse und Kanon der Spezifikationen: docs/roadmap/. Vorschläge zur Funktionsverbesserung: docs/roadmap/spec/IMPROVEMENTS.md.

Related MCP Connectors

Related MCP Servers