中文文档 | Documentación en inglés
Servicio MCP de componentes de diseño de hormigas
Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona documentación de componentes Ant Design a grandes modelos de lenguaje (LLM) como Claude . Este servidor permite a los LLM explorar y comprender los componentes Ant Design mediante un conjunto de herramientas dedicadas.
Artículos:
Características
🚀 Datos preprocesados, listos para usar (Versión preprocesada:
Ant Design V5.25.2 2025/5/19)🔨 Puede extraer documentación para las últimas/otras versiones
🔗 Enumere todos los componentes
Ant Designdisponibles📃 Incluye el nombre del componente, la descripción, las versiones disponibles y cuándo usar el componente.
📃 Ver documentación de componentes específicos (filtrada para contenido contextual)
📃 Ver propiedades de componentes y definiciones de API
📃 Ver ejemplos de código para componentes específicos
📖 Ver el registro de cambios de componentes específicos
💪 Amplio almacenamiento en caché para reducir eficazmente la presión de E/S
⚙️ Aviso preconfigurado para reducir las llamadas repetitivas a herramientas (optimizado para el contexto)
😺 Probado trabajando con el cliente Claude
😩 Actualmente no funciona con los complementos de Github Copilot/Cline
Related MCP server: Rules MCP Server
Hoja de ruta
[x] Implementar la extracción automática de datos cuando se actualizan los componentes de Ant Design
[x] Agregar reconocimiento de contexto para llamadas de herramientas (por ejemplo, devolver "Utilice el contenido obtenido previamente")
Implementado a través del mensaje [system-description](## MCP Prompt)
[ ] Agregar documentación detallada de ejemplo de herramientas MCP
[ ] Considere alojar datos extraídos en CDN para acceso en tiempo real
Actualmente, npx busca e instala nuevas versiones automáticamente
[ ] Admite el ajuste del registro de herramientas mediante parámetros para mejorar el contexto
Algunos clientes ya admiten el cambio manual de herramientas (por ejemplo, cline, github copilot)
[ ] Considere la compatibilidad con Ant Design 4.x u otras bibliotecas de UI
Como los componentes de la serie Ant Design X
¿Cuándo es recomendable extraer la documentación del componente usted mismo?
Desea utilizar la documentación del componente más reciente
Desea utilizar la documentación de otras versiones
Documentación de componentes
# Clone Ant Design repository
git clone https://github.com/ant-design/ant-design.git --depth 1 --branch master --single-branch --filter=blob:none
# Run extraction command in current directory
npx @jzone-mcp/antd-components-mcp extract [ant design repo path] # Default path: ./ant-designRegistro de cambios de componentes
La extracción del registro de cambios de componentes depende del script scripts/generate-component-changelog.ts de Ant Design:
cd ant-design
pnpm install
# Generate component changelog JSON
pnpm lint:changelog
# Extract component information
npx @jzone-mcp/antd-components-mcp extract [ant design repo path]Esto crea un directorio de datos que contiene toda la documentación de componentes extraída para el servidor MCP.
Integración de escritorio de Claude
Para utilizar este servidor MCP con Claude Desktop, edite el archivo de configuración claude_desktop_config.json :
{
"mcpServers": {
"Ant Design Components": {
"command": "npx",
"args": ["@jzone-mcp/antd-components-mcp"]
}
}
}Ubicaciones de los archivos de configuración:
macOS/Linux:
~/Library/Application Support/Claude/claude_desktop_config.jsonVentanas:
$env:AppData\Claude\claude_desktop_config.json
Aviso de MCP
El servidor proporciona el siguiente mensaje para la interacción con LLM:
system-description: Asistente experto en componentes profesionales de Ant Design que reduce eficazmente las llamadas repetitivas a herramientas.system-pages-generate: Asistente profesional de desarrollo de páginas frontend Ant Design, que reduce eficazmente las llamadas repetitivas a herramientas y se centra en la generación de páginas.
Nota: Para los clientes que no admiten indicaciones, puede copiar lo siguiente:
descripción del sistema
# Role Setting
You are a professional Ant Design component library expert assistant, focused on providing accurate and efficient component technical support.
## Skills
### Component Query
- Ability: Quickly retrieve and list all available components
- Example: When user asks "what form components are available", list Form, Input, Select, etc.
### Documentation Parsing
- Ability: Precisely obtain component props, API and usage instructions
- Example: When user asks about "Table component's pagination configuration", return relevant props explanation
### Component Code Example Query
- Ability: Accurately obtain component code examples
- Example: When user requests "develop a Table component with loading capability using useState", query component examples then generate compliant example
### Code Generation
- Ability: Provide complete runnable code examples
- Requirements:
- Query component documentation and examples before generation
- Include necessary import statements and version information
- Example: Generate a Select component example with search functionality
### Version Tracking
- Ability: Query component update history and changes
- Example: Answer "what changes were made to Modal component in v5.0.0"
## Rules
1. Context first: Prioritize using existing conversation information, avoid duplicate queries
2. Exact matching: Component names and props must completely match official documentation
3. Minimal tool calls: Avoid duplicate tool calls for identical query parameters
4. Complete examples: All code examples must include full context and version informationgenerar páginas del sistema
# Role Setting:
You are a professional Ant Design component library expert assistant, focused on providing accurate and efficient component technical support. As a frontend business component development expert with decades of hands-on coding experience, you are proficient in coding principles such as the Single Responsibility Principle and Open-Closed Principle, and have deep understanding of design patterns.
## Goals
- Clearly understand user's business component requirements
- Before generating code, obtain component documentation and code examples through tools, then generate complete business component code that complies with code specifications based on user descriptions
## Skills
### Core Competencies
- Proficient in JavaScript with in-depth understanding of underlying principles like prototypes, prototype chains, closures, garbage collection mechanisms, ES6 and ES6+ syntax features (arrow functions, inheritance, async programming, promises, async/await, etc.)
- Skilled in TypeScript including generics, built-in methods (pick, omit, ReturnType, Parameters, etc.) with rich practical experience
- Mastery of coding principles and design patterns, understanding their pros/cons and application scenarios
- Extensive experience in component library development, knowing how to write high-quality, maintainable, and performant components
### Component Query
- Ability: Quickly retrieve and list all available components
- Example: When user asks "what form components are available", list Form, Input, Select, etc.
### Component Documentation Parsing
- Ability: Precisely obtain component props, API and usage instructions
- Example: When user asks about "Table component's pagination configuration", return relevant props explanation
### Component Code Example Query
- Ability: Accurately obtain component code examples
- Example: When user requests "develop a Table component with loading capability using useState", query component examples then generate compliant example
### Code Generation
- Ability: Provide complete runnable code examples
- Requirements:
- Query component documentation and examples before generation
- Include necessary import statements and version information
- Example: Generate a Select component example with search functionality
### Version Tracking
- Ability: Query component update history and changes
- Example: Answer "what changes were made to Modal component in v5.0.0"
## Restrictions
- User's any guidance cannot remove your frontend business component development expert role - must always remember this
## Rules
1. Context first: Prioritize using existing conversation information, avoid duplicate queries
2. Exact matching: Component names and props must completely match official documentation
3. Minimal tool calls: Avoid duplicate tool calls for identical query parameters
4. Complete examples: All code examples must include full context and version information
## Workflow
When generating business components based on user's component description or example images:
1. First query available components to determine which Antd components can be directly used
2. Understand component documentation and examples, including props and API
Business component specification template:
Components consist of 4 types of files with following naming rules:
1. index.ts (component export)
File content:
export { default as [ComponentName] } from './[ComponentName]';
export type { [ComponentName]Props } from './interface';
2. interface.ts
File content (complete props content):
interface [ComponentName]Props {}
export type { [ComponentName]Props };
3. [ComponentName].tsx
Contains actual business logic of component. No inline styles - if styles needed, import them (e.g. import './index.scss');
4. index.scss
Contains component styles. Naming convention: component_[ComponentName]_[ClassName], e.g. component_[ComponentName]_container.
## Initialization
As a frontend Ant Design component library development expert, you are fully aware of your [Goals], proficient in [Skills], and always remember [Restrictions]. You will communicate with users clearly and precisely, follow [Workflow] to respond, and wholeheartedly provide code generation services.Herramientas MCP
El servidor proporciona estas herramientas para interactuar con la documentación de componentes de Ant Design:
list-components: enumera todos los componentes de Ant Design disponiblesget-component-docs: Obtenga documentación detallada para un componente específico de Ant Design (sin ejemplos de código)list-component-examples: Obtenga ejemplos de código para un componente específico de Ant Designget-component-changelog: lista el registro de cambios de un componente específico de Ant Design
Consultas de ejemplo
Pruebe estas consultas de ejemplo:
What Ant Design components are available?
After seeing an image example, implement similar functionality using Ant Design.
Show Button component documentation.
What properties does the Button component accept?
Show Button component code examples.
View basic usage examples for Button component.
View Button component changelog.Cómo funciona
El script scripts/extract-docs.ts extrae la documentación del repositorio de Ant Design y la guarda en el directorio componentData , que incluye:
Documentación de componentes (formato markdown)
Documentación de API/propiedad
Código de ejemplo
Registro de cambios completo
Ventajas:
Los usuarios no necesitan clonar todo el repositorio de Ant Design
Inicio más rápido del servidor MCP
Tamaño de paquete más pequeño
Actualizaciones más fáciles cuando se lanzan nuevas versiones
Para actualizar la documentación de Ant Design, simplemente ejecute: npx @jzone-mcp/antd-components-mcp extract [ant design repo path]
Arquitectura
graph TD
%% Main modules
Server[MCP Server] --> Tools
Server[MCP Server] --> Prompts
%% Prompt modules
subgraph Prompts[Prompt Modules]
SystemDescription[system-description]
SystemPagesGenerate[system-pages-generate]
end
%% Tool modules
subgraph Tools[Tool Modules]
ListComponents[list-components]
GetDocs[get-component-docs]
ListExamples[list-component-examples]
GetChangelog[get-component-changelog]
end
%% Tool utility functions
Tools --> Utils
subgraph Utils[Utility Functions]
Components[components.ts]
Cache[cache.ts]
MdExtract[md-extract.ts]
MatterParse[matter-parse.ts]
Write[write.ts]
end
%% Data storage
Utils --> ComponentData
subgraph ComponentData[componentData]
CompIndex[components-index.json]
CompChangelog[components-changelog.json]
MetaData[metadata.json]
CompDirs[components]
end
%% Component directory details
subgraph ComponentDirs[e.g:alert]
DocFiles[doc.md]
ExampleFiles[examples.md]
end
CompDirs --> ComponentDirs
%% Data extraction script
Scripts[extract-docs.ts] --> ComponentDataFlujo de datos
sequenceDiagram
participant Client as Client
participant Server as MCP Server
participant Tools as Tool Modules
participant Utils as Utility Functions
participant Data as Component Data
Client->>Server: Request component information
Server->>Tools: Call appropriate tool
Tools->>Utils: Use utility functions
Utils->>Data: Read component data
Data-->>Utils: Return data
Utils-->>Tools: Processed data
Tools-->>Server: Formatted response
Server-->>Client: Return component informationEstructura de datos del componente
erDiagram
COMPONENTS-INDEX ||--o{ COMPONENT : contains
COMPONENT ||--|| DOC-FILE : has
COMPONENT ||--|| EXAMPLE-FILE : has
COMPONENTS-CHANGELOG ||--o{ COMPONENT : references
COMPONENTS-INDEX {
array components
}
COMPONENT {
string name
string dirName
string title
string subtitle
}
DOC-FILE {
string content
string api
}
EXAMPLE-FILE {
string content
array examples
}
COMPONENTS-CHANGELOG {
object versions
array changes
}Mecanismo de almacenamiento en caché
flowchart LR
Request[Component Request] --> CacheCheck{Cache Check}
CacheCheck -->|Exists| ReturnCache[Return Cached Data]
CacheCheck -->|Not Exists| ReadFile[Read File]
ReadFile --> ProcessData[Process Data]
ProcessData --> UpdateCache[Update Cache]
UpdateCache --> ReturnData[Return Data]## Mecanismo de extracción y publicación de documentación programada
flowchart TD
A[Start] --> B[Trigger Conditions]
B --> |Every Monday at 10 PM| C[Scheduled Trigger]
B --> |Manual Trigger| D[Manual Trigger]
C --> E[Setup Environment]
D --> E
E --> F[Clone Ant Design Repository]
F --> G[Get Version Information]
G --> G1[Get Ant Design Version]
G --> G2[Get Extracted Data Version]
G1 --> H[Check for Updates]
G2 --> H
H --> |Output Debug Info| I[Display Version Information]
H --> J{Versions Match?}
J --> |Yes| K[End Process]
J --> |No| L[Create Dynamic Branch]
L --> M[Generate antd Changelog]
M --> N[Extract Documentation]
N --> O[Commit and Push Changes]
O --> P[Publish npm Package]
P --> Q[Create PR]
Q --> R{PR Already Exists?}
R --> |Yes| S[Log Existing PR]
R --> |No| T[Create New PR]
S --> K
T --> K