Token导航 LogoToken导航

MCP Server · 运维云端

Openrouter MCP Multimodal

一个集文本、图像、音频和视频分析与生成功能于一体的多模态服务器,支持连接300多种大型语言模型。

stdio官方级别未说明来源级核验工具 14@stabgan/openrouter-mcp-multimodal
大型语言模型TypeScriptVS CodeClaude DesktopClaudeCursorWindsurfClineVS Code Insiders

快速开始

作者 / 组织
stabgan
提供方
stabgan
运行时
Node.js

工具数量

14

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

39

仓库热度

收录来源

2 个

MCP World

选型结论

Openrouter MCP Multimodal 属于运维云端类 MCP Server,公开资料标注 14 个工具,通过stdio 本地进程接入,适配 Claude Desktop、Claude、Cursor,有可以直接复制的安装命令;接入前要先准备 API Key。

分类

运维云端

传输方式

stdio

认证方式

API Key

部署方式

公开资料未说明

安装与配置

安装命令

npx -y @stabgan/openrouter-mcp-multimodal # that's it — needs OPENROUTER_API_KEY env var

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Node.js,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 14 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

OpenRouter MCP Multimodal Server

The only MCP server that does text + image + audio + video analysis AND generation in one package. Connect Claude Desktop, Cursor, Kiro, VS Code, Windsurf, or Cline to 300+ LLMs via OpenRouter.

Install · Tools · Examples · Config · Changelog

______________________________________________________________________

安装

npx -y @stabgan/openrouter-mcp-multimodal  # that's it — needs OPENROUTER_API_KEY env var

获取免费的API密钥→ openrouter.ai/keys

一键安装

Kiro Cursor VS Code VS Code Insiders Claude DesktopManual config — Add to claude_desktop_config.json WindsurfManual config — Add to ~/.codeium/windsurf/mcp_config.json ClineManual config — Add via Cline MCP settings Smitherynpx -y @smithery/cli install @stabgan/openrouter-mcp-multimodal --client claude

点击后,目标客户端会打开一个确认提示。粘贴您的 OPENROUTER_API_KEY --deeplink提供了一个占位符,因此共享链接中不会出现任何秘密。

手动设定

npx (recommended)

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

Docker

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

Global install

npm install -g @stabgan/openrouter-mcp-multimodal
{
  "mcpServers": {
    "openrouter": {
      "command": "openrouter-multimodal",
      "env": { "OPENROUTER_API_KEY": "sk-or-v1-..." }
    }
  }
}

为什么是这个?

能力此服务器其他
与300多名模特进行文字聊天✅✅
图像分析(视觉)✅ 夏普优化一些
音频分析+生成✅❌
视频理解 (mp4/mov/webm)✅❌
视频生成 (见3.1,Sora 2 Pro)✅❌
响应缓存(命中时为零令牌)✅❌
网络搜索、重新排序、健康检查✅❌
MCP 2025-06-18规范(结构化输出、进度)✅❌

工具

工具它做什么
chat_completion向任何模型发送消息。支持提供者路由、模型后缀(:nitro, :floor, :exacto)、响应缓存、推理直通和网络搜索。
analyze_image分析本地文件、URL或数据URI中的图像。使用sharp自动优化。
analyze_audio从文件、URL或数据URI转录/分析音频(WAV、MP3、FLAC、OGG)
analyze_video从文件、URL或数据URI分析视频(mp4、mpeg、mov、webm)
generate_image生成具有宽高比控制和可选路径沙盒磁盘保存的图像。
generate_audio生成语音或音乐。自动检测格式,将原始PCM封装在WAV中。
generate_video通过异步API(Veo 3.1/Sora 2 Pro/Seedance/Wan)生成带有MCP进度通知的视频。
generate_video_from_image图像到视频。架构比 generate_video 以获得更高的刀具调用精度。
get_video_status继续按ID轮询视频生成作业
rerank_documents根据查询重新排列文档(Cohere、Fireworks)。
search_models按名称、提供商或形态搜索/过滤模型。分页。
get_model_info获取任何型号的定价、上下文长度和功能。
validate_model检查OpenRouter上是否存在型号ID。
health_check验证API密钥、OpenRouter可达性、服务器+协议版本。
所有错误都带有 _meta.code 从封闭的分类学来看: INVALID_INPUT · UNSAFE_PATH · UPSTREAM_HTTP · UPSTREAM_TIMEOUT · UPSTREAM_REFUSED · UNSUPPORTED_FORMAT · RESOURCE_TOO_LARGE · ZDR_INCOMPATIBLE · MODEL_NOT_FOUND · JOB_FAILED · JOB_STILL_RUNNING · INTERNAL

用法示例

与提供商路由聊天:

{
  "tool": "chat_completion",
  "arguments": {
    "model": "anthropic/claude-sonnet-4",
    "messages": [{ "role": "user", "content": "Summarize this document" }],
    "provider": { "sort": "price", "ignore": ["openai"], "data_collection": "deny" }
  }
}

从Claude Desktop生成视频:

