Track MCP LogoTrack MCP
Track MCP LogoTrack MCP

The world's largest repository of Model Context Protocol servers. Discover, explore, and submit MCP tools.

Product

  • Categories
  • Top MCP
  • New & Updated
  • Submit MCP

Company

  • About

Legal

  • Privacy Policy
  • Terms of Service
  • Cookie Policy

© 2026 TrackMCP. All rights reserved.

Built with ❤️ by Krishna Goyal

    Openrouter Mcp Multimodal

    MCP server for OpenRouter providing text chat and image analysis tools

    13 stars
    TypeScript
    Updated Oct 27, 2025

    Table of Contents

    • Why This One?
    • Tools
    • Quick Start
    • Prerequisites
    • Option 1: npx (no install)
    • Option 2: Docker
    • Option 3: Global install
    • Option 4: Smithery
    • Configuration
    • Usage Examples
    • Chat
    • Analyze an Image
    • Find Vision Models
    • Generate an Image
    • Architecture
    • Development
    • Run Tests
    • Docker Build
    • Compatibility
    • License
    • Contributing

    Table of Contents

    • Why This One?
    • Tools
    • Quick Start
    • Prerequisites
    • Option 1: npx (no install)
    • Option 2: Docker
    • Option 3: Global install
    • Option 4: Smithery
    • Configuration
    • Usage Examples
    • Chat
    • Analyze an Image
    • Find Vision Models
    • Generate an Image
    • Architecture
    • Development
    • Run Tests
    • Docker Build
    • Compatibility
    • License
    • Contributing

    Documentation

    MseeP.ai Security Assessment Badge

    OpenRouter MCP Multimodal Server

    npm version

    Docker Pulls

    Build Status

    License: MIT

    The only OpenRouter MCP server with native vision, image generation, and smart image optimization — all in one package.

    Access 300+ LLMs through OpenRouter via the Model Context Protocol, with first-class support for multimodal workflows: analyze images, generate images, and chat — using free or paid models.

    Why This One?

    FeatureThis ServerOther OpenRouter MCP Servers
    Text chat with 300+ models✅✅
    Image analysis (vision)✅ Native with sharp optimization❌
    Image generation✅❌
    Auto image resize & compress✅ (800px max, JPEG 80%)❌
    Model search & validation✅Partial
    Free model support✅ (default: free Nemotron VL)Varies
    Docker support✅ (345MB Alpine image)❌
    Zero external HTTP deps✅ (native fetch only)❌ (axios, node-fetch)

    Tools

    ToolDescription
    chat_completionSend messages to any OpenRouter model. Supports text and multimodal content.
    analyze_imageAnalyze images from local files, URLs, or data URIs. Auto-optimized with sharp.
    generate_imageGenerate images from text prompts. Optionally save to disk.
    search_modelsSearch/filter models by name, provider, or capabilities (e.g. vision-only).
    get_model_infoGet pricing, context length, and capabilities for any model.
    validate_modelCheck if a model ID exists on OpenRouter.

    Quick Start

    Prerequisites

    Get a free API key from openrouter.ai/keys.

    Option 1: npx (no install)

    json
    {
      "mcpServers": {
        "openrouter": {
          "command": "npx",
          "args": ["-y", "@stabgan/openrouter-mcp-multimodal"],
          "env": {
            "OPENROUTER_API_KEY": "sk-or-v1-..."
          }
        }
      }
    }

    Option 2: Docker

    json
    {
      "mcpServers": {
        "openrouter": {
          "command": "docker",
          "args": [
            "run", "--rm", "-i",
            "-e", "OPENROUTER_API_KEY=sk-or-v1-...",
            "stabgandocker/openrouter-mcp-multimodal:latest"
          ]
        }
      }
    }

    Option 3: Global install

    bash
    npm install -g @stabgan/openrouter-mcp-multimodal

    Then add to your MCP config:

    json
    {
      "mcpServers": {
        "openrouter": {
          "command": "openrouter-multimodal",
          "env": {
            "OPENROUTER_API_KEY": "sk-or-v1-..."
          }
        }
      }
    }

    Option 4: Smithery

    bash
    npx -y @smithery/cli install @stabgan/openrouter-mcp-multimodal --client claude

    Configuration

    Environment VariableRequiredDefaultDescription
    OPENROUTER_API_KEYYes—Your OpenRouter API key
    OPENROUTER_DEFAULT_MODELNonvidia/nemotron-nano-12b-v2-vl:freeDefault model for all tools

    Usage Examples

    Chat

    code
    Use chat_completion to explain quantum computing in simple terms.

    Analyze an Image

    code
    Use analyze_image on /path/to/photo.jpg and tell me what you see.

    Find Vision Models

    code
    Use search_models with capabilities.vision = true to find models that can see images.

    Generate an Image

    code
    Use generate_image with prompt "a cat astronaut on mars, digital art" and save to ./cat.png

    Architecture

    code
    src/
    ├── index.ts              # Server entry point, env validation, graceful shutdown
    ├── tool-handlers.ts      # Tool registration and routing
    ├── model-cache.ts        # In-memory model cache (1hr TTL)
    ├── openrouter-api.ts     # OpenRouter REST client (native fetch)
    └── tool-handlers/
        ├── chat-completion.ts   # Text & multimodal chat
        ├── analyze-image.ts     # Vision analysis pipeline
        ├── generate-image.ts    # Image generation
        ├── image-utils.ts       # Sharp optimization, format detection, fetch
        ├── search-models.ts     # Model search with filtering
        ├── get-model-info.ts    # Model detail lookup
        └── validate-model.ts    # Model existence check

    Key design decisions:

    • Zero HTTP dependencies — uses Node.js native fetch (no axios, no node-fetch)
    • Lazy sharp loading — sharp is loaded on first image operation, not at startup
    • Singleton model cache — fetched once, shared across all tool handlers, 1-hour TTL
    • Graceful error handling — every tool returns structured errors, never crashes the server
    • Process safety — uncaught exceptions and unhandled rejections trigger clean exit (no zombie processes)

    Development

    bash
    git clone https://github.com/stabgan/openrouter-mcp-multimodal.git
    cd openrouter-mcp-multimodal
    npm install
    cp .env.example .env  # Add your API key
    npm run build
    npm start

    Run Tests

    bash
    npm test

    29 unit tests covering model cache, image utilities, and tool handlers.

    Docker Build

    bash
    docker build -t openrouter-mcp .
    docker run -i -e OPENROUTER_API_KEY=sk-or-v1-... openrouter-mcp

    Multi-stage build: 345MB final image (Alpine + vips runtime only).

    Compatibility

    Works with any MCP client:

    • Claude Desktop
    • Cursor
    • Kiro
    • Windsurf
    • Cline
    • Any MCP-compatible client

    License

    MIT

    Contributing

    Issues and PRs welcome. Please open an issue first for major changes.

    Similar MCP

    Based on tags & features

    • ME

      Metmuseum Mcp

      TypeScript·
      14
    • MC

      Mcp Ipfs

      TypeScript·
      11
    • LI

      Liveblocks Mcp Server

      TypeScript·
      11
    • MC

      Mcp Wave

      TypeScript00

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k
    View All MCP Servers

    Similar MCP

    Based on tags & features

    • ME

      Metmuseum Mcp

      TypeScript·
      14
    • MC

      Mcp Ipfs

      TypeScript·
      11
    • LI

      Liveblocks Mcp Server

      TypeScript·
      11
    • MC

      Mcp Wave

      TypeScript00

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k