# Openrouter Multimodal (MCP server)

> Openrouter Multimodal is an MCP server that adds cloud and DevOps tools to AI assistants such as Claude Desktop, Claude Code and Cursor. Chat with 300+ LLMs via OpenRouter. Analyze and generate images, audio, and video from MCP. It has 101 GitHub stars, is released under the Apache-2.0 license and runs locally with npx -y @stabgan/openrouter-mcp-multimodal.

The MCP server for multimodal AI agents. One install · 21 tools · 300+ OpenRouter models · text, vision, audio &amp; video — analysis and generation.

## Key facts

| Fact | Value |
|---|---|
| Repository | https://github.com/stabgan/openrouter-mcp-multimodal |
| GitHub stars | 101 |
| License | Apache-2.0 |
| Language | TypeScript |
| Transport | stdio |
| Packages | npm: @stabgan/openrouter-mcp-multimodal; docker: docker.io/stabgan/openrouter-mcp-multimodal:4.5.1 |
| Remote URL | none |
| Needs API key | yes |
| Official | no |
| Works with | Claude Desktop, Claude Code, Cursor, VS Code |
| Category | Cloud & DevOps |
| Latest release | v5.1.3 (Oct 22, 2026) |
| Last commit | Oct 24, 2026 |
| MCP registry name | io.github.stabgan/openrouter-multimodal |

## Install

### Claude Desktop (claude_desktop_config.json)

```json
{
  "mcpServers": {
    "openrouter-multimodal": {
      "command": "npx",
      "args": [
        "-y",
        "@stabgan/openrouter-mcp-multimodal"
      ],
      "env": {
        "OPENROUTER_API_KEY": "your-value",
        "OPENROUTER_MAX_TOKENS": "your-value"
      }
    }
  }
}
```

Settings > Developer > Edit Config. macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\. Restart Claude Desktop afterwards.

### Claude Code

```sh
claude mcp add --env OPENROUTER_API_KEY=your-value --env OPENROUTER_MAX_TOKENS=your-value --transport stdio openrouter-multimodal -- npx -y @stabgan/openrouter-mcp-multimodal
```

### Cursor (.cursor/mcp.json)

```json
{
  "mcpServers": {
    "openrouter-multimodal": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@stabgan/openrouter-mcp-multimodal"
      ],
      "env": {
        "OPENROUTER_API_KEY": "your-value",
        "OPENROUTER_MAX_TOKENS": "your-value"
      }
    }
  }
}
```

Project file; use ~/.cursor/mcp.json to enable it in every project.

### VS Code (.vscode/mcp.json)

```json
{
  "inputs": [
    {
      "type": "promptString",
      "id": "openrouter_api_key",
      "description": "OPENROUTER_API_KEY",
      "password": true
    },
    {
      "type": "promptString",
      "id": "openrouter_max_tokens",
      "description": "OPENROUTER_MAX_TOKENS",
      "password": true
    }
  ],
  "servers": {
    "openrouter-multimodal": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@stabgan/openrouter-mcp-multimodal"
      ],
      "env": {
        "OPENROUTER_API_KEY": "${input:openrouter_api_key}",
        "OPENROUTER_MAX_TOKENS": "${input:openrouter_max_tokens}"
      }
    }
  }
}
```

Config formats checked against the official docs on 2026-10-07.

## Environment variables

