npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

koishi-plugin-mc-tools

v3.3.5

Published

我的世界(Minecraft)。可查询 MC 版本、服务器信息、玩家皮肤信息以及四大平台资源;支持管理服务器,功能梭哈

Readme

koishi-plugin-mc-tools

npm

我的世界(Minecraft)。可查询 MC 版本、服务器信息、玩家皮肤信息以及四大平台资源;支持管理服务器,功能梭哈

功能概述

  • 资源查询:查询 MCWiki、MCMOD 百科、CurseForge 和 Modrinth 上的内容
  • 链接解析:自动识别并解析聊天中的 Minecraft 相关资源链接
  • 玩家信息:查询玩家 UUID、皮肤、渲染 3D 模型和头像
  • 版本功能:查询最新版本,自动推送 Minecraft 版本更新通知
  • 状态功能:查询官方服务状态,自动推送服务状态变更通知
  • 服务器信息:查询 Java 版和基岩版服务器状态、玩家、模组和插件列表
  • 服务器交互:通过 WebSocket 连接服务器、执行 RCON 命令、发送游戏内消息
  • 通知功能:接收游戏内玩家加入、退出、聊天等事件并推送到群组

命令列表

基础命令

  • mc.ver - 查询 Minecraft 最新版本
  • mc.status - 查询 Minecraft 官方服务状态
  • mc.info [server] - 查询 Java 版服务器信息
    • mc.info.be [server] - 查询基岩版服务器信息

mc.info 命令支持在服务器映射群组(serverMaps)中配置对应群组,以直接查询对应服务器。

  • mc.player <username> - 查询玩家信息
    • mc.player.skin <username> - 获取玩家皮肤预览
      • -e, --elytra: 显示鞘翅
      • -c, --cape: 不显示披风
    • mc.player.head <username> - 获取玩家大头娃娃
    • mc.player.raw <username> - 获取玩家原始皮肤

渲染图像均支持使用 -b, --bg <color:string> 设置背景颜色 (HEX 格式)

服务器交互

所有命令均支持使用 -s, --server <serverId:number> 选项指定服务器 ID:

  • mc.server.say <message> - 发送聊天消息到服务器
  • mc.server.run <command> - 执行服务器命令
  • mc.server.bind [username] - 白名单管理
    • -r, --remove: 解绑指定用户名

资源查询

mc.search命令在不指定任何选项时,会使用提供的关键词,在 Modrinth 和 CurseForge 平台进行搜索。 如果指定了 -p 平台选项,则会覆盖默认配置,只使用指定的平台进行搜索。 结果会进行合并,并提供交互式选择,允许用户选择查看特定结果的详情,或翻页查看更多结果。 如果缓存中结果已全部显示完毕,会自动应用偏移量进行第二次搜索并继续显示内容。

  • mc.search <keyword> - 聚合搜索
    • -p <platform:string>: 指定平台 (modrinth, curseforge, mcmod, mcwiki, 可用逗号分隔)
    • -s <sort:string>: 排序方式 (视平台支持)
    • -v <version:string>: 支持版本
    • -l <loader:string>: 加载器
    • -k <count:number>: 跳过结果数
    • -t <type:string>: 资源类型 (视平台支持,例如: mod, modpack, resourcepack, shader等)
    • -mrf <facets:string>: [Modrinth] 高级过滤 (JSON 字符串,例如 [["versions:1.19.2"],["project_type:mod"]])
    • -cfo <order:string>: [CurseForge] 升降序 (asc/desc)
    • -ww <what:string>: [MCWiki] 搜索范围 (例如: title, text, nearmatch)
    • -mm: [MCMOD] 启用复杂搜索模式
    • -d: 下载模式 (视平台支持)

以下命令会使用提供的关键词,在对应平台进行搜索,并直接展示第一个搜索结果的详细信息。 支持 -s 截图选项,使用该选项会将输出结果的网页进行截图并逐条发送。这需要 Puppeteer 服务。

  • mc.mcwiki <keyword> - 查询 MCWiki 内容
    • -k <count:number>: 跳过结果数
    • -w <what:string>: 搜索范围 (例如: title, text, nearmatch)
    • -e: 精确匹配关键词
  • mc.mcmod <keyword> - 查询 MCMOD 百科
    • -t <type:string>: 资源类型 (例如: mod, modpack, item, post, author, user, community)
    • -m: 启用复杂搜索模式
    • -c: 获取社区信息 (用于模组和整合包)
    • -r: 获取关联模组信息 (用于模组和整合包)
    • -o: 获取额外信息 (用于教程和物品)
    • -p <page:number>: 指定结果页码

