Analysis and generation for images, audio and video sit next to ordinary chat, so a single conversation can transcribe a recording, describe a clip and then produce one. The catalogue tools are worth using before the expensive ones: validating a model id and reading its pricing and context length costs nothing, and it is the difference between a routed call and a failed one.
An OpenRouter client exposed as tools: chat completions with provider routing, analysis of images, audio and video, generation of images, audio and video, plus catalogue lookup and reranking.
- Chat against any OpenRouter model, with routing suffixes that pick for speed, price or free tiers
- Image analysis from a sandboxed local path, an https URL or a base64 data URL
- Audio transcription and analysis across WAV, MP3, FLAC and OGG, and video description for mp4, mpeg, mov and webm
- Image generation from a prompt, optionally conditioned on input images for style or identity
- Speech and music generation with the output format detected and the file extension corrected on save
- Video generation from a prompt or from a first or last frame, submitted as an async job you poll until it completes, plus a narrower image-to-video call for higher tool-call accuracy
- Document reranking against a query, for putting the right context in front of a model
- Catalogue tools that keep model choice honest: search by name, provider or capability, read one model's pricing, context length and modality, or just check that an id exists before you call it
- A health check covering the API key, OpenRouter reachability, the cached model count and the server version
An OpenRouter API key in OPENROUTER_API_KEY, free to obtain, and Node.js 20+. Runs from npm as @stabgan/openrouter-mcp-multimodal over stdio, with a PyPI launcher and a Docker image published too. Free models cover chat and vision without credits; video and audio generation generally need them. OPENROUTER_DEFAULT_MODEL sets the model for chat and analysis, OPENROUTER_OUTPUT_DIR is the sandbox root that generated files can be saved into, and the provider variables control routing by price, throughput or latency.
One command plus a key — npx -y @stabgan/openrouter-mcp-multimodal, then supply credentials
