mcpField
M
ModelShortlist

ModelShortlist

本地服务
modelshortlist.comAI 与智能体16 周前更新

关于 ModelShortlist

ModelShortlist 是本地运行、使用自带密钥的 MCP 服务,利用 OpenRouter 目录和 Artificial Analysis 基准数据,帮助 AI 助手按具体工作负载评估模型。它会标明数据新鲜度,并由宿主 AI 做最终推荐。

主要功能

  1. 01按工作负载推荐模型
  2. 02按价格、上下文、工具和 ZDR 筛选
  3. 03比较模型及基准数据
  4. 04报告数据源新鲜度与状态
  5. 05本地处理 API 密钥且无遥测

适用场景

  1. 01为编码工作负载筛选模型
  2. 02查找满足上下文和价格限制的选项
  3. 03比较模型基准与端点详情

MCP 相关

向 MCP 客户端提供只读的推荐、比较和状态工具。它在本地使用用户的 OpenRouter 与 Artificial Analysis 凭据获取上游数据,不负责路由推理请求。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"agenticartists-modelshortlist": {
"command": "npx",
"args": [
"-y",
"@agentic.artists/modelshortlist"
],
"env": {
"ARTIFICIAL_ANALYSIS_API_KEY": "<ARTIFICIAL_ANALYSIS_API_KEY>",
"OPENROUTER_API_KEY": "<OPENROUTER_API_KEY>"
}
}
}
}
启动命令npx -y @agentic.artists/modelshortlist
需要配置的环境变量
ARTIFICIAL_ANALYSIS_API_KEY密钥Artificial Analysis API key used to fetch benchmark and model-performance data.
OPENROUTER_API_KEY密钥OpenRouter API key used to fetch model catalog and optional ZDR endpoint data.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@agentic.artists/modelshortlist0.2.4

工具

3

收录的工具列表 · 更新于 2 周前

参数类型必填说明
limitinteger否
querystring否可选的模型名称子串筛选条件。
creatorstring否可选的模型创建者/提供商系列筛选条件。
use_casestring是用户需要模型执行的任务。详细保留其实际工作负载和优先级。
min_contextinteger否所需的最小上下文窗口。
requires_zdrboolean否仅当用户明确要求 Zero Data Retention(ZDR)时设为 true。否则保持 false,使所有 OpenRouter 模型都符合条件。
force_refreshboolean否强制发起上游 API 新请求。谨慎使用,因为 AA Free 有配额限制。
requires_toolsboolean否工作负载需要工具/函数调用时为 True。
max_input_pricenumber否OpenRouter 输入价格的可接受上限,单位为每 100 万个 token 的美元价格。
max_output_pricenumber否OpenRouter 输出价格的可接受上限,单位为每 100 万个 token 的美元价格。

详细介绍

ModelShortlist

CI npm MIT License Official MCP Registry

别再猜该用哪个 AI 模型了。

ModelShortlist 是一款本地 MCP 服务,支持自带密钥,可为你的 AI 助手提供基于 完整 OpenRouter 模型目录 和 Artificial Analysis 基准测试 的模型选择依据。它会按需或在缓存过期时刷新上游依据,并明确报告任何来源是否已过期或不可用。只有在你明确要求时,零数据保留(ZDR)才会作为硬性约束。

没有托管的 ModelShortlist 后端。无需账户。MCP 中没有遥测数据。你的 API 密钥仅保存在本地 MCP 进程中,并用于直接调用上游服务。

为什么选择 ModelShortlist

选择模型不再只是“哪个模型的基准测试分数最高?”正确答案取决于你实际的工作负载、功能、成本、上下文、可用性和隐私要求。

ModelShortlist 可帮助你的聊天 Agent 基于以下信息进行推理:

  • OpenRouter 模型目录
  • 工具/函数调用支持
  • 上下文和补全限制
  • OpenRouter 输入/输出定价,包括 OpenRouter 公布的分层定价
  • 隐私要求适用时的 ZDR 端点可用性
  • 适用时的 ZDR 端点延迟、吞吐量、正常运行时间和提供商选项
  • Artificial Analysis Intelligence Index
  • Artificial Analysis Coding Index
  • Artificial Analysis Agentic Index
  • Artificial Analysis 定价和中位性能
  • 明确的来源新鲜度和降级状态警告

默认情况下,ZDR 不是资格要求。ModelShortlist 会考虑完整的 OpenRouter 模型目录。如果你明确要求 ZDR,它会切换到 OpenRouter ZDR 端点依据,并要求同一真实端点满足所有硬性约束。

宿主 AI 会根据你的使用场景给出最终建议。ModelShortlist 刻意不采用一种通用的排名公式。

最快安装方式

使用仅需浏览器的配置器:

安装 ModelShortlist →

