Modelpulse

io.github.CloudCorpRecords由 GitHub 账号 CloudCorpRecords 发布v0.1.0更新于 Nov 7, 2026

AI model releases, price changes, comparisons and cost estimates in one normalised feed.

已验证STDIO仅桌面数据与分析AI 与机器学习

概览

AI 生成的概览

本地桥接服务,把托管端的 AI 模型发布、价格变动、对比与成本估算信息流以 MCP 工具形式提供给助手。

可以做什么
  • 查询并筛选新模型发布、价格变动、API 变更与下线的变更信息流
  • 查看单个模型的定价、上下文长度、目录状态及历史价格
  • 按预算、上下文、能力与基准分数搜索和筛选模型
  • 并排对比两到六个模型,并估算每月美元与韩元成本
  • 获取当日热门模型、上升榜与近期变动摘要,并为已下线模型寻找替代方案
适用场景
适合在挑选 AI 模型、跟踪厂商发布与价格变化、估算 token 开销,或在模型下线后寻找替代品时使用。它是只读的信息源,不能用来实际运行模型。
运行要求
通过 npx(需 Node.js)或已发布的 Docker 镜像在本地运行;默认无需任何凭据。需要能访问上游托管的 MCP 端点,可用 AIWAVE_MCP_URL 覆盖。设置可选的 AIWAVE_API_KEY 时会作为 bearer 令牌发送。
安装前请注意
每次工具调用都会转发到第三方托管端点,查询内容会离开本机。可选的 AIWAVE_API_KEY 会以 Authorization bearer 头形式发往上游。成本数字来自上游估算,价格历史仅从上游开始记录时起算。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Modelpulse,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

modelpulse

modelpulse is a thin local bridge to AI Wave's hosted MCP server, a single normalised feed over the AI model landscape: vendor release notes, the Hugging Face and OpenRouter catalogues, GitHub and the LiteLLM price map, deduplicated per model. It tracks what changed, what things cost, and what to switch to when a model goes away.

The bridge keeps no catalogue and computes nothing. It serves the upstream server's tool list locally — exactly as captured from the live endpoint — and forwards each tool call upstream, returning the result untouched.

Tools

  • list_model_changes — the change feed: new releases, price changes, API changes and deprecations, each entry marked official or pending review. Optional: since (unix seconds; poll by feeding the returned latest back in), type (new_model, price_change, api_change, open_source_surge, deprecation), model (vendor slug, e.g. claude), and limit (1-100, default 20).
  • get_model — pricing, context length and catalogue status for one model (id, required: an OpenRouter id such as anthropic/claude-opus-5, or a Hugging Face repo id).
  • get_price_history — when one model's price changed and to what (id, required). History starts when AI Wave began recording, not when the model launched.
  • search_models — shortlist models by budget, context and capability, with benchmark scores next to prices. Optional: vendor, maxInputPrice (USD per 1M input tokens), minContext, minIntelligence, sortBy (a subject such as coding or math, or buzz for popularity), outputs, mode, accepts, and limit (1-50, default 10).
  • compare_models — two to six models side by side (ids, required): price, context, per-subject scores (untested subjects are marked, not zeroed), and the monthly cost at a volume (monthlyMillionTokens, default 10).
  • estimate_cost — one model's monthly bill in USD and KRW (id, required), from monthlyMillionTokens (default 10) and an inputShare split (0-1, default 0.75 input / 0.25 output).
  • get_today — today in one call: the top 5 models, climbers, pricing changes from the last 24h, and new listings from the last 7 days. No arguments.
  • find_replacement — what to switch to when a model is gone (id, required), ranked by closeness in measured performance, with score, price and context deltas. Candidates with less than half the original's context window are excluded.