{
  "tool": "generate_video",
  "arguments": {
    "model": "google/veo-3.1",
    "prompt": "a calm river at sunrise, cinematic drone shot",
    "duration": 4,
    "save_path": "./river.mp4"
  }
}

分析图像:

{
  "tool": "analyze_image",
  "arguments": {
    "image": "/path/to/photo.jpg",
    "prompt": "Describe what you see in detail"
  }
}

使用缓存+推理进行聊天(v4.5):

{
  "tool": "chat_completion",
  "arguments": {
    "model": "deepseek/deepseek-r1",
    "messages": [{ "role": "user", "content": "Prove sqrt(2) is irrational" }],
    "cache": true,
    "include_reasoning": true
  }
}

网络搜索:

{
  "tool": "chat_completion",
  "arguments": {
    "model": "openai/gpt-4o",
    "messages": [{ "role": "user", "content": "What shipped in OpenRouter last week?" }],
    "online": true
  }
}

重新排列文档:

{
  "tool": "rerank_documents",
  "arguments": {
    "query": "best practices for MCP server auth",
    "documents": ["doc A text...", "doc B text...", "doc C text..."],
    "top_n": 3
  }
}

配置

Environment variables (click to expand)

变量必填默认描述
OPENROUTER_API_KEY是-您的OpenRouter API密钥
OPENROUTER_DEFAULT_MODEL没有nvidia/nemotron-nano-12b-v2-vl:free聊天+分析工具的默认模型
DEFAULT_MODEL否--以上别名
OPENROUTER_MAX_TOKENS否--默认值 max_tokens 当不是按请求设置时
OPENROUTER_PROVIDER_QUANTIZATIONS否--CSV。按量化进行滤波(例如。 fp16,int8)
OPENROUTER_PROVIDER_IGNORE否--CSV。排除供应商蛞蝓
OPENROUTER_PROVIDER_SORT没有--price / throughput / latency
OPENROUTER_PROVIDER_ORDER没有提供程序ID的JSON数组或CSV
OPENROUTER_PROVIDER_REQUIRE_PARAMETERS没有--true / false
OPENROUTER_PROVIDER_DATA_COLLECTION没有--allow / deny
OPENROUTER_PROVIDER_ALLOW_FALLBACKS没有--true / false
OPENROUTER_CACHE_RESPONSES没有--1 / true。在服务器范围内启用响应缓存
OPENROUTER_INCLUDE_REASONING没有--1 / true。在服务器范围内启用推理传递
OPENROUTER_MODEL_CACHE_TTL_MS没有3600000模型缓存TTL(ms)
OPENROUTER_IMAGE_MAX_DIMENSION没有800调整大小的最长边(px)
OPENROUTER_IMAGE_JPEG_QUALITY没有80JPEG质量(1–100)
OPENROUTER_IMAGE_FETCH_TIMEOUT_MS没有30000图像URL超时
OPENROUTER_IMAGE_MAX_DOWNLOAD_BYTES没有26214400图像URL大小上限(~25 MB)
OPENROUTER_IMAGE_MAX_REDIRECTS没有8图像URL重定向上限
OPENROUTER_IMAGE_MAX_DATA_URL_BYTES没有20971520图像数据URL大小上限(约20 MB)
OPENROUTER_AUDIO_FETCH_TIMEOUT_MS没有30000音频URL超时
OPENROUTER_AUDIO_MAX_DOWNLOAD_BYTES没有26214400音频URL大小上限(~25 MB)
OPENROUTER_AUDIO_MAX_REDIRECTS没有8音频URL重定向上限
OPENROUTER_AUDIO_MAX_DATA_URL_BYTES没有20971520音频数据URL大小上限
OPENROUTER_DEFAULT_VIDEO_MODEL没有google/gemini-2.5-flash默认值为 analyze_video
OPENROUTER_DEFAULT_VIDEO_GEN_MODEL没有google/veo-3.1默认值为 generate_video
OPENROUTER_VIDEO_FETCH_TIMEOUT_MS没有60000视频URL超时
OPENROUTER_VIDEO_MAX_DOWNLOAD_BYTES没有104857600视频URL大小上限(~100 MB)
OPENROUTER_VIDEO_MAX_REDIRECTS没有8视频URL重定向上限
OPENROUTER_VIDEO_MAX_DATA_URL_BYTES没有104857600视频数据URL大小上限
OPENROUTER_VIDEO_POLL_INTERVAL_MS没有15000异步视频轮询节奏
OPENROUTER_VIDEO_MAX_WAIT_MS没有600000返回可恢复句柄前的最大等待时间
OPENROUTER_VIDEO_GEN_MAX_BYTES没有268435456生成的视频下载上限(~256 MB)
OPENROUTER_VIDEO_INLINE_MAX_BYTES没有10485760内联视频上限(~10 MB)
OPENROUTER_OUTPUT_DIR没有process.cwd()沙盒根 save_path
OPENROUTER_ALLOW_UNSAFE_PATHS没有--1 禁用沙盒
OPENROUTER_LOG_LEVEL没有infoerror / warn / info / debug

