关于 lastseen mortality
lastseen mortality 为 npm 包、GitHub Actions、MCP 服务和 Docker 镜像提供带日期的状态观测。开发者和 Agent 可通过 API 或轻量级 stdio MCP 服务查询单个依赖、组织或清单;结果是观测记录,而非建议。
主要功能
- 01带日期的依赖状态观测
- 02查询实体与 GitHub 组织
- 03批量检查清单中的依赖
- 04可选的实时 GitHub 查询
- 05无需 API 密钥且无遥测
适用场景
- 01在 CI 构建中检查依赖状态
- 02查看组织内组件的生命周期
- 03审查工作流列出的依赖
MCP 相关
stdio MCP 服务封装 lastseen.dev 的免费 HTTP API,并提供实体、组织和清单查询工具。它无需 API 密钥,使用 Python 标准库。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
4收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| live | boolean | 否 | 可选附加一次实时 GitHub 读取(不存在 ≠ 已消失);默认为 false |
| slug | string | 是 | owner/repo,例如 'actions/checkout' |
详细介绍
lastseen-mcp
mcp-name: dev.lastseen/mortality
这个依赖已经失效了吗? lastseen.dev 发布的带日期观测结果,说明 npm 包、GitHub Action、MCP 服务或 Docker 镜像处于活跃、休眠、弃用、已归档或已删除状态。免费、无需 API 密钥、零遥测。
有两种使用方式,它们都基于相同的日期数据回答同一个问题:
- 直接调用免费 HTTP API——持久、适合机器调用的方式(见下文)。维护依赖列表的 Agent 可以在每次构建时重新检查。
- 将其作为 MCP 服务运行——通过轻量的 stdio 封装调用同一 API,供 MCP 客户端使用。
1. 免费 API(直接调用)
无需密钥,无需注册。匿名 GET,每分钟 60 次请求。每个响应都是一条带日期及来源的观测结果——不是评分,也不是建议。基础 URL 为 https://lastseen.dev。
# one component (owner/repo)
curl https://lastseen.dev/api/v1/entity/actions/checkout
# everything held under a GitHub owner/org
curl https://lastseen.dev/api/v1/org/actions
# a whole manifest at once (names-only body)
curl -X POST https://lastseen.dev/api/v1/manifest \
-H 'content-type: application/json' \
-d '{"channel":"api","components":[{"name":"actions/checkout","kind":"github-action"}]}'
# self-describing API docs (JSON)
curl https://lastseen.dev/api/v1/docs
单个组件的响应包含 latest_state、其背后的带日期 series、source_of_record 以及区间删失说明——足以让你自行对照 GitHub 重新核查任何判定。**这是定期检查的方式:**将 GET /api/v1/entity/{owner}/{repo} 接入 CI,这样失效依赖会在引入它的那次构建中显现,而不是几个月后才发现。
约定
- **查询结果,不提供建议。**每个答案都是一条带日期及来源的观测结果。绝不说“改用 X”,不提供综合评分、不按偏好排序,也不使用表达紧迫性的措辞。
- **遇到问题时不误报。**未知或伪造的目标会返回明确的
not_observed,绝不伪造结果。网络或存储错误会导致结果降级(稍后重试),绝不会被解读为“已失效”。 - **无记录 ≠ 已删除。**没有记录表示“尚未检查”,绝不表示“已删除”。只有权威 HTTP 404 才代表删除。
状态
alive(距上次提交 ≤180 天) · dormant(180–365 天) · abandoned(>365 天) ·
archived(仓库已归档) · deleted(权威 HTTP 404) · eol(已声明生命周期结束) ·
unknown-stale(判定所依据的观测已超过 180 天,且未重新验证——不声明任何状态;不代表已失效) · not_observed(403 / 429 / 超时 / 未收录——不代表已失效)。
2. 将其作为 MCP 服务运行
这是一个基于上述 API 的 纯标准库 stdio 封装——无需 mcp 包、requests、FastAPI/Starlette,也没有任何可能与宿主应用冲突的依赖。它通过 stdio 使用 JSON-RPC 2.0,并通过 urllib 调用免费 API。
安装
pipx install lastseen-mcp
# or run without installing:
uvx lastseen-mcp
需要 Python ≥ 3.10。无依赖。
添加到 MCP 客户端
{
"mcpServers": {
"lastseen": { "command": "lastseen-mcp" }
}
}
(如果使用 uvx,请设置 "command": "uvx", "args": ["lastseen-mcp"]。)
工具
| 工具 | 功能 |
|---|---|
check_entity(slug, live?) | 查询一个 owner/repo 的带日期存续序列(例如 actions/checkout)。live=true 会附加实时 GitHub 读取结果(无记录 ≠ 已删除)。 |
check_org(name) | 查询 GitHub 所有者或组织下每个已收录组件的带日期状态。 |
check_manifest(paste) | 粘贴 GitHub Actions 工作流(uses: 引用)或 owner/repo 行;获取每个组件的带日期状态。未收录的组件为 not_observed。 |
survival_profile(category) | 类别排名——免费 API 不提供;会返回明确的不支持结果,并指向按实体、组织或清单查询的方式以及 CC-BY 数据转储。 |
check_manifest 每次调用最多查询 30 个解析出的组件(受免费版速率限制);其余组件会计入 n_truncated。
隐私
零遥测。客户端和 API 不存储任何内容,也不会传输任何关于你、你的组织或你所查询目标的标识信息——仅发送匿名 GET 请求。
许可
- 代码: MIT(参见
LICENSE)。 - 数据: 死亡率/生存率观测数据由 lastseen.dev 根据 CC-BY-4.0 发布(需注明出处)。两种许可彼此独立。
链接
- 服务与数据:https://lastseen.dev
- API 文档(自描述 JSON):https://lastseen.dev/api/v1/docs
- MCP 注册表条目:
dev.lastseen/mortality
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。