首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
MCP广场 >详情页
OpenRouter 多模态分析工具2025-09-1166分享添加福利群:解决AI开发者的「MCP实战痛点」
通过OpenRouter.ai多样化的模型生态系统提供聊天和图像分析功能,支持文本对话以及使用各种AI模型进行强大的多模态图像处理。
By stabgan
2025-09-1166
github
详情内容
工具描述

OpenRouter MCP 多模态服务器

构建状态 npm 版本 Docker 拉取次数

这是一个通过 OpenRouter.ai 的多样化模型生态系统提供聊天和图像分析功能的 MCP(Model Context Protocol)服务器。该服务器结合了文本聊天功能和强大的图像分析能力。

功能

  • 文本聊天:

    • 直接访问所有 OpenRouter.ai 聊天模型
    • 支持简单的文本和多模态对话
    • 可配置的温度和其他参数
  • 图像分析:

    • 使用自定义问题分析单张图像
    • 同时处理多张图像
    • 自动调整图像大小和优化
    • 支持多种图像来源(本地文件、URL、数据 URL)
  • 模型选择:

    • 搜索和筛选可用模型
    • 验证模型 ID
    • 获取详细的模型信息
    • 支持默认模型配置
  • 性能优化:

    • 智能模型信息缓存
    • 带指数退避的重试机制
    • 自动处理速率限制

1.5.0 新增内容

  • 改进的操作系统兼容性:

    • 增强了 Windows、macOS 和 Linux 的路径处理
    • 更好地支持带有驱动器字母的 Windows 风格路径
    • 规范化路径处理,以在不同平台上保持一致的行为
  • MCP 配置支持:

    • 无需环境变量即可集成 Cursor MCP
    • 通过 MCP 参数直接配置
    • 灵活的 API 密钥和模型指定选项
  • 健壮的错误处理:

    • 改进了图像处理的回退机制
    • 更好的错误报告,包含具体的诊断信息
    • 文件读取的多重备份策略
  • 图像处理增强:

    • 对所有图像类型更可靠的 base64 编码
    • 在 Sharp 模块不可用时的回退选项
    • 更好地处理大型图像,并自动进行优化

安装

选项 1:通过 npm 安装

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

选项 2:通过 Docker 运行

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

快速启动配置

先决条件

  1. OpenRouter 密钥 获取您的 OpenRouter API 密钥
  2. 选择一个默认模型(可选)

MCP 配置选项

将以下配置之一添加到您的 MCP 设置文件中(例如 cline_mcp_settings.jsonclaude_desktop_config.json):

选项 1:使用 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"
      }
    }
  }
}

选项 2:使用 uv (Python 包管理器)

{
  "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"
      }
    }
  }
}

选项 3:使用 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"
      ]
    }
  }
}

选项 4:使用 Smithery(推荐)

{
  "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"
      }
    }
  }
}

示例

有关如何使用此 MCP 服务器的综合示例,请查看 示例目录。我们提供了:

  • JavaScript 示例用于 Node.js 应用程序
  • Python 示例具有交互式聊天功能
  • 与各种应用程序集成的代码片段

每个示例都附有清晰的文档和逐步说明。

依赖项

该项目使用以下关键依赖项:

  • @modelcontextprotocol/sdk: ^1.8.0 - 最新的MCP SDK用于工具实现
  • openai: ^4.89.1 - 用于OpenRouter的OpenAI兼容API客户端
  • sharp: ^0.33.5 - 快速图像处理库
  • axios: ^1.8.4 - 用于API请求的HTTP客户端
  • node-fetch: ^3.3.2 - 现代fetch实现

需要Node.js 18或更高版本。所有依赖项都会定期更新,以确保兼容性和安全性。

可用工具

mcp_openrouter_chat_completion

向OpenRouter模型发送文本或多模态消息:

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
  }
});

对于包含图像的多模态消息:

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"
            }
          }
        ]
      }
    ]
  }
});
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档