Licensefile

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

依赖许可证与署名清单,并标记出copyleft及未知许可证冲突。

AI 翻译由 AI 模型根据下方的原文描述翻译,可能有误。

原文描述

Dependency license and attribution inventory, with copyleft and unknown-license conflicts flagged.

已验证STDIO仅桌面商业与电商

概览

Licensefile 的本地 MCP 服务;无需登录;STDIO。

暂无 AI 概览:以下信息来自注册中心条目和服务本身。

安装

在 SourceWeft 中

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

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

其他 MCP 客户端

参照 仓库 中的启动说明。

README

licensefile

A repository can only ship what its dependencies' licenses allow. licensefile takes the repository's own license and a list of its dependencies, and turns that into a single catalog you can act on:

  • Inventory — one entry per dependency, sorted by name, with the license normalized (trimmed; a missing or empty license becomes unknown) and absent version, author, or homepage carried as null
  • Counts by license — how many dependencies carry each normalized license, sorted by count descending with ties broken by license name
  • Attribution lines — one line per dependency in name order, shaped name@version — license — author, where a missing version reads unknown and the author segment is left off entirely when no author was supplied
  • Flags — at most one per dependency, from the first matching rule: an unknown license warns; a strong-copyleft license whose family (GPL vs AGPL) differs from the repository license's family is an error; a weak-copyleft license in a permissive-licensed repository draws a notice; and a license belonging to none of the known classes, when it is not the repository's own license, is reported as unclassified
  • Verdict — blocked when any flag is an error, otherwise ok

License classes are the exact, case-sensitive SPDX ids in the spec: a permissive set (MIT, ISC, the BSD clauses, Apache-2.0, and friends), a strong-copyleft set (the GPL and AGPL variants), and a weak-copyleft set (the LGPL variants, MPL-2.0, EPL, EUPL-1.2). Everything is computed locally from the inputs: no network, no configuration, and no license database is consulted. Invalid input — a missing repository license, an empty dependency list, a dependency without a name, a duplicate name, or a wrongly typed field — is rejected with an error naming the offending path, and no partial catalog is produced.

CLI

bash
npx @reneturcios/licensefile catalog --input args.jsonnpx @reneturcios/licensefile --version

args.json contains the full arguments object:

json
{  "repo_license": "MIT",  "dependencies": [    { "name": "alpha", "version": "1.0.0", "license": "MIT", "author": "Ann Example" },    { "name": "beta", "version": "0.2", "license": "LGPL-2.1-only" },    { "name": "gamma", "license": "GPL-3.0-only" }  ]}

version, license, author, and homepage are optional per dependency. The catalog is printed as JSON.

Exit codes: 0 on success, 1 on a runtime error (including an unreadable or invalid input file, or invalid input), 2 on a usage error.

MCP server

bash
npx -y @reneturcios/licensefile mcp

MCP client config:

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

Tools

  • catalog_licenses — Build a dependency license and attribution inventory for a repository.

    • repo_license (string, required) — SPDX id of the repository's own license, e.g. MIT
    • dependencies (array, required, at least one) — dependencies as {name, version?, license?, author?, homepage?} objects; name is required and must be unique

    Returns {repo_license, dependency_count, inventory, by_license, flags, attribution_lines, verdict}.

Docker

bash
docker run -i ghcr.io/cloudcorprecords/licensefiledocker run --rm -v "$PWD:/w" ghcr.io/cloudcorprecords/licensefile catalog --input /w/args.json

Development

bash
npm installnpm run build   # tsc -> dist/npm test        # tsx --test test/*.test.ts (pure local, no network)npm run dev     # run the CLI from source

License

MIT — Copyright (c) 2026 Rene Turcios

来源:README.md,提交 9c873e3

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

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

评分

已满足适用检查项的 50%

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

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

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

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分