一个基于 OpenRouter 的多模态 (MCP) 服务器,支持文本聊天和图片分析功能,为用户提供更丰富的交互体验。
本服务器支持文本聊天和图片分析功能,让你可以与多种模型进行对话交互,还能处理和分析图片内容。
npm install @openrouter/mcp-multimodal-server
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 上的所有可用模型,包括但不限于:
try {
const result = await openRouterMCP.chatCompletion({
model: 'non-existent-model',
messages: [{ role: 'user', content: '测试错误处理' }]
});
} catch (error) {
console.error('错误:', error.message);
}
MIT License