它会为以下客户端生成专属配置或命令:

  • Claude Desktop
  • Hermes Desktop
  • Cursor
  • Claude Code
  • VS Code / Copilot

你需要在配置器中粘贴自己的 Artificial Analysis 和 OpenRouter 密钥。配置器会在浏览器中使用这些密钥来生成配置文本,不会将它们发送给 ModelShortlist 或其后端。

要求:

  • Node.js 20+
  • 一个 Artificial Analysis API 密钥
  • 一个 OpenRouter API 密钥
  • 一个支持 MCP 的客户端

通用 npm 配置

大多数本地 stdio MCP 客户端(包括 Claude Desktop、Hermes Desktop 和 Cursor)都可以直接通过 npx 启动 ModelShortlist:

{
  "mcpServers": {
    "modelshortlist": {
      "command": "npx",
      "args": ["-y", "@agentic.artists/modelshortlist"],
      "env": {
        "ARTIFICIAL_ANALYSIS_API_KEY": "YOUR_KEY",
        "OPENROUTER_API_KEY": "YOUR_KEY"
      }
    }
  }
}

在 npx 不在应用 PATH 中的 Windows 图形界面客户端上,请使用 npx.cmd,或使用下方的引导式克隆配置。

引导式本地设置

此方式会将 API 密钥保存在本地、由 gitignore 排除的 .env.local 文件中,并打印可直接粘贴的 MCP 配置,其中包含绝对可执行文件路径。

Windows
git clone https://github.com/AgenticArtists/ModelShortlist.git
cd ModelShortlist
npm.cmd install
npm.cmd run setup
macOS / Linux
git clone https://github.com/AgenticArtists/ModelShortlist.git
cd ModelShortlist
npm install
npm run setup

设置命令会:

  • 使用掩码输入提示输入两个 API 密钥
  • 仅将密钥存储在受 git 忽略的 .env.local 中
  • 输出可直接粘贴到 Claude Desktop / Hermes Desktop / Cursor 和 VS Code / Copilot 中的 MCP 配置
  • 使用运行设置命令的确切 Node 可执行文件,避免许多 GUI 客户端的 PATH 问题

如果 PowerShell 阻止 npm.ps1,请使用 npm.cmd;无需更改执行策略。

更多设置详情请见 LOCAL_MCP.md。

示例提示词

对于重复性编码子 Agent,我可以放心使用的最便宜模型是什么?必须支持工具调用。

我需要 200k 上下文和工具调用。目前有哪些最佳选择?

我需要 200k 上下文、工具调用和 ZDR。目前有哪些最佳选择?

对于这项编码工作负载,顶级前沿模型是否真的物有所值?

在保持输出成本较低的同时,从数千份文档中提取结构化数据,最适合用哪个模型?

我需要在每百万输出 token 不超过 $10 的预算下,实现最高水平的自主编码能力。应该用什么?

MCP 工具

recommend_models

用于针对特定工作负载提供推荐的主要工具。它接受硬性约束,例如:

  • 是否要求 ZDR
  • 是否要求工具调用
  • 最小上下文长度
  • 最高输入 / 输出价格
  • 创作者 / 模型筛选条件

如果不要求 ZDR,该工具会考虑整个 OpenRouter 目录。如果明确要求 ZDR,则会根据 ZDR 端点证据进行筛选,并通过同一端点验证硬性约束。

只有在能够可靠匹配模型时,才会附加 Artificial Analysis 基准数据。无法可靠匹配基准数据的模型仍符合条件,其基准字段会留空,而不会被悄然移除。

严格的价格上限会保守地考虑 OpenRouter 为模型或端点公布的所有定价档位,而不会假设最低价 / 基础档位始终适用。

compare_models

针对指定的 OpenRouter 模型 ID 候选清单,返回 OpenRouter 目录信息、ZDR 可用性、(如有)Artificial Analysis 基准信息,以及来源新鲜度。

modelshortlist_status

显示来源新鲜度、OpenRouter 目录覆盖率、ZDR 覆盖率、模型匹配覆盖率、有歧义 / 未匹配的记录、缓存状态,以及 Artificial Analysis 速率限制元数据。

数据新鲜度与降级运行

ModelShortlist 不会悄然将过时证据称为“当前”。工具响应会显示来源级状态:

  • fresh:最近一次刷新尝试成功。
  • stale:最近一次刷新失败,正在使用较早的进程内副本,并附带警告。
  • unavailable:来源获取失败,且当前进程中没有缓存副本。

Artificial Analysis 可能独立发生故障,但不会导致 OpenRouter 模型被移除;基准字段会留空,而不会被视为零或表现不佳。普通请求也可能无法获取 OpenRouter ZDR 元数据,因为 ZDR 是可选项。

