Skip to main content
Glama

AI-MediaLens – Medienanalyse für KI-Agenten über OpenRouter

Füllt die Lücke dessen, was Cline nicht lesen kann: Video-, Audio- und PDF-Dateien. Sendet Dateien direkt an die OpenRouter-API, die sie an multimodale Modelle weiterleitet (und PDFs für jedes Modell parst).

Funktioniert als MCP-Server für Cline, als eigenständige CLI und als importierbares Python-Modul – alles aus einer Datei.

Quick start

git clone https://github.com/Alihkhawaher/ai-medialens.git
cd ai-medialens
pip install mcp          # only needed for MCP mode
python openrouter_media.py setup    # configure API key + register in Cline

setup interaktiv:

  1. Speichert deinen OpenRouter-Schlüssel in .env

  2. Registriert den ai-medialens-MCP-Server in der globalen Konfiguration von Cline

Related MCP server: mcp-multivision-server

Unterstützte Eingaben (automatisch anhand der Erweiterung erkannt)

Typ

Erweiterungen

OpenRouter-Inhaltsteil

Video

.mp4 .mpeg .mov .webm

video_url (base64)

Audio

.wav .mp3 .aiff .aac .ogg .flac .m4a

input_audio

PDF

.pdf

file (base64)

Bild

.jpg .jpeg .png .gif .webp

image_url (base64)

Verwendung

CLI

# Full file
python openrouter_media.py video.mp4 -p "Transcribe all spoken Arabic word-for-word"

# Only seconds 5-20 (trimmed locally; ffmpeg auto-downloaded on first use)
python openrouter_media.py video.mp4 -p "What happens here?" --start 5 --end 20

# Different model / explicit key
python openrouter_media.py doc.pdf -p "Summarize" -m z-ai/glm-5.3-flash -k sk-or-v1-...

# Scanned PDF -> real OCR (billed per page by OpenRouter)
python openrouter_media.py scan.pdf -p "Extract all text" --pdf-engine mistral-ocr

# Speech-to-text (works on video files too - audio track extracted locally)
python openrouter_media.py lecture.mp4 --stt --language ar

# SRT subtitles with timestamps
python openrouter_media.py lecture.mp4 --stt --srt > lecture.srt

# Find models that accept video input, with prices
python openrouter_media.py --list-models video

# Preview request shape without sending (no API cost)
python openrouter_media.py video.mp4 -p "test" --dry-run

MCP (von Cline aus)

Cline ruft die Tools nativ auf:

use_mcp_tool: server=ai-medialens, tool=analyze_media
arguments: { "path": "...", "prompt": "...", "start": "5", "end": "20" }

use_mcp_tool: server=ai-medialens, tool=transcribe_audio
arguments: { "path": "...", "language": "ar", "srt": false }

Als Python-Modul

from openrouter_media import analyze
text = analyze("video.mp4", "Transcribe all speech.")
resp = analyze("doc.pdf", "Summarize.", raw=True)

Reihenfolge der API-Schlüsselauflösung

  1. -k/--key-Flag

  2. Umgebungsvariable OR_KEY

  3. Umgebungsvariable OPENROUTER_API_KEY

  4. .env-Datei neben dem Skript (siehe .env.example)

ffmpeg & Zeitbereichs-Trimmung

--start/--end trimmen die Medien lokal vor dem Hochladen (OpenRouter hat keinen nativen Bereichsparameter). ffmpeg wird in dieser Reihenfolge aufgelöst:

  1. Gebündeltes bin\ffmpeg.exe (wenn du eines dort platziert hast)

  2. Zwischengespeicherte Kopie unter %LOCALAPPDATA%\ai-medialens\bin\ffmpeg.exe

  3. ffmpeg im PATH

  4. Automatischer Download (~80 MB statischer Build, einmalig, Windows)

Hinweis: Die Trimmung verwendet -c copy (schnell, schneidet aber an Keyframes; exakte Schnitte erfordern eine Neucodierung).

