Errorcatalog

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

编目代码库抛出的每一个错误,以及每条消息是否有文档记录。

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

原文描述

Catalogue every error a codebase throws, and whether each message is documented.

已验证STDIO仅桌面

概览

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

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

安装

在 SourceWeft 中

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

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

其他 MCP 客户端

参照 仓库 中的启动说明。

README

errorcatalog

Every error message thrown in a codebase, catalogued — and, when you supply the documentation, a note of whether each message is documented.

errorcatalog scans source text line by line for throw statements of the form throw new <Name>Error(...), where the type name ends in Error (Error, TypeError, RangeError, or a custom type such as FooError). For each throw site it records the file, the 1-based line, the error type, and:

  • literal — the first argument is a double-quoted, single-quoted, or backtick string with no ${ in it. The message is recorded exactly as written, escape sequences included — nothing is unescaped.
  • dynamic — the first argument is anything else: a template containing ${, an identifier, a call, a concatenation, or a literal that does not close on the same line. The message is null.
  • no message — throw new <Name>Error() with no argument at all. The message is null and the entry carries the note no message argument.

Throws that are not new <Name>Error(...) — a bare string, a non-Error constructor, a variable — are not catalogued. Duplicate throws stay as separate entries: the catalog is per throw site.

When documentation texts are supplied, each literal message is checked verbatim against them: documented is true when the message appears as a substring of some supplied doc, false when it does not, and null for dynamic and no-message entries — and for every entry when no docs are supplied, in which case the result reports docs_provided: false and the documented / undocumented counts are both 0.

Known limitation, by design: only the first line of a throw statement is inspected, so a literal whose argument list spans lines is catalogued as dynamic. The analysis is pure local text work: no network, no filesystem access in the core.

CLI

bash
npx @reneturcios/errorcatalog catalog --sources sources.json --docs docs.jsonnpx @reneturcios/errorcatalog --version

sources.json and docs.json each contain a JSON array of {"path": "src/app.ts", "content": "..."} objects. The --docs flag is optional. The catalog is printed as JSON.

Exit codes: 0 on success, 1 on a runtime error (including an unreadable or invalid JSON file, or a malformed entry — the error names the offending path, e.g. sources[0].content is required), 2 on a usage error.

MCP server

bash
npx -y @reneturcios/errorcatalog mcp

MCP client config:

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

Tools

  • catalog_errors — Catalogue every error thrown in the given sources, and whether each literal message is documented.

    • sources (array, required, at least 1) — source files as {path, content} objects
    • docs (array, optional) — documentation texts as {path, content} objects; literal messages are checked verbatim against them

    Returns {errors, counts, docs_provided}, where each error is {path, line, error_type, message, dynamic, documented} (plus note on no-message entries) and counts is {total, literal, dynamic, no_message, documented, undocumented}.

Docker

bash
docker run -i ghcr.io/cloudcorprecords/errorcatalogdocker run --rm -v "$PWD:/w" ghcr.io/cloudcorprecords/errorcatalog catalog --sources /w/sources.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,提交 b2d1052

工具

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

版本历史

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

评分

已满足适用检查项的 50%

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

  • 近 30 天内可连通25 分

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

  • 已声明认证方式10 分

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

  • 已列出工具15 分

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

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