OpenRouter

OpenRouter

stabgan

Connects to OpenRouter.ai's AI model ecosystem for text chat and image analysis capabilities. Supports multiple models with automatic optimization and caching.

Provides seamless access to OpenRouter's diverse AI models, enabling multimodal interactions across vision and language models with intelligent model selection, caching, and robust error handling.

161,073 views9Local (stdio)

What it does

  • Chat with various OpenRouter AI models
  • Analyze single or multiple images with custom questions
  • Search and filter available AI models
  • Process images from local files, URLs, or data URLs
  • Configure model parameters like temperature
  • Handle automatic image resizing and optimization

Best for

Developers building multimodal AI applicationsTeams needing access to diverse AI modelsImage analysis and visual content processingCross-platform AI integration projects
Access to OpenRouter's full model ecosystemBuilt-in caching and rate limitingCross-platform compatibility

About OpenRouter

OpenRouter is a community-built MCP server published by stabgan that provides AI assistants with tools and capabilities via the Model Context Protocol. OpenRouter offers seamless access to diverse AI models for multimodal vision and language, with smart model selection an It is categorized under ai ml.

How to install

You can install OpenRouter in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

License

OpenRouter is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

OpenRouter MCP Multimodal Server

Build Status npm version Docker Pulls

An MCP (Model Context Protocol) server that provides chat and image analysis capabilities through OpenRouter.ai's diverse model ecosystem. This server combines text chat functionality with powerful image analysis capabilities.

Features

  • Text Chat:

    • Direct access to all OpenRouter.ai chat models
    • Support for simple text and multimodal conversations
    • Configurable temperature and other parameters
  • Image Analysis:

    • Analyze single images with custom questions
    • Process multiple images simultaneously
    • Automatic image resizing and optimization
    • Support for various image sources (local files, URLs, data URLs)
  • Model Selection:

    • Search and filter available models
    • Validate model IDs
    • Get detailed model information
    • Support for default model configuration
  • Performance Optimization:

    • Smart model information caching
    • Exponential backoff for retries
    • Automatic rate limit handling

What's New in 1.5.0

  • Improved OS Compatibility:

    • Enhanced path handling for Windows, macOS, and Linux
    • Better support for Windows-style paths with drive letters
    • Normalized path processing for consistent behavior across platforms
  • MCP Configuration Support:

    • Cursor MCP integration without requiring environment variables
    • Direct configuration via MCP parameters
    • Flexible API key and model specification options
  • Robust Error Handling:

    • Improved fallback mechanisms for image processing
    • Better error reporting with specific diagnostics
    • Multiple backup strategies for file reading
  • Image Processing Enhancements:

    • More reliable base64 encoding for all image types
    • Fallback options when Sharp module is unavailable
    • Better handling of large images with automatic optimization

Installation

Option 1: Install via npm

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

Option 2: Run via Docker

docker run -i -e OPENROUTER_API_KEY=your-api-key-here stabgandocker/openrouter-mcp-multimodal:latest

Quick Start Configuration

Prerequisites

  1. Get your OpenRouter API key from OpenRouter Keys
  2. Choose a default model (optional)

MCP Configuration Options

Add one of the following configurations to your MCP settings file (e.g., cline_mcp_settings.json or claude_desktop_config.json):

Option 1: Using npx (Node.js)

{
  "mcpServers": {
    "openrouter": {
      "command": "npx",
      "args": [
        "-y",
        "@stabgan/openrouter-mcp-multimodal"
      ],
      "env": {
        "OPENROUTER_API_KEY": "your-api-key-here",
        "DEFAULT_MODEL": "qwen/qwen2.5-vl-32b-instruct:free"
      }
    }
  }
}

Option 2: Using uv (Python Package Manager)

{
  "mcpServers": {
    "openrouter": {
      "command": "uv",
      "args": [
        "run",
        "-m",
        "openrouter_mcp_multimodal"
      ],
      "env": {
        "OPENROUTER_API_KEY": "your-api-key-here",
        "DEFAULT_MODEL": "qwen/qwen2.5-vl-32b-instruct:free"
      }
    }
  }
}