- `OPENROUTER_API_KEY` (secret) (required): OpenRouter API key. Get one free at https://openrouter.ai/keys
- `OPENROUTER_DEFAULT_MODEL`: Default model for chat + analyze tools. Defaults to nvidia/nemotron-nano-12b-v2-vl:free.
- `OPENROUTER_OUTPUT_DIR`: Sandbox root for savepath on generate tools. Defaults to the current working directory.
- `OPENROUTER_MAX_TOKENS` (secret): Default maxtokens for chatcompletion when unset in the request.
- `OPENROUTER_PROVIDER_SORT`: price / throughput / latency
- `OPENROUTER_PROVIDER_IGNORE`: CSV of provider slugs to exclude.
- `OPENROUTER_PROVIDER_ORDER`: JSON array or CSV of preferred provider IDs.
- `OPENROUTER_PROVIDER_QUANTIZATIONS`: CSV of quantization levels (fp16,int8).
- `OPENROUTER_PROVIDER_REQUIRE_PARAMETERS`: true/false. Require providers to support all request params.
- `OPENROUTER_PROVIDER_DATA_COLLECTION`: allow/deny
- `OPENROUTER_PROVIDER_ALLOW_FALLBACKS`: true/false
- `OPENROUTER_CACHE_RESPONSES`: Enable response caching server-wide. Sends X-OpenRouter-Cache: true on every chat/analyze call unless overridden per-request. Zero tokens billed on cache hits.
- `OPENROUTER_INCLUDE_REASONING`: Enable reasoning tokens passthrough server-wide. Adds meta.reasoning to chatcompletion responses for DeepSeek R1 / Gemini Thinking / Opus 4.7.

## Tools

- `chat_completion`: Text chat, web search, provider routing, caching, reasoning, structured output
- `start_chat_completion`: Async background job for long-running reasoning models
- `get_chat_completion_status`: Poll / retrieve async completion results
- `analyze_image`: Vision — local path, URL, or data URL + question
- `analyze_audio`: Transcribe / analyze audio files
- `analyze_video`: Describe / Q&A over video files
- `generate_image`: Text-to-image via chat completions with reference images
- `generate_image_dedicated`: Text-to-image via dedicated /api/v1/images (resolution, quality, format)
- `generate_audio`: Text-to-speech / music via chat completions
- `text_to_speech`: Dedicated TTS (/api/v1/audio/speech) — Deepgram, ElevenLabs, OpenAI; voices, speed, mp3/pcm
- `speech_to_text`: Dedicated STT (/api/v1/audio/transcriptions) — Whisper, GPT-4o Transcribe, Voxtral, ElevenLabs Scribe
- `generate_video`: Text-to-video (async, resumable)
- `generate_video_from_image`: Image-to-video (narrower schema)
- `get_video_status`: Poll / resume video jobs
- `search_models`: Paginated model catalog search
- `get_model_info`: Pricing, context, modalities
- `validate_model`: Cheap model ID existence check
- `rerank_documents`: Relevance ranking for RAG
- `embed_text`: Vector embeddings (37+ models: text-embedding-3-small/large, Nomic, etc.)
- `decide`: Structured decisions with calibrated probabilities (System One models)
- `health_check`: API key + reachability probe
- `save_path`: Tool result

## Similar MCP servers

- [pracht dev-mcp](https://appsgit.com/mcp-servers/pracht-dev-mcp): Inspect, verify, diff, and scaffold a pracht app's routes, API, and capabilities from its app graph. (105 stars, MIT)
- [Fly Io](https://appsgit.com/mcp-servers/fly-io): MCP server for managing Fly.io machines, apps, logs, and Docker images. (81 stars, MIT, official, needs API key)
- [MCP Victorialogs](https://appsgit.com/mcp-servers/mcp-victorialogs): MCP Server for VictoriaLogs. Provides integration with VictoriaLogs API and documentation. (105 stars, Apache-2.0, official, needs API key)
- [Synap Memory](https://appsgit.com/mcp-servers/synap-memory): Persistent memory for AI agents — log and recall conversation context over MCP. (77 stars, Apache-2.0, official, needs API key)
- [agentburn](https://appsgit.com/mcp-servers/agentburn): Local profiler: which usage window took you out, and where your agent's money goes. (113 stars, MIT)
- [emem, the verifiable memory protocol for the physical world](https://appsgit.com/mcp-servers/emem-the-verifiable-memory-protocol-for-the-physical-world): Shared, verifiable memory for machines and AI. (75 stars, Apache-2.0, official)

---

Canonical page: https://appsgit.com/mcp-servers/openrouter-multimodal
Source: appsgit (https://appsgit.com), the app store for github. Data from the GitHub API, refreshed daily.
Machine access: JSON API https://appsgit.com/api/v1/apps (OpenAPI: https://appsgit.com/openapi.json), MCP server https://mcp.appsgit.com/mcp, full index https://appsgit.com/llms-full.txt.
