返回 MCP 目录
public公开dns本地运行

antd-components-mcp

Ant Design组件的MCP服务,为大型语言模型提供组件文档查询和代码生成支持

article

README

🚀 项目结构

本项目主要介绍了项目的目录结构、主要文件说明、缓存机制以及文档抽取和发布机制,帮助开发者更好地理解和使用项目。

🚀 快速开始

本项目的结构和机制有助于开发者高效地管理组件信息,提高系统的响应速度和效率,同时保持文档的最新性。下面将详细介绍项目的各个部分。

📦 安装指南

暂未提供安装步骤相关内容。

✨ 主要特性

目录结构清晰

项目具有明确的目录结构,便于管理和维护组件数据、元数据以及 npm 包配置。

.
├── components          # 组件数据目录
│   ├── alert         # 示例组件目录
│   │   └── doc.md    # 组件文档文件
│   └── examples.json  # 组件示例文件
├── metadata.json       # 元数据文件
└── package.json        # npm 包配置文件

主要文件说明

  • package.json:npm 包的配置文件,包含项目的名称、版本、描述、脚本和依赖等信息。
{
  "name": "@jzone-mcp/antd-components",
  "version": "1.0.0",
  "description": "Ant Design Components Monitoring Platform",
  "main": "index.js",
  "scripts": {
    "start": "node index.js",
    "extract": "./bin/extract-docs.js"
  },
  "dependencies": {
    "@jzone-mcp/utils": "^1.0.0",
    "express": "^4.18.2"
  }
}
  • components/components-index.json:组件索引文件,列出了项目中的组件及其相关信息。
[
  {
    "name": "alert",
    "dirName": "alert",
    "title": "Alert 提示框",
    "subtitle": "用于重要信息的提示"
  },
  {
    "name": "button",
    "dirName": "button",
    "title": "Button 按钮",
    "subtitle": "页面中的按钮元素"
  }
]
  • components/alert/doc.md:以 Alert 提示框组件为例,详细说明了组件的描述、使用方法、API 和示例代码。
## Alert 提示框

### 描述
Alert 组件用于在页面中显示重要信息的提示,支持成功、警告、错误和信息四种类型。

### 使用方法
```javascript
<Alert message="内容" type="success|warning|error|info" />

API

| 参数 | 类型 | 描述 | |------|------|------| | message | string | 提示的内容 | | type | string | 提示的类型,支持 success, warning, error, info 四种值 |

示例代码

<Alert message="操作成功" type="success" />
<Alert message="注意事项" type="warning" />

### 缓存机制
为了提高系统的响应速度和效率,MCP 采用了缓存机制。每次请求组件信息时,系统会首先检查缓存中是否存在该数据。如果存在,则直接返回缓存中的数据;如果不存在,则从数据源读取数据并更新到缓存中。

```mermaid
flowchart LR
    Request[组件请求] --> CacheCheck{缓存检查}
    CacheCheck -->|存在| ReturnCache[返回缓存数据]
    CacheCheck -->|不存在| ReadFile[读取文件]
    ReadFile --> ProcessData[处理数据]
    ProcessData --> UpdateCache[更新缓存]
    UpdateCache --> ReturnData[返回数据]

文档抽取和发布机制

为了保持文档的最新性,MCP 提供了定期和手动触发文档抽取和发布的功能。默认情况下,系统会在每周一晚上 10 点自动执行该流程。

flowchart TD
    A[开始] --> B[触发条件]
    B --> |每周一晚上 10 点| C[自动触发]
    B --> |手动触发| D[手动触发]

    C --> E[设置环境变量]
    D --> E
    E --> F[克隆 Ant Design 仓库]
    F --> G[获取版本信息]

    G --> G1[获取 Ant Design 版本]
    G --> G2[获取已抽取数据版本]

    G1 --> H[检查更新]
    G2 --> H

    H --> |输出调试信息| I[显示版本信息]

    H --> J{版本一致?}
    J --> |是| K[结束流程]
    J --> |否| L[创建动态分支]

    L --> M[生成 Ant Design 变更日志]
    M --> N[抽取文档数据]
    N --> O[提交并推送更改]

    O --> P[发布 npm 包]
    P --> Q[创建 PR]

    Q --> R{已有 PR 吗?}
    R --> |是| S[记录现有 PR]
    R --> |否| T[创建新 PR]

    S --> K
    T --> K

通过上述机制,MCP 确保了组件信息的实时性和准确性。

💻 使用示例

Alert 提示框使用示例

<Alert message="操作成功" type="success" />
<Alert message="注意事项" type="warning" />

🔧 技术细节

  • 缓存机制:通过缓存机制,系统可以避免重复读取数据源,从而提高响应速度和效率。每次请求组件信息时,系统会首先检查缓存中是否存在该数据,根据检查结果进行相应的处理。
  • 文档抽取和发布机制:为了保持文档的最新性,MCP 提供了定期和手动触发文档抽取和发布的功能。系统会在每周一晚上 10 点自动执行该流程,也可以手动触发。该机制涉及到克隆仓库、获取版本信息、检查更新、生成变更日志、抽取文档数据、提交并推送更改、发布 npm 包和创建 PR 等一系列操作,确保了组件信息的实时性和准确性。
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端