安全

  • SSRF保护 --URL获取块私有/链接本地/保留的IPv4和IPv6目标(环回、映射、兼容、多播、6to4、Teredo、ORCHID)。
  • 路径沙盒 — save_path 已解决 OPENROUTER_OUTPUT_DIR;遍历尝试被拒绝。以(权力)否决 OPENROUTER_ALLOW_UNSAFE_PATHS=1.
  • 无凭证泄漏 -API密钥从不在日志、响应或错误中回显。审计日志记录了每次付费操作调用。

Architecture

src/
├── index.ts                    # Entry, env validation, graceful shutdown
├── tool-handlers.ts            # 14 tools (annotated) + dispatch
├── model-cache.ts              # TTL + in-flight coalescing
├── openrouter-api.ts           # REST client (chat + /videos)
├── errors.ts                   # Closed ErrorCode enum
├── logger.ts                   # JSON-line structured logger
└── tool-handlers/
    ├── fetch-utils.ts          # SSRF, bounded fetch, data-URL parser
    ├── openrouter-errors.ts    # SDK/HTTP → ErrorCode classifier
    ├── completion-utils.ts     # Reasoning-model cutoff detection
    ├── path-safety.ts          # save_path sandbox
    ├── chat-completion.ts      # Text + multimodal chat
    ├── analyze-image.ts        # Vision analysis
    ├── analyze-audio.ts        # Audio transcription
    ├── analyze-video.ts        # Video understanding
    ├── generate-image.ts       # Image generation
    ├── generate-audio.ts       # Audio generation + streaming
    ├── generate-video.ts       # Video generation (async)
    ├── image-utils.ts          # Sharp optimization, MIME sniffing
    ├── audio-utils.ts          # Audio format detection
    ├── video-utils.ts          # Video format detection
    ├── search-models.ts        # Model search
    ├── get-model-info.ts       # Model detail lookup
    └── validate-model.ts       # Model existence check

Design Principles & Research

v4.5的设计借鉴了MCP的最佳实践和学术研究:

  • 结果,而非行动 --工具封装了整个工作流(fetch→ 验证→ 调用→ 保存),而不是公开原始API基元。跟随 Phil Schmid的MCP制作指南.
  • 平淡无奇的论点 --带有枚举的顶级图元可以降低工具调用失败率。由...支持 傅等(2025) 显示成功随着模式复杂性的增加而下降。
  • 故障模式文档 --每个工具描述都包括“失败时间:”和“使用:”部分,提高了选择精度 斯拉普巴赫 (2026).
  • 不受信任的内容标记 --分析工具标记输出 _meta.content_is_untrusted: true 减轻间接快速注射(赵等人,《护爪》).
  • 带有重试提示的结构化错误 --关闭 _meta.code 分类学+ retry_after_seconds 击败原始错误字符串。每 Apigene的12条规则.
  • MCP 2025-06-18合规性 --结构化产出(outputSchema)、进度通知、工具注释(readOnlyHint, destructiveHint, idempotentHint, openWorldHint).

OpenRouter平台功能浮出水面: 响应缓存 · 网络搜索 · 推理令牌 · 汽车精确 · 重新排序 · 快速缓存

从v2升级

v3+是 添加剂 --没有删除任何工具模式或环境变量。

  • 新工具: analyze_video, generate_video, generate_video_from_image, get_video_status, rerank_documents, health_check
  • 结构化的 _meta.code 在每个错误响应上
  • save_path 默认情况下沙盒--set OPENROUTER_OUTPUT_DIR 或 OPENROUTER_ALLOW_UNSAFE_PATHS=1

发展

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
npm test                    # 288 unit tests, <1s
npm run test:integration    # Live API tests (16 scenarios)
npm run lint
node scripts/live-e2e.mjs  # 16 live E2E scenarios

兼容性

许可证

Apache 2.0——请参阅 许可证.

贡献

欢迎发布问题和PR。请先打开一个问题以了解重大更改。

工具与能力

工具数量

14

资源数量

0

提示词数量

0

能力标签

多模态分析TypeScript本地部署多模态生成大型语言模型服务器

支持客户端

Claude DesktopClaudeCursorWindsurfClineVS CodeVS Code Insiders

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 工具数量 14 个,一次接入能覆盖的操作比单点工具更全。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude Desktop、Claude、Cursor,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 Node.js,换机器要重新装一遍。
  • 需要自备API Key,没有凭据没法直接试。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到API Key的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Openrouter MCP Multimodal

MCP World · 本页

14stdio有2 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Openrouter MCP Multimodal 怎么安装?

公开资料给出的安装命令是 npx -y @stabgan/openrouter-mcp-multimodal # that's it — needs OPENROUTER_API_KEY env var,运行环境为 Node.js。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Openrouter MCP Multimodal 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Node.js;保存后完全退出客户端再打开,配置才会生效。

Openrouter MCP Multimodal 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Openrouter MCP Multimodal 需要 API Key 吗?

公开资料标注的认证方式是API Key,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Openrouter MCP Multimodal 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude、Cursor、Windsurf、Cline、VS Code、VS Code Insiders;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP