ModelShortlist

io.github.AgenticArtists由 GitHub 帳號 AgenticArtists 發布v0.2.4更新於 Oct 24, 2026

Local BYOK MCP for AI model shortlisting using OpenRouter + Artificial Analysis.

發布方自己的服務:model.tools — Zero-Auth Agent Utilities

已驗證STDIO僅桌面資料與分析AI 與機器學習

概覽

AI 產生的概覽

本機自帶金鑰的 MCP 伺服器,為助理提供 OpenRouter 模型目錄與 Artificial Analysis 基準資料,用來篩選 AI 模型。

可以做什麼
依工作負載推薦模型,可設定工具呼叫、最小上下文、價格上限、建立者篩選與選用 ZDR 等硬性條件,依據完整 OpenRouter 目錄及可可靠對應的 Artificial Analysis 基準。比較指定的一組 OpenRouter 模型 ID,提供目錄資訊、ZDR 可用性、基準資料與資料新鮮度。回報資料來源狀態、目錄與 ZDR 涵蓋範圍、模型對應涵蓋範圍、歧義或未對應紀錄、快取狀態與限流中繼資料。對過期或無法取得的資料來源提出警示,而不是把舊資料當成最新資料。
適用情境
適合在為程式開發、代理式或資料擷取類工作負載挑選 AI 模型時,集中取得成本、上下文、工具呼叫與基準證據。也適合在隱私要求零資料保留(ZDR)端點時,確認哪些模型提供這類端點。
執行需求
透過 npx 以 stdio 在本機執行,需要 Node.js 20+ 與支援 MCP 的用戶端。需要 Artificial Analysis API 金鑰(ARTIFICIAL_ANALYSIS_API_KEY)與 OpenRouter API 金鑰(OPENROUTER_API_KEY)。需要連線這兩個上游服務的網路;不需帳號或託管後端。
安裝前請注意
需要兩個第三方 API 金鑰 ARTIFICIAL_ANALYSIS_API_KEY 與 OPENROUTER_API_KEY,本機程序用它們直接呼叫相應服務,須遵守上游條款與用量限制。工具據稱唯讀且不含遙測,但請求仍會送往 OpenRouter 與 Artificial Analysis。它只做推薦、不轉送推論,因此實際推論請求仍需再次強制 ZDR。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 ModelShortlist,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

ModelShortlist

[CI] [npm] [MIT License] [Official MCP Registry]

Stop guessing which AI model to use.

ModelShortlist is a local, bring-your-own-key MCP server that gives your AI assistant model-selection evidence from the full OpenRouter model catalog plus Artificial Analysis benchmarks. It refreshes upstream evidence on demand/cache expiry and explicitly reports when any source is stale or unavailable. Zero Data Retention (ZDR) is an optional hard constraint only when you explicitly require it.

No hosted ModelShortlist backend. No account. No telemetry in the MCP. Your API keys stay with the local MCP process and are used to call the upstream services directly.

Why ModelShortlist

Model choice is no longer just "which model has the highest benchmark score?" The right answer depends on the workload, capabilities, cost, context, availability, and privacy requirements you actually have.

ModelShortlist helps your chat agent reason over:

  • the OpenRouter model catalog
  • tool/function-calling support
  • context and completion limits
  • OpenRouter input/output pricing, including tiered pricing when OpenRouter publishes it
  • ZDR endpoint availability when privacy requires it
  • ZDR endpoint latency, throughput, uptime, and provider options when applicable
  • Artificial Analysis Intelligence Index
  • Artificial Analysis Coding Index
  • Artificial Analysis Agentic Index
  • Artificial Analysis pricing and median performance
  • explicit source freshness and degraded-state warnings

By default, ZDR is not an eligibility requirement. ModelShortlist considers the full OpenRouter catalog. If you explicitly require ZDR, it switches to OpenRouter ZDR endpoint evidence and requires hard constraints to be satisfied by the same real endpoint.

The host AI makes the final recommendation based on your use case. ModelShortlist deliberately does not impose one universal ranking formula.

Fastest install

Use the browser-only configurator:

Install ModelShortlist →

It generates client-specific config or commands for:

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

You paste your own Artificial Analysis and OpenRouter keys into the configurator. They are used in your browser to generate configuration text and are not sent to ModelShortlist or a ModelShortlist backend.

Requirements:

  • Node.js 20+
  • an Artificial Analysis API key
  • an OpenRouter API key
  • an MCP-capable client

Generic npm config

Most local stdio MCP clients, including Claude Desktop, Hermes Desktop, and Cursor, can launch ModelShortlist directly with npx:

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

On Windows GUI clients where npx is not available on the app's PATH, use npx.cmd or use the guided clone setup below.

Guided local setup

This option stores API keys in a local gitignored .env.local file and prints ready-to-paste MCP config using absolute executable paths.

Windows

powershell
git clone https://github.com/AgenticArtists/ModelShortlist.gitcd ModelShortlistnpm.cmd installnpm.cmd run setup

macOS / Linux

bash
git clone https://github.com/AgenticArtists/ModelShortlist.gitcd ModelShortlistnpm installnpm run setup

The setup command:

  • asks for both API keys with masked input
  • stores them only in the gitignored .env.local
  • prints ready-to-paste Claude Desktop / Hermes Desktop / Cursor and VS Code / Copilot MCP configs
  • uses the exact Node executable that ran setup, avoiding many GUI-client PATH problems

If PowerShell blocks npm.ps1, use npm.cmd; you do not need to change your execution policy.

More setup details are in LOCAL_MCP.md.

Example prompts

What's the cheapest model I'd trust with repetitive coding subagents? Tool use is required.

I need 200k context and tool use. What are my best current options?

I need 200k context, tool use, and ZDR. What are my best current options?