Configuration

  • AIWAVE_MCP_URL (optional) — override the upstream endpoint. Defaults to https://aiwave.elopstudio.com/api/mcp. (The override hook is this rebuild's own labelled reconstruction.)
  • AIWAVE_API_KEY (optional) — when set, every upstream request carries Authorization: Bearer <key>. When it is unset, no auth header is sent; the capture this rebuild is based on was taken keyless. (This forwarding is this rebuild's own labelled reconstruction.)

Forwarding mechanics

On the first tool call the client opens a streamable HTTP session with the upstream: a JSON-RPC initialize request (protocolVersion 2025-03-26, clientInfo name modelpulse), then a notifications/initialized notification, then the tools/call request carrying the caller's arguments unchanged. When the upstream answers initialize with an Mcp-Session-Id header, that value rides on every later request of the session, which is reused for the life of the process. Replies may arrive as plain JSON or as server-sent events; both are read.

Successful upstream results pass through verbatim, including any isError flag the upstream sets. Failures — a JSON-RPC error, a non-2xx status, an unreadable response, or a request that cannot be completed — come back as an isError result whose text starts with modelpulse error: (this rendering is this rebuild's own labelled reconstruction).

CLI

Each tool is also a subcommand taking one JSON argument string (omit it for tools that take none):

bash
npx @reneturcios/modelpulse get_todaynpx @reneturcios/modelpulse get_model '{"id":"anthropic/claude-opus-5"}'npx @reneturcios/modelpulse compare_models '{"ids":["anthropic/claude-opus-5","openai/gpt-5.2"]}'npx @reneturcios/modelpulse --version

Exit codes: 0 on success, 1 on an isError result, 2 on a usage error.

MCP server

bash
npx -y @reneturcios/modelpulse mcp

MCP client config:

json
{  "mcpServers": {    "modelpulse": {      "command": "npx",      "args": ["-y", "@reneturcios/modelpulse", "mcp"]    }  }}

Docker

bash
docker run -i ghcr.io/cloudcorprecords/modelpulsedocker run --rm ghcr.io/cloudcorprecords/modelpulse --version

The container's default command is mcp, so the first form is a stdio MCP server; any other arguments reach the CLI normally.

Development

bash
npm installnpm run buildnpm testnpm run dev

The test suite runs entirely against a stubbed JSON-RPC upstream — no live network calls.

License

MIT — see LICENSE.

来源:README.md,提交 a3ae0f0

工具

8

list_model_changes

Changes across AI models: new releases, price changes, API changes and deprecations. Normalized from vendor release notes, Hugging Face, the OpenRouter catalog, GitHub and the LiteLLM price map, deduplicated per model, each marked official or pending review. Poll with `since` (unix seconds) and feed the returned `latest` back next time.

输入参数typelimitmodelsince

get_model

Pricing, context length and catalog status for one model. Accepts an OpenRouter id (anthropic/claude-opus-5) or a Hugging Face repo id.

输入参数id必填

get_price_history

Price history for one model: when the price changed and to what. The public catalog only exposes the current price, so this answers 'was this cheaper last month?'. Each entry holds until the next one. History starts when AI Wave began recording, not when the model launched.

输入参数id必填

search_models

Shortlist models by budget, context and capability, ranked by measured performance. Use this to answer 'which model should I use for X': it returns benchmark scores alongside price so the trade-off is visible in one call. Sort by a subject (math, coding, science, reading) to find a model good at one thing.

输入参数modelimitsortByvendoracceptsoutputsminContextmaxInputPriceminIntelligence

compare_models

Put two or more models side by side: price, context, benchmark scores per subject, and what each costs per month at a given volume. Use this instead of calling get_model repeatedly: it aligns the fields and marks which subjects a model has not been tested on, so a missing score is not read as a low one.

输入参数ids必填monthlyMillionTokens

estimate_cost

What one model costs per month at a given token volume, in USD and KRW. Token prices are per million and hard to reason about directly; this turns them into a monthly bill. Input and output are mixed 75/25 unless you pass your own split.

输入参数id必填inputSharemonthlyMillionTokens

get_today

Today in one call: the top 5 models, which ones climbed, whose pricing changed in the last 24h, and what was newly listed in the last 7 days. Use this instead of paging list_model_changes and re-deriving the summary: price changes are already collapsed to one per model, with the raw count kept.

无需输入参数。

find_replacement

What to switch to when a model is gone or you need a fallback. Ranked by closeness in measured performance, not by vendor or price: what you usually need to preserve first is the quality of the output. Candidates whose context window is less than half the original are excluded. Returns the score, price and context deltas so you can judge; we do not pick for you.

输入参数id必填

版本历史

1
  1. v0.1.0最新Nov 4, 2026

评分

已满足适用检查项的 90%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分
  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分