Token导航 LogoToken导航TokenDH.com
PrimeNG MCP logo
开发工具未说明官方级别未说明来源级核验

PrimeNG MCP

MCP Server

PrimeNG MCP服务器是一个用于访问PrimeNG组件文档并生成Angular代码的工具,提供完整的组件文档提取、智能搜索和代码生成功能。

工具数

5

提示词数

0

GitHub Stars

1

资源数

0
代码生成TypeScriptClaude开发工具Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

hnkatze

提供方

hnkatze

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

PrimeNG MCP Server

![License: MIT](https://opensource.org/licenses/MIT) ![TypeScript](https://www.typescriptlang.org/) ](https://nodejs.org/)

Servidor MCP (Model Context Protocol) para acceder a la documentación de componentes PrimeNG y generar código Angular.

✨ Características

  • 📚 Documentación completa - Extrae properties, events, methods y descripciones
  • 🔍 Búsqueda inteligente - Encuentra componentes por nombre o categoría
  • 💻 Generación de código - Crea componentes Angular listos para usar
  • 📝 Múltiples ejemplos - Extrae todos los ejemplos de código de PrimeNG.org
  • Cache persistente - Almacena documentación en disco con TTL configurable
  • 🌐 Web scraping robusto - Sistema de reintentos con exponential backoff
  • 🎨 Syntax highlighting - Auto-detección de lenguaje para formateo
  • 📖 Guías de configuración - Documentación de instalación, theming, iconos, etc.

Instalación

npm install
npm run build

Uso en Desarrollo

npm run dev

Configuración en Claude Desktop

Añade lo siguiente a tu archivo de configuración de Claude Desktop:

MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "primeng": {
      "command": "node",
      "args": ["/ruta/absoluta/a/primeng-mcp-server/dist/index.js"]
    }
  }
}

O en modo desarrollo:

{
  "mcpServers": {
    "primeng": {
      "command": "npx",
      "args": ["-y", "tsx", "/ruta/absoluta/a/primeng-mcp-server/src/index.ts"]
    }
  }
}

Herramientas Disponibles

1. get_component_doc

Obtiene documentación completa de un componente.

Parámetros:

  • component (string): Nombre del componente (ej: "button", "table", "dialog")

Ejemplo de uso:

¿Cuáles son las propiedades del componente Button de PrimeNG?

2. search_components

Busca componentes por término.

Parámetros:

  • query (string): Término de búsqueda

Ejemplo de uso:

Busca componentes de PrimeNG relacionados con "input"

3. list_all_components

Lista todos los componentes disponibles organizados por categoría.

Ejemplo de uso:

Muéstrame todos los componentes de PrimeNG

4. generate_component_code

Genera código de ejemplo para un componente.

Parámetros:

  • component (string): Nombre del componente
  • properties (object, opcional): Propiedades del componente

Ejemplo de uso:

Genera código para un botón con label "Guardar" y icono "pi pi-save"

5. get_component_examples

Obtiene todos los ejemplos de código extraídos de la documentación oficial.

Parámetros:

  • component (string): Nombre del componente

Mejoras (v2.0):

  • ✨ Extrae todos los ejemplos del sitio web (no solo 1-3 hardcodeados)
  • ✨ Auto-detección de lenguaje (HTML, TypeScript, etc.)
  • ✨ Cache-first para respuestas rápidas
  • ✨ Fallback a ejemplos hardcodeados si falla el scraping

Ejemplo de uso:

Dame ejemplos de cómo usar el componente Table de PrimeNG

Resultado: ~18 ejemplos para Button, ~7 para Dialog, etc.

Componentes Soportados

El servidor incluye más de 70 componentes de PrimeNG:

  • Inputs: autocomplete, calendar, checkbox, dropdown, inputtext, etc.
  • Data: datatable, table, dataview, tree, etc.
  • Buttons: button, splitbutton, speeddial
  • Panels: accordion, card, panel, tabview, etc.
  • Overlays: dialog, sidebar, tooltip
  • Menus: breadcrumb, menu, menubar, megamenu, etc.
  • Messages: message, toast
  • Media: carousel, galleria, image
  • Y muchos más...

Ejemplos de Consultas

1. "¿Cómo uso el componente Calendar de PrimeNG?"
2. "Genera un dialog con header y footer"
3. "Busca componentes de menú"
4. "Dame ejemplos del componente Table"
5. "Lista todos los componentes de entrada"

🏗️ Arquitectura (v2.0)

El proyecto sigue una arquitectura modular y escalable:

