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 🙏

© 2026 – Pkg Stats / Ryan Hefner

anov-dev-copilot-mcp

v0.14.0

Published

MCP Server for ANOV-DEV Copilot

Readme

anov-dev-copilot-mcp

anov-dev-copilot-mcpANOV-DEV Copilot 的核心引擎层,它是一个完全符合 Model Context Protocol (MCP) 标准的服务端实现。

它的主要作用是作为“桥梁”挂载在 AI Agent(如 Antigravity、Claude Code、Cursor)上,赋予 AI 主动创建云端项目、获取工程模板、解压与校验工程、分析布局防重叠、解析 MasterGo 设计稿 1:1 高保真还原以及将矢量组件注入 Vue 3 代码落盘的完整动态能力。


环境变量与配置

启动 MCP 服务需要通过环境变量或编辑器 MCP 配置传入鉴权信息。推荐使用脚手架 CLI 一键注入,或在编辑器配置的 env 字段中显式配置:

| 变量名 | 必填 | 说明 | | :--- | :---: | :--- | | API_BASE_URL | 是 | ANOV 接口服务的 Base URL(如 http://192.168.11.164:9999https://api.anov.dev) | | ACCESS_TICKET | 是 | 调用 ANOV 平台接口的访问令牌(Access Ticket) | | MG_MCP_TOKEN | 否 | MasterGo 访问令牌(用于 MasterGo 设计稿 1:1 还原与矢量图层提取) |

[!TIP] 如何获取 MasterGo 访问令牌 (MG_MCP_TOKEN)

  1. 登录 mastergo.com
  2. 点击右上角个人头像,进入「个人设置」→「安全设置」→「个人访问令牌」
  3. 点击「生成新令牌」并复制即可。

注:若本地已有 MasterGo DSL 文件,调用 anov-mastergo-restore 时指定 dslPath 即可离线还原,无需配置 Token。


提供的工具 (Tools)

该 MCP Server 向 AI 注册了以下 9 个核心工具

1. anov-list-versions

列出 ANOV-DEV 框架的最新可用版本列表。

  • 参数:无
  • 返回:最新框架的 nameversion 信息(JSON)
  • 接口GET /console/v1/devs/demos/v1

2. anov-create-project

在 ANOV 云端创建一个新的可视化大屏项目。

  • 参数

    | 参数名 | 类型 | 必填 | 说明 | | :--- | :--- | :---: | :--- | | screenName | string | 是 | 大屏名称(2-50 字符) | | frameworkVersion | string | 是 | 要使用的框架版本 | | screenRemark | string | 否 | 大屏描述/备注 | | tenantCode | string | 否 | 租户代码(有默认值) | | deptCode | string | 否 | 部门代码(有默认值) | | screenType | number | 否 | 大屏类型(默认 2) | | ueEnabled | boolean | 否 | 是否开启流媒体(默认 false) | | (其他 UE 参数) | - | 否 | 流媒体连接数等高级配置 |

  • 接口POST /console/v1/devs/v1


3. anov-get-latest-project

获取最近创建的大屏项目的 screenKey

  • 参数:无
  • 返回:最近项目的 screenKey 字符串
  • 接口GET /console/v1/devs/v1/conditions(按创建时间倒序取第一条)

4. anov-download-template

下载并解压指定大屏项目的工程模板到本地工作区。

  • 参数

    | 参数名 | 类型 | 必填 | 说明 | | :--- | :--- | :---: | :--- | | screenKey | string | 是 | 目标大屏的唯一标识符 | | targetDir | string | 否 | 解压目标目录(相对工作区根目录,默认 ".") | | overwrite | boolean | 否 | 是否覆盖已有文件(默认 true) |

  • 安全机制:内置 Zip-Slip 防护,防止路径穿越攻击。

  • 接口GET /console/v1/devs/v1/{screenKey}/download-source


5. anov-check-project

检测指定目录是否为有效的 ANOV-DEV 项目。

  • 参数

    | 参数名 | 类型 | 必填 | 说明 | | :--- | :--- | :---: | :--- | | projectDir | string | 是 | 待验证的项目根目录的绝对路径 | | requireOmniUi | boolean | 否 | 是否同时验证 @anov/omni-ui 组件库已安装(默认 false) |

  • 检测逻辑:判断目录下是否存在 package.json,且其中包含至少一个 @anov/ 前缀的依赖包。


6. anov-validate-layout

校验 ANOV-DEV 页面中的绝对定位配置,检测组件重叠与对齐偏差。

  • 参数

    | 参数名 | 类型 | 必填 | 说明 | | :--- | :--- | :---: | :--- | | projectDir | string | 是 | 项目根目录的绝对路径(包含 src/package.json) | | route | string | 否 | 待校验的页面路由名称(若省略则扫描 src/pages/ 下所有页面) |

  • 检测能力

    • 自动识别并排除全屏背景/地图等底层组件;
    • 智能识别容器嵌套(Container Containment)并建立父子关系;
    • 精准计算非容器组件间的碰撞重叠区域(坐标、尺寸与重叠面积);
    • 智能告警同列组件微小像素偏差(20px 以内的对齐瑕疵)。

7. anov-mastergo-restore

MasterGo 设计稿 1:1 高保真 HTML 还原、LLM 专用轻量模板、独立 SVG 雪碧图生成与静态资源离线化工具。

  • 参数

    | 参数名 | 类型 | 必填 | 说明 | | :--- | :--- | :---: | :--- | | url | string | 否 | MasterGo 设计稿链接(支持常规 URL 或 /goto/ 短链) | | fileId | string | 否 | MasterGo 文件 ID(当未传 url 时与 layerId 配合必填) | | layerId | string | 否 | MasterGo 画布/图层 ID | | sourceLayerId | string | 否 | MasterGo 源图层 ID | | token | string | 否 | MasterGo 访问令牌(若省略则自动读取环境变量 MG_MCP_TOKEN) | | outputDir | string | 否 | 产物输出目录(默认 "mg-resources") | | skipImages | boolean | 否 | 是否跳过图片下载(默认 false) | | concurrency | number | 否 | 并发下载数(默认 4) | | dslPath | string | 否 | 本地已有 DSL JSON 文件路径(提供时执行 100% 离线还原) | | mode | string | 否 | 产物模式:"both"(默认) / "llm" / "full" |

  • 核心产物

    • reference.html:1:1 像素级高保真测量参考稿(仅供人工浏览器量测,注意:避免直接作为上下文输入)
    • reference.llm.html:专供 LLM 消费的极简模板(包含 @@SVG:{key}@@ 占位符)
    • icons-sprite.svg:独立 SVG 雪碧图(聚合全部去重图标符号)
    • svg_map.json:净化后的矢量图标映射字典(供 anov-apply-design 注入)
    • assets/images/:全离线化的高清图片素材与路径自动重写
    • mastergo_dsl_full.json:全量单树 DSL 数据

8. anov-slice-design

根据切片计划机械执行 reference.llm.html 的 DOM 切割,提取各 Part 独立子树、归一化坐标、收集 SVG 占位符与文本清单。

  • 参数

    | 参数名 | 类型 | 必填 | 说明 | | :--- | :--- | :---: | :--- | | slicingPlan | object \| string | 否 | 结构化切片计划对象或 JSON 字符串(含 header、commonComps 及 parts 数组) | | planPath | string | 否 | slicing-plan.json 磁盘文件路径(与 slicingPlan 二选一) | | htmlPath | string | 否 | reference.llm.html 路径(如 src/pages/[route]/mg-resources/reference.llm.html) | | htmlContent | string | 否 | 直接传入的 HTML 字符串内容(可选) | | outputDir | string | 否 | 切片产物输出目录(默认与 htmlPath 所在目录一致) |

  • 核心产物

    • slices/[partId].html:各 Part 独立的极简 HTML 切片文件,绝对坐标已基于各 Part 自身 Bounding Box 归一化。
    • slices-manifest.json:切片元数据清单(包含每个切片的尺寸、坐标、SVG 占位符列表、抽取文本清单与图表类型)。

9. anov-apply-design

将 MasterGo 矢量图标净化后注入 Vue 3 SFC 单文件组件并物理落盘到工程目录。

  • 参数

    | 参数名 | 类型 | 必填 | 说明 | | :--- | :--- | :---: | :--- | | code | string | 是 | 包含 @@SVG:{key}@@ 占位符的 Vue 3 SFC 组件代码 | | outputFilePath | string | 是 | 目标输出文件路径(如 src/pages/overview/comps/LeftTop.vue) | | svgMapPath | string | 否 | svg_map.json 文件路径(省略时自动在目标目录及 mg-resources/ 中搜索) | | svgMap | object | 否 | 直接传入的 SVG 映射字典对象 | | overwrite | boolean | 否 | 是否覆盖目标文件(默认 true) |

  • 功能:精准将 reference.llm.html 阶段生成的 @@SVG:{key}@@ 占位符替换为真实的净化内联 SVG,并自动写入磁盘对应文件。


提供的提示词 (Prompts)

anov-project-init

引导 AI 按标准流程完成 ANOV 大屏项目的初始化与模板下载。

标准工作流

  1. 调用 anov-list-versions 获取最新框架版本
  2. 调用 anov-create-project 创建大屏项目
  3. 调用 anov-get-latest-project 获取新项目的 screenKey
  4. 向用户确认后再执行下载(安全防护)
  5. 调用 anov-download-template 下载并解压到工作区

在 AI 编辑器中集成

方式一:使用 CLI 一键配置(推荐)

通过配套的脚手架工具 anov-dev-copilot-cli,可自动检测并为 CursorClaude CodeAntigravity 一键写入配置:

# 交互式引导配置(自动提示输入 API URL、Ticket 及可选的 MasterGo Token)
npx anov-dev-copilot-cli setup

# 或通过命令行参数静默配置
npx anov-dev-copilot-cli setup-mcp \
  --api-url "http://192.168.11.164:9999" \
  --ticket "你的_ANOV_ACCESS_TICKET" \
  --mg-mcp-token "你的_MG_MCP_TOKEN" \
  -y

连通性测试与环境诊断命令

配置完成后,可随时使用 CLI 验证配置是否生效:

# 自动检测并测试当前有效配置
npx anov-dev-copilot-cli doctor
# 或使用等效别名:check / test / list-version
npx anov-dev-copilot-cli check

# 显式测试指定 Agent 的全局配置
npx anov-dev-copilot-cli doctor antigravity
npx anov-dev-copilot-cli check -e claude
npx anov-dev-copilot-cli test -a cursor

方式二:手动配置

若需要手动添加,可在对应编辑器的配置文件中配置 mcpServers

| 编辑器 | 配置文件路径 | | :--- | :--- | | Antigravity | ~/.gemini/config/mcp_config.json | | Cursor | ~/.cursor/mcp.json | | Claude Code | ~/.claude.json | | 项目工作区本地 | .mcp.jsonmcp_config.json |

配置示例(npx 模式,推荐):

{
  "mcpServers": {
    "anov-dev-copilot": {
      "command": "npx",
      "args": ["-y", "anov-dev-copilot-mcp"],
      "env": {
        "API_BASE_URL": "http://192.168.11.164:9999",
        "ACCESS_TICKET": "你的_ANOV_ACCESS_TICKET",
        "MG_MCP_TOKEN": "你的_MG_MCP_TOKEN(可选)"
      }
    }
  }
}

本地开发调试模式:

{
  "mcpServers": {
    "anov-dev-copilot": {
      "command": "node",
      "args": ["/绝对路径/到/anov-dev-mcp/packages/mcp/dist/index.js"],
      "env": {
        "API_BASE_URL": "http://192.168.11.164:9999",
        "ACCESS_TICKET": "你的_ANOV_ACCESS_TICKET",
        "MG_MCP_TOKEN": "你的_MG_MCP_TOKEN(可选)"
      }
    }
  }
}

[!IMPORTANT] 配置完成后,请务必重启 AI 编辑器或在 MCP 面板中重载 (Reload) 该 MCP Server,以使新配置生效。


开发与构建

# 在 packages/mcp 目录下执行编译构建
pnpm build

# 启动热更新监视模式
pnpm dev

# 运行单元测试
pnpm test