Option 3: Using Docker

{
  "mcpServers": {
    "openrouter": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e", "OPENROUTER_API_KEY=your-api-key-here",
        "-e", "DEFAULT_MODEL=qwen/qwen2.5-vl-32b-instruct:free",
        "stabgandocker/openrouter-mcp-multimodal:latest"
      ]
    }
  }
}

Option 4: Using Smithery (recommended)

{
  "mcpServers": {
    "openrouter": {
      "command": "smithery",
      "args": [
        "run",
        "stabgan/openrouter-mcp-multimodal"
      ],
      "env": {
        "OPENROUTER_API_KEY": "your-api-key-here",
        "DEFAULT_MODEL": "qwen/qwen2.5-vl-32b-instruct:free"
      }
    }
  }
}

Examples

For comprehensive examples of how to use this MCP server, check out the examples directory. We provide:

  • JavaScript examples for Node.js applications
  • Python examples with interactive chat capabilities
  • Code snippets for integrating with various applications

Each example comes with clear documentation and step-by-step instructions.

Dependencies

This project uses the following key dependencies:

  • @modelcontextprotocol/sdk: ^1.8.0 - Latest MCP SDK for tool implementation
  • openai: ^4.89.1 - OpenAI-compatible API client for OpenRouter
  • sharp: ^0.33.5 - Fast image processing library
  • axios: ^1.8.4 - HTTP client for API requests
  • node-fetch: ^3.3.2 - Modern fetch implementation

Node.js 18 or later is required. All dependencies are regularly updated to ensure compatibility and security.

Available Tools

mcp_openrouter_chat_completion

Send text or multimodal messages to OpenRouter models:

use_mcp_tool({
  server_name: "openrouter",
  tool_name: "mcp_openrouter_chat_completion",
  arguments: {
    model: "google/gemini-2.5-pro-exp-03-25:free", // Optional if default is set
    messages: [
      {
        role: "system",
        content: "You are a helpful assistant."
      },
      {
        role: "user",
        content: "What is the capital of France?"
      }
    ],
    temperature: 0.7 // Optional, defaults to 1.0
  }
});

For multimodal messages with images:

use_mcp_tool({
  server_name: "openrouter",
  tool_name: "mcp_openrouter_chat_completion",
  arguments: {
    model: "anthropic/claude-3.5-sonnet",
    messages: [
      {
        role: "user",
        content: [
          {
            type: "text",
            text: "What's in this image?"
          },
          {
            type: "image_url",
            image_url: {
              url: "https://example.com/image.jpg"
            }
          }
        ]
      }
    ]
  }
});

Alternatives

Related Skills

Browse all skills
openrouter

OpenRouter API - Unified access to 400+ AI models through one API

9
perplexity-search

Perform AI-powered web searches with real-time information using Perplexity models via LiteLLM and OpenRouter. This skill should be used when conducting web searches for current information, finding recent scientific literature, getting grounded answers with source citations, or accessing information beyond the model's knowledge cutoff. Provides access to multiple Perplexity models including Sonar Pro, Sonar Pro Search (advanced agentic search), and Sonar Reasoning Pro through a single OpenRouter API key.

3
openrouter-hello-world

Create your first OpenRouter API request with a simple example. Use when learning OpenRouter or testing your setup. Trigger with phrases like 'openrouter hello world', 'openrouter first request', 'openrouter quickstart', 'test openrouter'.

3
research-lookup

Look up current research information using Perplexity's Sonar Pro Search or Sonar Reasoning Pro models through OpenRouter. Automatically selects the best model based on query complexity. Search academic papers, recent studies, technical documentation, and general research information with citations.

2
openrouter-common-errors

Execute diagnose and fix common OpenRouter API errors. Use when troubleshooting failed requests. Trigger with phrases like 'openrouter error', 'openrouter not working', 'openrouter 401', 'openrouter 429', 'fix openrouter'.

2
openrouter-function-calling

Implement function/tool calling with OpenRouter models. Use when building agents or structured outputs. Trigger with phrases like 'openrouter functions', 'openrouter tools', 'openrouter agent', 'function calling'.

2