Modelle

Standard: qwen/qwen3.7-flash ($0.03/M Eingabe, $0.13/M Ausgabe) – derzeit das günstigste OpenRouter-Modell mit vollständiger Videoeingabeunterstützung.

Andere gute video-fähige Optionen (aktuelle Preise über --list-models video prüfen):

Modell

Eingabe /M

Ausgabe /M

qwen/qwen3.7-flash (Standard)

$0.03

$0.13

z-ai/glm-5.3-flash

$0.075

$0.25

qwen/qwen3.8-27b

$0.425

$2.55

Jeder OpenRouter-Modell-Slug funktioniert über -m / model= – einschließlich neuerer Veröffentlichungen, sobald sie erscheinen.

PDF-Parsing-Engines

PDFs werden entweder lokal oder serverseitig von OpenRouter geparst:

Engine

Verhalten

Kosten

(Standard)

Serverseitige Textextraktion aus eingebetteter Textebene

Kostenlos

--pdf-engine local

Lokales Parsen über PyMuPDF (pip install pymupdf) – keine Ratenbegrenzungen. Digitale PDFs: Text wird lokal extrahiert. Gescannte PDFs: Seiten werden als Bilder gerendert und das Vision-Modell führt die OCR selbst durch

Kostenlos

--pdf-engine mistral-ocr

Serverseitige echte OCR über Seitenbilder – liest gescannte/nur-Bild-PDFs

Pro Seite abgerechnet

--pdf-engine native

Leitet rohe PDFs an Modelle mit nativem Dateieingang weiter

Kostenlos

local wird empfohlen: Es stößt nie an die Parser-Ratenbegrenzungen von OpenRouter und verarbeitet sowohl digitale als auch gescannte PDFs ohne zusätzliche Kosten.

Sprach-zu-Text (STT)

Verwendet den dedizierten /audio/transcriptions-Endpunkt von OpenRouter (Whisper-Klasse-Modelle). Standardmodell: openai/whisper-large-v3-turbo. Andere Optionen: openai/gpt-4o-transcribe, openai/gpt-4o-mini-transcribe, microsoft/mai-transcribe-1.5, openai/whisper-large-v3.

Pipeline-Härtung (Lehren aus einem Produktions-YouTube→Untertitel-System):

  • Jede Audio-/Videoeingabe → ffmpeg konvertiert in Opus 32kbps/16kHz/mono (8× kleiner als WAV, von allen Anbietern akzeptiert); Videospuren werden entfernt

  • Lange Medien werden automatisch in 6-Minuten-Chunks aufgeteilt (OpenRouter hat ein ~60s Upstream-Timeout pro Anfrage)

  • Jeder Chunk wird neu gemuxt, um die fehlende Ogg-EOS-Seite hinzuzufügen (ffmpegs Segment-Muxer lässt sie aus; OpenRouters Parser lehnt Streams ohne sie ab)

  • --srt gibt zeitgestempelte SRT-Untertitel über verbose_json-Segmente zurück, korrekt über Chunks hinweg versetzt

  • Hinweis: whisper-large-v3 erzeugt bei beschleunigtem Audio verstümmelte Ausgabe; mai-transcribe-1.5 toleriert das

Anmerkungen

  • Große Dateien werden im Speicher base64-codiert – sehr große Videos können die Upload-Limits des Anbieters erreichen.

  • Geheimnisse sind sicher: .env ist gitignored und wird nie committet.

F
license - not found
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Multimodal video analysis MCP — transcription, vision, and OCR for any video URL.

  • OCR, transcription, file extraction, and image generation for AI agents via MCP.

  • Transform video, audio and images, and generate media from prompts. FFmpeg, captions, models.

View all MCP Connectors

Latest Blog Posts

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/Alihkhawaher/ai-medialens'

If you have feedback or need assistance with the MCP directory API, please join our Discord server