Is the premium frontier model actually worth the price for this coding workload?

Best model for extracting structured data from thousands of documents while keeping output cost low?

I need maximum autonomous coding performance under $10 per million output tokens. What should I use?

MCP tools

recommend_models

The primary workload-specific recommendation tool. It accepts hard constraints such as:

  • ZDR required or not required
  • tool calling required
  • minimum context
  • maximum input/output price
  • creator/model filter

When ZDR is not required, it considers the full OpenRouter catalog. When ZDR is explicitly required, it filters against ZDR endpoint evidence and verifies hard constraints against the same endpoint.

Artificial Analysis benchmark data is attached only when the model can be confidently reconciled. Models without a confident benchmark match remain eligible with missing benchmark fields rather than being silently removed.

Strict price ceilings account conservatively for all pricing tiers that OpenRouter publishes for a model or endpoint rather than assuming the cheapest/base tier applies universally.

compare_models

Returns OpenRouter catalog information, ZDR availability, Artificial Analysis benchmark information when available, and source freshness for a specified shortlist of OpenRouter model IDs.

modelshortlist_status

Shows source freshness, OpenRouter catalog coverage, ZDR coverage, model matching coverage, ambiguous/unmatched records, cache state, and Artificial Analysis rate-limit metadata.

Freshness and degraded operation

ModelShortlist does not silently call stale evidence “current.” Tool responses expose source-level status:

  • fresh: the latest attempted refresh succeeded.
  • stale: the latest refresh failed and an earlier in-process copy is being used with a warning.
  • unavailable: the source failed and there is no cached copy in the current process.

Artificial Analysis can fail independently without removing OpenRouter models; benchmark fields remain missing rather than being treated as zero or poor performance. OpenRouter ZDR metadata can also be unavailable for ordinary requests because ZDR is optional.

The OpenRouter model catalog is foundational. If it is unavailable with no cached copy, or returns an empty catalog and no earlier good copy exists, ModelShortlist refuses to produce a shortlist.

For a ZDR-required request, unavailable ZDR endpoint evidence fails closed rather than being interpreted as “no models qualify.” If cached ZDR evidence is stale, that limitation is surfaced and ZDR must still be enforced/revalidated on the actual OpenRouter inference request.

See docs/TROUBLESHOOTING.md for failure modes and client diagnostics.

How matching works

The Artificial Analysis Free API does not expose an OpenRouter model ID. ModelShortlist reconciles models conservatively:

  1. manually verified aliases
  2. exact normalized name/slug matches
  3. ambiguous or unmatched records remain without Artificial Analysis metrics

ModelShortlist does not fuzzy-match uncertain model variants. A missing benchmark is better than attaching benchmark data to the wrong model. An unmatched OpenRouter model can still be considered; it simply carries no Artificial Analysis metrics.

Regression coverage explicitly protects mini/base, pro/small/thinking, preview/stable, dated-release, duplicate-name, and broken-alias cases.

Verified aliases live in config/aliases.json.

ZDR is optional

ModelShortlist tracks which models have ZDR-capable OpenRouter endpoints, but it does not filter to them unless the user explicitly requires Zero Data Retention.

When ZDR is required, ModelShortlist checks endpoint-level eligibility and hard constraints. If you later call the selected model through OpenRouter, enforce ZDR again in the actual inference request:

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

When ZDR is not required, do not add provider.zdr=true merely because a model happens to support it.

Data flow

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

ModelShortlist recommends; it does not route inference or host models.

Data sources and attribution

ModelShortlist uses data accessed with your own API credentials.

ModelShortlist is not affiliated with or endorsed by Artificial Analysis or OpenRouter.

The ModelShortlist source code is licensed under the MIT License. Upstream data and APIs remain subject to their respective terms. ModelShortlist does not bundle or host the Artificial Analysis dataset; each user accesses upstream data with their own credentials and is responsible for complying with applicable terms.

See ATTRIBUTION.md for more detail.

Privacy and security

  • .env.local is gitignored for clone-based setup.
  • API keys are loaded locally by the MCP process.
  • the setup command masks API-key input.
  • the browser install configurator does not send entered keys to a ModelShortlist backend.
  • ModelShortlist does not operate a hosted backend.
  • MCP tools are read-only.
  • no telemetry is built into the MCP.
  • CI audits production MCP and website dependencies for high-severity vulnerabilities.
  • CI verifies that the npm tarball does not include .env.local, website source, tests, or GitHub workflow files.

If you discover a security issue, see SECURITY.md.

MCPB and releases

ModelShortlist builds a validated .mcpb bundle for local-server distribution channels. CI validates and packs the bundle. Tagged releases are configured to validate the package, run security checks, publish an unpublished npm version through npm trusted publishing, and attach the validated MCPB bundle to a GitHub Release.

See docs/MCPB_DISTRIBUTION.md and docs/DISTRIBUTION.md.

Discovery and directory maintainers

ModelShortlist is published to the Official MCP Registry. Reusable directory metadata and canonical listing copy live in docs/DIRECTORY_SUBMISSIONS.md.

The repository also includes glama.json for Glama ownership verification of this organization-hosted repository.

Development

Install dependencies and run validation:

powershell
npm.cmd installnpm.cmd testnpm.cmd run checknpm.cmd run pack:check

Test the MCP process manually:

powershell
npm.cmd run mcp

A healthy server prints:

text
ModelShortlist MCP server running on stdio

and waits for an MCP client. Press Ctrl+C to stop it.

Contributions are welcome. See CONTRIBUTING.md.

License

MIT. See LICENSE.

來源:README.md,提交 823b725

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

2
  1. v0.2.4最新Sep 17, 2026
  2. v0.2.3Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

其他 Model 整合