primeng-mcp-server/
├── src/
│   ├── index.ts              # Entry point
│   ├── server/
│   │   └── PrimeNGServer.ts  # Main server class
│   ├── services/
│   │   ├── ScraperService.ts       # Web scraping & HTML parsing
│   │   ├── CacheService.ts         # Persistent cache with TTL
│   │   ├── CodeGeneratorService.ts # Code generation
│   │   └── DocsScraperService.ts   # Guide documentation scraping
│   ├── tools/
│   │   ├── BaseTool.ts             # Abstract base class
│   │   ├── GetComponentDocTool.ts  # Tool: get_component_doc
│   │   ├── SearchComponentsTool.ts # Tool: search_components
│   │   ├── ListComponentsTool.ts   # Tool: list_all_components
│   │   ├── GenerateCodeTool.ts     # Tool: generate_component_code
│   │   ├── GetExamplesTool.ts      # Tool: get_component_examples
│   │   └── Get*GuideTool.ts        # Guide tools (installation, theming, etc)
│   ├── models/
│   │   ├── ComponentDoc.ts   # Interfaces and types
│   │   └── ToolSchemas.ts    # MCP tool schemas
│   ├── utils/
│   │   ├── logger.ts         # Structured logging
│   │   ├── formatters.ts     # Output formatting
│   │   ├── parsers.ts        # HTML parsing utilities
│   │   ├── errors.ts         # Custom error classes
│   │   └── retry.ts          # Retry with exponential backoff
│   └── config/
│       └── constants.ts      # Configuration
├── tests/
│   └── unit/                 # Unit tests
├── dist/                     # Compiled JavaScript
├── .cache/                   # Component cache (gitignored)
└── docs/                     # Documentation (CLAUDE.md, CONTRIBUTING.md, etc)

💻 Desarrollo

Scripts Disponibles

npm run build         # Compile TypeScript
npm run watch         # Compile with watch mode
npm run dev           # Run with tsx (no compilation)
npm start             # Run compiled version
npm test              # Run tests
npm run test:unit     # Run unit tests only
npm run test:coverage # Run with coverage
npm run lint          # Lint code
npm run lint:fix      # Auto-fix lint issues
npm run format        # Format with Prettier

Añadir un Nuevo Tool

  1. Crea el tool en src/tools/MyNewTool.ts extendiendo BaseTool
  2. Define el schema en src/models/ToolSchemas.ts
  3. Registra en src/server/PrimeNGServer.ts:

- Inicializa en initializeTools() - Agrega case en el handler CallToolRequestSchema - Agrega schema en ListToolsRequestSchema

Ejemplo:

// src/tools/MyNewTool.ts
import { BaseTool, ToolResponse } from './BaseTool.js';

export class MyNewTool extends BaseTool {
  constructor(dependencies) {
    super('my_new_tool');
  }

  async execute(args: Record): Promise {
    // Tu lógica aquí
    return this.createResponse(result);
  }
}

Modificar el Scraping

  • Lógica de scraping: src/services/ScraperService.ts
  • Parsers HTML: src/utils/parsers.ts
  • Formateo de salida: src/utils/formatters.ts

Ver CLAUDE.md para documentación detallada de arquitectura.

🎯 Mejoras Recientes (v2.0)

  • Web scraping completo - Extrae documentación real de PrimeNG.org
  • Cache persistente - Sistema de cache en .cache/ con TTL de 24h
  • Múltiples ejemplos - Extrae TODOS los ejemplos (no solo el primero)
  • Sin límites - Elimina límites de 20 properties, 15 events, 10 methods
  • Descripciones completas - Sin truncamiento a 100 caracteres
  • Arquitectura modular - Separación en services, tools, utils
  • Sistema de logging - Logger estructurado con niveles
  • Reintentos robustos - Exponential backoff para web scraping
  • Testing - Framework Vitest configurado
  • Code quality - ESLint + Prettier

🚧 Roadmap

  • [ ] Soporte para API documentation tabs en nueva estructura PrimeNG
  • [ ] Validación de propiedades con schemas
  • [ ] Generación de tests unitarios
  • [ ] Integración con PrimeNG CLI
  • [ ] Generación de código TypeScript para lógica
  • [ ] Soporte para temas y estilos customizados
  • [ ] CLI tool para testing local

🤝 Contribuir

¡Las contribuciones son bienvenidas! Por favor lee CONTRIBUTING.md para detalles sobre:

  • Cómo reportar bugs
  • Cómo proponer nuevas características
  • Guías de estilo de código
  • Proceso de pull requests

📄 Licencia

Este proyecto está licenciado bajo la Licencia MIT - ver el archivo LICENSE para más detalles.

📚 Recursos

👥 Autores

PrimeNG MCP Server Contributors

🙏 Agradecimientos

  • PrimeNG team por su excelente biblioteca de componentes
  • Anthropic por el Model Context Protocol
  • Comunidad open source

¿Preguntas o problemas? Abre un issue

目录标签

目录标签

代码生成TypeScriptClaude开发工具组件文档本地部署Angular开发WebScraping

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

部署方式(deploymentType,部署类型)

local-only

工具数量(toolCount,工具数)

5

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明nonelocal-only

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP