返回 MCP 目录
public公开dns本地运行

openrouter-mcp-multimodal

OpenRouter MCP多模态服务器是一个通过OpenRouter.ai提供文本聊天和图像分析功能的协议服务器,支持多种模型选择和性能优化。

article

README

🚀 OpenRouter MCP 多模态服务器

一个基于 OpenRouter 的多模态 (MCP) 服务器,支持文本聊天和图片分析功能,为用户提供更丰富的交互体验。

🚀 快速开始

本服务器支持文本聊天和图片分析功能,让你可以与多种模型进行对话交互,还能处理和分析图片内容。

✨ 主要特性

  • 文本聊天:支持与 OpenRouter 集成的多种模型进行对话交互。
  • 图片分析:能够处理和分析图片内容,支持多种图片格式和来源。
  • 多模态交互:同时支持文本和图片的混合输入,提供更丰富的应用场景。
  • 灵活配置:可自定义设置默认模型、API 密钥等参数,适应不同开发需求。

📦 安装指南

1. 使用 npm 安装

npm install @openrouter/mcp-multimodal-server

2. 创建服务器实例

const { OpenRouterMCP } = require('@openrouter/mcp-multimodal-server');

// 初始化 MCP 服务
const openRouterMCP = new OpenRouterMCP({
  apiKey: 'your-api-key',
  defaultModel: 'google/palm-0.1'
});

// 启动服务
async function start() {
  await openRouterMCP.listen(3000);
  console.log('OpenRouter MCP 服务器已启动,监听端口 3000');
}
start();

💻 使用示例

基础用法

文本聊天

const result = await openRouterMCP.chatCompletion({
  model: 'anthropic/claude-3',
  messages: [
    {
      role: 'system',
      content: '你是很有用的助手。'
    },
    {
      role: 'user',
      content: '法国的首都是哪里?'
    }
  ],
  temperature: 0.7
});

console.log('回答:', result.choices[0].message.content);

高级用法

多模态对话

const result = await openRouterMCP.chatCompletion({
  model: 'meta/llama2',
  messages: [
    {
      role: 'user',
      content: [
        { type: 'text', text: '图片里有什么?' },
        {
          type: 'image_url',
          image_url: {
            url: 'https://example.com/image.jpg'
          }
        }
      ]
    }
  ],
  temperature: 0.5
});

console.log('回答:', result.choices[0].message.content);

📚 详细文档

配置选项

const openRouterMCP = new OpenRouterMCP({
  apiKey: 'your-api-key', // 必填:OpenRouter API 密钥
  defaultModel: 'google/palm-0.1', // 可选:默认使用的模型
  enableImageProcessing: true, // 启用图片处理功能
  imageProcessingConcurrency: 5 // 图片处理并发数,默认为5
});

支持的模型

目前支持 OpenRouter 上的所有可用模型,包括但不限于:

  • 文本模型
    • google/palm-0.1
    • anthropic/claude-3
    • meta/llama2
  • 多模态模型
    • microsoft/vision-language-imagenet-v1
    • openai/gpt-4-vision

错误处理

try {
  const result = await openRouterMCP.chatCompletion({
    model: 'non-existent-model',
    messages: [{ role: 'user', content: '测试错误处理' }]
  });
} catch (error) {
  console.error('错误:', error.message);
}

📄 许可证

MIT License

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端