关于 Dependency Freshness Checker
Dependency Freshness Checker 是面向编码 Agent 的 MCP 服务,可查询 npm 和 PyPI 公共注册表。它返回版本状态、弃用信息,以及指定版本到最新版本之间带日期和引用来源的变更。
主要功能
- 01最新版本与发布日期
- 02弃用状态和落后版本数
- 03带日期的变更摘要
- 04字段级来源引用
- 05批量检查软件包
适用场景
- 01生成代码前检查依赖
- 02升级前审查软件包更新
- 03确认指定版本是否已弃用
MCP 相关
它向 MCP 客户端提供 `check_dependency_freshness(packages)` 工具。可通过 Apify 托管 MCP 服务、自身的 Streamable-HTTP 端点或本地 stdio 调用。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
1收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| packages | array | 是 | 要检查的软件包。各项格式:{ ecosystem: "npm"|"pypi", name, currentVersion? }。currentVersion 是你假定或准备使用的版本——提供此值即可获取“落后 N 个版本/自该版本以来的变更”差异。 |
详细介绍
依赖新鲜度检查器——你的 npm 或 PyPI 依赖是否过时?为 AI Agent 提供最新版本、弃用状态和破坏性变更的 MCP
依赖新鲜度检查器可告知任何 AI 编码 Agent,npm 或 PyPI 软件包是否过时(已过期),并提供可佐证的事实:最新版本、发布日期、弃用状态、落后版本数,以及带日期的**“自你所用版本以来的变更”**破坏性变更差异。它原生支持 MCP,只读取公开注册表和 GitHub 发布信息(不抓取网页,没有服务条款风险),并采用按事件付费定价,适合 Agent 按需使用。
依赖新鲜度检查器能做什么?
提供任意 npm 或 PyPI 软件包(也可选填 Agent 所依据的版本),依赖新鲜度检查器会优先提供带引用来源的结果:
- 最新发布版本及其发布日期;
- 软件包(或你所依据的版本)是否已弃用;
- 你落后了多少个版本;以及
- 带日期和引用来源的
changeSummary[],说明你的版本与最新版本之间的变更。
每个字段都附有来源 URL 和访问日期,因此 Agent 可以信赖并引用这些结果。
为什么要检查 npm 和 PyPI 依赖的新鲜度?
LLM 编码 Agent 没有时间感知能力:它们的训练数据是固定的,因此会生成 70–90% 使用已弃用软件包的代码。编码 Agent 是数量最多的 Agent 群体,而且都存在这一盲点。依赖新鲜度检查器可在调用时解决训练数据截止时间带来的问题。它属于已有成熟需求的“面向 Agent 的新鲜度检查”领域,但范围更专注,合规风险也更低——它只读取公开的 npm、PyPI 和 GitHub 发布信息,因此不会与第一方 RAG 浏览器或获得资金支持的现有服务竞争。
如何使用依赖新鲜度检查器
传入一小组软件包。默认值经过精简,确保首次运行成本低、速度快且能成功:
{
"packages": [
{ "ecosystem": "npm", "name": "zod", "currentVersion": "3.22.0" },
{ "ecosystem": "pypi", "name": "fastapi" }
]
}
currentVersion 为可选参数——省略即可只询问“最新版本是什么?”。完整架构请参阅
.actor/input_schema.json。
输出——带日期和引用来源的新鲜度结果
每个结果都包含 isOutdated、versionsBehind、latest + latestPublishedAt、带日期的
changeSummary[],以及字段级的 citations[]。批量运行和 MCP 工具会返回相同的数据结构,Agent 和仪表板可以使用统一格式。
将依赖新鲜度检查器用作面向 AI Agent 的 MCP 工具
此 Actor 提供一个 MCP 工具:check_dependency_freshness(packages)。有三种调用方式(相关机制的引用说明见 docs/research/50-mcp.md):
-
A — 托管服务,无需设置。 每个公开的 Apify Actor 都可通过 Apify 的托管 MCP 服务调用,地址为
https://mcp.apify.com——无需额外配置。 -
B — 将 Actor 用作自己的 MCP 服务(Standby)。 已部署的 Actor 会在其稳定 URL 的
/mcp路径上提供 Streamable-HTTP MCP 端点:{ "mcpServers": { "dependency-freshness": { "url": "https://<user>--dependency-freshness-mcp.apify.actor/mcp", "headers": { "Authorization": "Bearer <APIFY_TOKEN>" } } } } -
C — 本地 stdio(开发 / MCP Inspector)。 构建后,将任意 MCP 客户端指向编译后的入口文件:
{ "mcpServers": { "dependency-freshness": { "command": "node", "args": ["/abs/path/dependency-freshness-mcp/dist/mcp/stdio.js"], "env": { "GITHUB_TOKEN": "ghp_… (optional, raises GitHub rate limit)" } } } }使用
npx @modelcontextprotocol/inspector node dist/mcp/stdio.js在本地检查。
定价
依赖新鲜度检查器采用按事件付费定价,适合 Agent 按需使用:每次运行启动收取少量固定费用,另加每检查一个软件包 $0.005(每 1,000 个 $5)——符合 Apify 建议的每 1,000 个结果 $1–10 的价格区间。你只需为实际检查的软件包付费。
常见问题
它会抓取网站吗? 不会。它只读取公开注册表 API 和 GitHub 发布信息——不抓取网页,也没有服务条款风险。
支持哪些生态系统? 目前支持 npm 和 PyPI。
我需要 GitHub 令牌吗? 不需要——令牌是可选的,只会提高 GitHub 速率限制,以支持更大批量的检查。
Agent 可以直接调用它吗? 可以——这正是它的用途。使用 check_dependency_freshness MCP 工具(上文的选项 A 或 B)。
其他 Actor
更多原生面向 Agent 的数据 Actor 即将登陆 Apify Store。关注作者主页,及时了解新的 Agent 数据新鲜度工具。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。