模型发现与比较协议服务器

一个用于发现、比较和选择不同提供商的LLM模型的服务,提供实时定价和能力信息。

  • by danielrosehill
  • JavaScript
  • 混合部署
  • 更新于
在 GitHub 查看 danielrosehill/Model-Scout-MCP

使用说明

侦察员MCP模型

MCP(模型上下文协议)服务器,用于在具有实时定价和功能的提供商之间发现、比较和选择LLM模型。

支持stdio和 可流式传输的HTTP 运输。

问题陈述

大型语言模型通常对以下方面有过时的知识:

  • 新发布的型号及其确切名称/ID
  • 当前代币定价
  • 模型功能和支持的功能

此MCP服务器通过提供对模型目录和智能搜索/比较工具的实时访问来解决这些问题。

当前状态

阶段: ✅ 已实施和测试

提供商支持:

  • ✅ 开放路由 -目前支持(来自50多家供应商的100多种型号)
  • 🔄 未来:可能会添加其他提供商

备注OpenRouter目前是唯一受支持的提供商,因为它提供了对模型定价和功能的全面编程访问。并非所有模型提供商都提供用于成本检查的API,这使得OpenRouter成为此用例的理想聚合器。

文档

工具架构(2个工具)

1. get_model

按ID直接查找特定模型。返回包括API终结点信息在内的完整详细信息。

2. consider_models

用于根据用户需求探索、比较和分析模型的灵活工具。手柄:

  • 过滤和搜索
  • 模型比较
  • 成本分析和预测
  • 带有权衡的建议

设计理念:一个查找工具,一个考虑工具。这 consider_models 该工具根据请求调整其行为,可以简单到列出免费模型,也可以复杂到具有成本预测的多因素决策分析。

主要特点

模型发现

  • 按自然语言搜索(“廉价教学模式”)
  • 按能力(愿景、工具、推理)过滤
  • 按定价、上下文长度、提供商筛选
  • 按各种标准(价格、上下文、新旧程度)排序

成本优化

  • 计算工作负载的估计成本
  • 查找符合要求的最便宜型号
  • 比较多个型号的定价
  • 确定具有成本效益的替代方案

智能推荐

  • 基于用例的建议
  • 权衡分析(成本与能力)
  • 备选建议
  • 根据需求进行个性化设置

用例

LLM应用

  • 接地:获取当前型号名称和ID
  • 成本规划:部署前估计API成本
  • 优化:寻找具有类似功能的更便宜的替代品
  • 发现:查找符合特定条件的新型号

查询示例

"Find me a cheap instructional model"
→ search_models or find_cheapest with filters

"What's the latest GPT-4 variant?"
→ list_models filtered by provider, sorted by date

"Compare Claude Opus vs Sonnet pricing"
→ compare_models with both IDs

"I need a model with vision for under $1 per million tokens"
→ search_models or list_models with modality and price filters

"What will it cost to process 100K tokens with GPT-4?"
→ calculate_cost with model ID and token counts

"Is there a cheaper alternative to Claude Opus?"
→ find_alternatives optimized for cost

技术方法

数据源

  • OpenRouter API: https://openrouter.ai/api/v1/models
  • 通过承载令牌进行身份验证
  • 返回包含定价和功能的全面型号目录

缓存策略

  • 缓存模型列表10分钟(可配置)
  • 内存过滤和搜索
  • force_refresh 绕过缓存的参数

实施阶段

第一阶段(MVP):核心工具

  • list_models, get_model, calculate_cost

第2阶段(增强型):情报

  • search_models, compare_models, find_cheapest

第三阶段(高级):人工智能驱动

  • recommend_model, find_alternatives

API密钥设置

创建一个 .env 文件包含:

OPENROUTER_API_KEY=sk-or-v1-...

从以下位置获取API密钥:https://openrouter.ai/keys

提供商详细信息

开放路由

OpenRouter聚合了来自多个提供商的模型:

  • OpenAI(GPT-4、GPT-3.5等)
  • 拟人(克劳德模型)
  • Meta(美洲驼模型)
  • 谷歌(双子座,PaLM)
  • 米斯特拉尔AI
  • 50多家供应商

API文档: https://openrouter.ai/docs/api/reference/overview

未来的增强功能

  • 历史定价跟踪
  • 性能基准集成
  • 模型弃用警报
  • 额外的提供商支持
  • 基于使用模式的成本预测
  • 批量比较工具
  • 自定义过滤DSL

安装

先决条件

选项1:通过npm安装(推荐)

全局安装或与npx一起使用:

# Install globally
npm install -g model-scout-mcp

# Or use with npx (no installation needed)
npx model-scout-mcp

选项2:从源代码安装

# Clone the repository
git clone https://github.com/danielrosehill/Model-Scout-MCP.git
cd Model-Scout-MCP

# Install dependencies
npm install

# Link for local testing (optional)
npm link

# Test the server
npm test  # or: node test-server.js

# Test MCP protocol (optional)
./test-mcp-server.sh

配置

克劳德桌面(stdio传输)

添加到MCP设置文件中:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json
  • 视窗: %APPDATA%\Claude\claude_desktop_config.json

使用npx(推荐)

{
  "mcpServers": {
    "model-scout": {
      "command": "npx",
      "args": ["-y", "model-scout-mcp"],
      "env": {
        "OPENROUTER_API_KEY": "your-api-key-here"
      }
    }
  }
}

使用全局安装

{
  "mcpServers": {
    "model-scout": {
      "command": "model-scout-mcp",
      "env": {
        "OPENROUTER_API_KEY": "your-api-key-here"
      }
    }
  }
}

从源头使用

{
  "mcpServers": {
    "model-scout": {
      "command": "node",
      "args": ["/absolute/path/to/Model-Scout-MCP/index.js"],
      "env": {
        "OPENROUTER_API_KEY": "your-api-key-here"
      }
    }
  }
}

备注:替换 your-api-key-here 使用来自的实际OpenRouter API密钥https://openrouter.ai/keys

HTTP传输(流式HTTP)

对于支持基于HTTP的MCP连接的客户端,您可以在HTTP模式下运行服务器:

# Start the HTTP server
MCP_TRANSPORT=http OPENROUTER_API_KEY=your-key node index.js

# Or with npm scripts
npm run start:http

环境变量

变量 描述 默认值
OPENROUTER_API_KEY 您的OpenRouter API密钥(必需) -
MCP_TRANSPORT 运输方式: stdio 或 http stdio
MCP_PORT HTTP服务器端口(仅限HTTP模式) 3000
MCP_HOST HTTP服务器主机(仅限HTTP模式) 127.0.0.1

HTTP端点

在HTTP模式下运行时:

  • MCP端点: POST/GET http://127.0.0.1:3000/mcp
  • 健康检查: GET http://127.0.0.1:3000/health

MCP客户端配置(HTTP)

对于支持流式HTTP传输的MCP客户端:

{
  "mcpServers": {
    "model-scout": {
      "url": "http://127.0.0.1:3000/mcp",
      "transport": "streamable-http"
    }
  }
}

贡献

欢迎投稿!请在GitHub上打开问题或PR。

许可证

MIT许可证-有关详细信息,请参阅许可证文件

作者

丹尼尔·罗斯希尔