OpenRouter 模型目录是基础数据源。如果该目录不可用且没有缓存副本,或者返回空目录且不存在更早的有效副本,ModelShortlist 将拒绝生成候选清单。

如果请求要求 ZDR,但无法获取 ZDR 端点证据,系统会默认拒绝,而不会将其解释为“没有符合条件的模型”。如果缓存的 ZDR 证据已过时,系统会显示这一限制;并且在实际 OpenRouter 推理请求中,仍必须强制执行 / 重新验证 ZDR。

有关故障模式和客户端诊断,请参阅 docs/TROUBLESHOOTING.md。

匹配方式

Artificial Analysis Free API 不会公开 OpenRouter 模型 ID。ModelShortlist 会采用保守的方式协调模型:

  1. 手动验证的别名
  2. 规范化名称/slug 完全匹配
  3. 有歧义或未匹配的记录不会包含 Artificial Analysis 指标

ModelShortlist 不会对不确定的模型变体进行模糊匹配。缺少基准测试数据,也好过将基准测试数据关联到错误的模型。未匹配的 OpenRouter 模型仍可纳入考虑,只是不包含 Artificial Analysis 指标。

回归测试明确覆盖 mini/base、pro/small/thinking、preview/stable、带日期的发布版本、重复名称和错误别名等情况。

已验证的别名位于 config/aliases.json。

ZDR 是可选项

ModelShortlist 会追踪哪些模型具有支持 ZDR 的 OpenRouter 端点,但除非用户明确要求 Zero Data Retention,否则不会将结果筛选为仅包含这些模型。

如果要求 ZDR,ModelShortlist 会检查端点级别的资格和硬性约束。如果之后通过 OpenRouter 调用所选模型,请在实际推理请求中再次强制启用 ZDR:

{
  "provider": {
    "zdr": true,
    "require_parameters": true
  }
}

如果不要求 ZDR,不要仅仅因为某个模型恰好支持 ZDR 就添加 provider.zdr=true。

数据流

Your MCP client
      |
      | local stdio
      v
ModelShortlist MCP
   |          |
   |          +--> OpenRouter model + endpoint metadata
   |
   +-------------> Artificial Analysis benchmark/performance evidence
      |
      v
structured evidence + freshness metadata
      |
      v
Your host AI reasons about the workload and recommends a fit

ModelShortlist 负责推荐,不负责路由推理或托管模型。

数据来源与归属

ModelShortlist 使用通过你自己的 API 凭据访问的数据。

ModelShortlist 与 Artificial Analysis 或 OpenRouter 均无关联,也未获其背书。

ModelShortlist 源代码采用 MIT License 许可。上游数据和 API 仍受各自条款约束。ModelShortlist 不会打包或托管 Artificial Analysis 数据集;每位用户都使用自己的凭据访问上游数据,并负责遵守适用条款。

详情请参阅 ATTRIBUTION.md。

隐私与安全

  • 基于克隆仓库的设置会将 .env.local 加入 git 忽略列表。
  • API 密钥由 MCP 进程在本地加载。
  • 设置命令会对 API 密钥输入进行遮蔽。
  • 浏览器安装配置工具不会将输入的密钥发送到 ModelShortlist 后端。
  • ModelShortlist 不运营托管后端。
  • MCP 工具为只读。
  • MCP 中未内置遥测功能。
  • CI 会审计生产环境中 MCP 和网站的依赖,以检查高危漏洞。
  • CI 会验证 npm tarball 不包含 .env.local、网站源代码、测试或 GitHub 工作流文件。

如果发现安全问题,请参阅 SECURITY.md。

MCPB 和发布

ModelShortlist 会为本地服务分发渠道构建经过验证的 .mcpb 包。CI 会验证并打包该包。带标签的发布配置为:验证软件包、运行安全检查、通过 npm trusted publishing 发布尚未发布的 npm 版本,并将经过验证的 MCPB 包附加到 GitHub Release。

请参阅 docs/MCPB_DISTRIBUTION.md 和 docs/DISTRIBUTION.md。

发现与目录维护者

ModelShortlist 已发布到 Official MCP Registry。可复用的目录元数据和规范列表文案位于 docs/DIRECTORY_SUBMISSIONS.md。

仓库还包含用于验证此组织托管仓库归属权的 glama.json,供 Glama 使用。

开发

安装依赖并运行验证:

npm.cmd install
npm.cmd test
npm.cmd run check
npm.cmd run pack:check

手动测试 MCP 进程:

npm.cmd run mcp

正常运行的服务会打印:

ModelShortlist MCP server running on stdio

随后等待 MCP 客户端。按 Ctrl+C 停止服务。

欢迎贡献。请参阅 CONTRIBUTING.md。

许可证

MIT。请参阅 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。