以下命令在支持 -s 截图选项的基础上,还支持 -d 下载选项,使用该选项会获取资源的文件列表。可以选择具体文件进行下载。

  • mc.modrinth <keyword> - 查询 Modrinth 资源
    • -t <type:string>: 资源类型 (例如: mod, modpack, resourcepack, shader)
    • -v <version:string>: 支持版本
    • -l <loader:string>: 加载器 (例如: fabric, forge, quilt)
    • -f <facets:string>: 高级过滤 (JSON 字符串或逗号分隔的 key:value 对)
    • -k <count:number>: 跳过结果数
    • -sort <sort:string>: 排序方式 (例如: relevance, downloads, follows, new, updated)
    • -dep: 显示依赖关系
  • mc.curseforge <keyword> - 查询 CurseForge 资源
    • -t <type:string>: 资源类型 (例如: mod, modpack, resourcepack, shader等)
    • -v <version:string>: 支持版本
    • -l <loader:string>: 加载器 (例如: forge, fabric, quilt, neoforge等)
    • -k <count:number>: 跳过结果数

链接解析

支持自动识别和解析聊天消息中的以下 Minecraft 相关资源链接:

  • Modrinth 链接:modrinth.com/mod/project-id
  • CurseForge 链接:curseforge.com/minecraft/mc-mods/project-name
  • MCMOD 百科 链接:mcmod.cn/class/123.html
  • Minecraft Wiki 链接:minecraft.wiki/w/Page_Name

当用户在群聊中发送这些链接时,插件会自动获取并展示对应资源的详细信息。

配置说明

基础配置

  • 查询开关配置
    • linkParserEnabled: 启用链接解析 ('disable'/'text'/'shot')
      • disable: 禁用链接解析功能
      • text: 启用链接解析,以文本形式返回结果
      • shot: 启用链接解析,以截图形式返回结果(需要 Puppeteer 服务)
    • mcwikiEnabled: 启用 MC Wiki 查询 (布尔值)
    • modrinthEnabled: 启用 Modrinth 查询 (布尔值)
    • mcmodEnabled: 启用 MCMOD 查询 (布尔值或API字符串)
    • curseforgeEnabled: 启用 CurseForge 查询 (布尔值或API密钥字符串)

用于控制各个资源查询功能的开启或关闭。 CurseForge API 密钥需自行申请,也可加入 QQ 群 855571375 获取作者申请的 Key 进行使用。 MC 百科内容处理调用了作者自行编写的 API,由于使用了 CloudFlare Worker,国内访问可能会受影响。

  • 资源查询配置
    • useForward: 启用合并转发 (布尔值)
    • useScreenshot: 启用网页截图 (布尔值)
    • useFallback: 启用发送回退 (布尔值)
    • maxParagraphs: 详情段数限制 (数字)
    • maxDescLength: 每段字数限制 (数字)

用于调整资源查询命令的行为和显示效果。 合并转发功能仅在 onebot 平台可用,其余平台会自动以纯文本形式发送,网页截图功能需要 Puppeteer 服务支持。 maxParagraphsmaxDescLength 默认限制为合并转发所允许的最大长度,一般情况下无需调整。

  • 版本&玩家查询配置
    • playerEnabled: 启用玩家信息查询 (布尔值)
    • verEnabled: 启用最新版本查询 (布尔值)
    • updInterval: 更新检查间隔(分钟) (数字)
    • noticeTargets: 版本更新推送目标 (对象数组)
      • platform: 平台 ID (字符串)
      • channelId: 频道 ID (字符串)
      • type: 推送类型 ('release'/'snapshot'/'both')

