codepawl-video-lab
OfficialCodePawl Video Lab
Selbst gehostete, evidenzorientierte YouTube-Analyse für CodePawl. Die Chrome-Erweiterung sammelt nur die aktive YouTube-URL sowie Daten, die der Nutzer bewusst importiert. Ein Cloudflare Worker speichert Dossiers und autorisierte Kanalanalysen in D1. Codex liest und schreibt Analysen über einen zustandslosen Streamable-HTTP-MCP-Server; in der Erweiterung gibt es kein LLM.
YouTube URL → Chrome side panel → Worker + D1 → /mcp → Codex
↑ │
└── reports ──┘Workspace
apps/extension WXT + React MV3 side panel and library
apps/worker Cloudflare Worker, D1, Cron, Google OAuth and remote MCP
packages/contracts shared Zod schemas, parsers and evidence rules
docs architecture, security and approval-gated deployment notesDie Erweiterung hat kein Content-Script. Ihr erstelltes Manifest fordert sidePanel, storage, activeTab und tabs an; sie untersucht das YouTube-DOM nicht, lädt keine Untertitel herunter und greift nicht auf Video- oder Audiobytes zu.
Related MCP server: yt-mcp
Lokale Entwicklung
Anforderungen: Node 22+, npm 12+, Chrome 114+.
git clone git@github.com:codepawl/codepawl-video-lab.git
cd codepawl-video-lab
npm ci
npm run cf:types
npm run db:migrate:local
npm run dev:worker
npm run dev:extensionKopieren Sie apps/worker/.dev.vars.example in das git-ignorierte .dev.vars und füllen Sie nur lokale Zugangsdaten ein. Generieren Sie TOKEN_ENCRYPTION_KEY als 32 zufällige Bytes, codiert mit base64 oder base64url. Die Google-OAuth-Umleitungs-URI für die lokale Entwicklung lautet:
http://127.0.0.1:8787/oauth/youtube/callbackErstellen Sie über die lokale Admin-Route einen zehnminütigen Pairing-Code und geben Sie ihn dann im Seitenpanel ein. Das daraus resultierende Erweiterungs-Token läuft nach 30 Tagen ab und kann mit Ngắt thiết bị widerrufen werden:
curl -X POST http://127.0.0.1:8787/api/v1/admin/pairing-codes \
-H "Authorization: Bearer $LOCAL_ADMIN_TOKEN" \
-H "Content-Type: application/json" \
-d '{"label":"Chrome extension"}'Erstellen Sie die entpackte Erweiterung:
npm run build --workspace @codepawl/video-lab-extensionLaden Sie dann apps/extension/.output/chrome-mv3 bei aktiviertem Entwicklermodus über chrome://extensions. Die Installation in einem persönlichen Chrome-Profil ist bewusst eine manuelle bzw. freigabepflichtige Aktion.
Datenregeln
Referenzvideos: Metadaten und anonymisierter Kommentartext stammen aus der YouTube Data API v3. Kommentare werden kurz zwischengespeichert; die Identität der Verfasser wird nie gespeichert.
Transkripte: nur durch Einfügen durch den Nutzer oder Import von
.srt,.vtt,.txt.CodePawl: nur
youtube.readonlyundyt-analytics.readonly. Es gibt keine Upload-, Metadatenbearbeitungs- oder Veröffentlichungs-Scopes.Stayed to watch: manuelle Studio-Beobachtung mit expliziter Herkunft. Sie wird nicht als Analytics-API-Metrik dargestellt.Referenzkanal-Retention, CTR und
Stayed to watchwerden niemals abgeleitet.Jede Feststellung muss auf einen Beleg mit Quelle, Beobachtungszeitpunkt, Konfidenz und Einschränkung verweisen.
Öffentliche API-Daten laufen nach 30 Tagen ab. Cron versucht zunächst eine neue API-Beobachtung; abgelaufene Referenzdaten werden entfernt, wenn keine Aktualisierung verfügbar ist.
Google-Refresh- und Access-Tokens werden vor der D1-Persistenz mit AES-256-GCM verschlüsselt.
MCP
/mcp ist ein zustandsloser createMcpHandler-Server, der auf D1 basiert. Er stellt Folgendes bereit:
video_inbox_listvideo_dossier_getvideo_dossiers_comparechannel_performance_getretention_curve_getanalysis_report_saveexperiment_createexperiment_update
Ressource: codepawl://rubrics/shorts-v1.
In Produktion schützt Cloudflare Access Managed OAuth /mcp; der Worker verifiziert unabhängig den Aussteller der Access-Assertion, die Audience und die RS256-Signatur. Nach der Bereitstellung und dem Access-Setup:
codex mcp add codepawl-video-lab --url https://video-lab.codepawl.com/mcp
codex mcp login codepawl-video-labFühren Sie diese beiden codex mcp-Befehle auf jedem Rechner aus, der sich mit dem bereitgestellten Server verbinden soll. Die Authentifizierung erfolgt pro Rechner; Anmeldedaten und lokale Codex-Konfiguration werden nicht in diesem Repository gespeichert.
Tracking
Cron läuft alle 15 Minuten und entdeckt Uploads über die Upload-Wiedergabeliste des autorisierten Kanals. Neue Videos erhalten echte zukünftige Zielwerte nach 2 h, 24 h und 72 h sowie tägliche Rollups. Historische Importe erhalten zum Verbindungszeitpunkt eine erste Beobachtung und niemals nachträglich erfundene Zeitstempel für Meilensteine. Leere Analytics-Antworten bleiben pending und werden mit begrenztem Backoff erneut versucht. Eindeutige Job-Schlüssel und Snapshot-Beschränkungen machen wiederholte Läufe idempotent.
Validierung
npm run typecheck
npm test
npm run build
npm run db:migrate:local
npm run worker:dry-runDie visuelle Testvorrichtung ist nur lokal verfügbar:
cd apps/worker
npx wrangler d1 execute video-lab --local --file test/fixtures/visual-qa.sql
cd ../..
npm run visual:dev --workspace @codepawl/video-lab-extensionÖffnen Sie http://127.0.0.1:4173/visual.html?surface=sidepanel oder visual.html für die Bibliothek. Die Testumgebung verwendet Fixture-Daten und ist nicht im MV3-Build enthalten.
Freigabegrenze
Durch dieses Repository-Setup werden keine Cloudflare-Ressourcen, DNS-Einträge, Access-Anwendungen, Google-OAuth-Zugangsdaten oder Produktionsbereitstellungen erstellt. Das genaue Ressourcenpaket, das eine separate Freigabe erfordert, finden Sie in docs/deployment.md.
Lizenz
MIT. Siehe LICENSE.
Primäre Referenzen
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Hosted MCP for YouTube Studio: uploads, metadata, playlists, comments, analytics, captions.
15 YouTube endpoints. Pay per call in USDC via x402.
Manage Wistia videos, channels, folders, captions, customizations, and analytics via MCP.
Multimodal video analysis MCP — transcription, vision, and OCR for any video URL.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceMCP server exposing YouTube Data, Analytics, and Reporting APIs as agent-callable tools with multi-brand-account authentication, quota tracking, and a safety policy that excludes destructive operations like video deletion.MIT
- FlicenseNot gradedqualityCmaintenanceMCP server for managing YouTube channels using Data API v3 and Analytics. Supports video upload, comments, playlists, and analytics via ~30 tools, with stateless OAuth authentication.
- AlicenseNot gradedqualityAmaintenanceProvides read-only MCP tools to search YouTube, retrieve video metadata, transcripts, comments, channel information, and popular videos.3MIT
- AlicenseNot gradedqualityAmaintenanceA local, privacy-first MCP server providing direct access to official YouTube Data, Analytics, Reporting, and Live Streaming APIs for creators, enabling channel analysis, research, and guarded management operations.2MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/codepawl/codepawl-video-lab'
If you have feedback or need assistance with the MCP directory API, please join our Discord server