配置是否启用玩家信息查询和最新版本查询功能。 可以设置版本更新的检查频率和自动推送通知的目标群组或频道。

  • 服务状态通知配置
    • statusUpdInterval: 状态检查间隔(分钟) (数字)
    • statusNoticeTargets: 服务状态变更推送目标 (对象数组)
      • platform: 平台 ID (字符串)
      • channelId: 频道 ID (字符串)

配置服务状态变更的检查频率和自动推送通知的目标群组或频道。

  • 服务器查询配置
    • infoEnabled: 启用服务器查询 (布尔值)
    • serverApis: 服务器查询 API (对象数组)
      • type: API 类型 ('java'/'bedrock')
      • url: API URL (字符串, 使用 ${address} 指代地址)
    • serverTemplate: 服务器信息模板 (字符串)

用于控制服务器信息查询功能。可以自定义查询结果的显示格式。 已预先添加多个查询 API,一般情况下无需另行配置。

信息模板变量

服务器信息模板支持以下变量:

  • {ip} - 服务器IP地址
  • {srv} - SRV记录信息
  • {icon} - 服务器图标
  • {motd} - 服务器描述信息
  • {version} - 服务器版本
  • {online} - 在线玩家数
  • {max} - 最大玩家数
  • {ping} - 延迟时间
  • {software} - 服务器软件
  • {edition} - 服务器版本类型(Java/基岩/教育版)
  • {gamemode} - 游戏模式
  • {eulablock} - EULA封禁状态
  • {serverid} - 服务器ID
  • {playerlist:n} - 在线玩家列表(限制显示n个)
  • {playercount} - 在线玩家总数
  • {pluginlist:n} - 插件列表(限制显示n个)
  • {plugincount} - 插件总数
  • {modlist:n} - 模组列表(限制显示n个)
  • {modcount} - 模组总数

同一行内所有变量均为空时会跳过该行显示

服务器连接配置

  • bindEnabled: 启用白名单管理 (布尔值)
  • 服务器映射群组 (serverMaps):设置群组与服务器的关联 (对象数组)
    • serverId: 服务器 ID (数字, 必填)
    • platform: 平台 ID (字符串)
    • channelId: 频道 ID (字符串)
    • serverAddress: 服务器地址 (字符串)

允许将特定群组关联特定 Minecraft 服务器。这样在对应群组中使用相关命令时,可无需手动指定服务器 ID 或地址。 如果开启 RCON 和bindEnabled选项,可支持用户自行绑定白名单,绑定列表会以文件形式保存在data目录下。

  • RCON配置 (rconServers):配置RCON连接参数 (对象数组)
    • id: 服务器 ID (数字, 必填)
    • rconAddress: RCON地址 (字符串, 如 localhost:25575)
    • rconPassword: RCON密码 (字符串)

RCON 是一种允许远程执行服务器命令的协议。 在此处配置服务器的 RCON 地址和密码后,可以使用命令通过 RCON 与服务器交互。

注意事项

使用 Docker 部署时可能会出现渲染问题字体问题。 原因:koishijs/koishi 镜像中的 Chromium 不支持 WebGL,需要安装 chromium-swiftshader。 如果插件出现皮肤渲染失败或仅显示背景,截图文字显示异常等情况,可按照以下步骤进行解决:

解决方案

# 删除原有 Chromium(latest-lite 镜像用户可跳过此步)
docker exec -it <容器ID> apk del chromium

# 配置国内镜像源(可选)
docker exec -it <容器ID> sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories

# 安装 chromium-swiftshader
docker exec -it <容器ID> apk update
docker exec -it <容器ID> apk add chromium-swiftshader

# 安装基础字体
docker exec -it <容器ID> apk add ttf-dejavu fontconfig

# 安装中文字体
docker exec -it <容器ID> wget https://noto-website-2.storage.googleapis.com/pkgs/NotoSansCJKsc-hinted.zip -P /tmp
docker exec -it <容器ID> unzip /tmp/NotoSansCJKsc-hinted.zip -d /usr/share/fonts/NotoSansCJK
docker exec -it <容器ID> fc-cache -fv
docker exec -it <容器ID> rm -f /tmp/NotoSansCJKsc-hinted.zip

完成上述步骤后重启 Puppeteer 插件即可正常使用,无需添加 --disable-gpu 参数