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

primereact-mcp

v1.2.4

Published

MCP server for PrimeReact v10 component documentation — props, events, examples, and search for AI assistants

Readme

primereact-mcp

A Model Context Protocol (MCP) server that gives AI assistants full access to PrimeReact v10 component documentation — props, events, examples, and search.

Why does this exist?
The PrimeReact team has not yet published an official @primereact/mcp package. This server fills that gap using the same engine (@primeuix/mcp) that powers the official PrimeNG MCP server, with component data extracted from PrimeReact's TypeScript definitions. The official PrimeReact MCP will be launched with v11.


Features

  • 105 PrimeReact v10 components with full prop/event documentation
  • 15+ MCP tools: search, suggest, inspect props, get examples, compare components, and more
  • Works with Claude Code, Claude Desktop, Cursor, Windsurf, and any MCP-compatible client
  • Generated directly from PrimeReact's TypeScript .d.ts source — no stale hand-written docs

Quick Start

Prerequisites

  • Node.js 18 or later
  • An MCP-compatible AI client (see below)

Option A — npx (no install needed)

Use npx -y primereact-mcp directly in your MCP client config. Component data ships pre-generated inside the package.

Option B — clone and run locally

git clone https://github.com/wisdomrock/primereact-mcp.git
cd primereact-mcp
npm install
node index.mjs   # starts the server

To regenerate component data after a PrimeReact version upgrade:

npm install primereact@10   # install the target version
node generate-data.mjs      # rewrites components-data.json

MCP Client Setup

Claude Code (CLI)

# via npx — zero install
claude mcp add primereact -- npx -y primereact-mcp

# or point at a local clone
claude mcp add primereact -- node /absolute/path/to/primereact-mcp/index.mjs

Or add it to your project's .mcp.json:

{
  "mcpServers": {
    "primereact": {
      "command": "npx",
      "args": ["-y", "primereact-mcp"]
    }
  }
}

Claude Desktop

Add the following to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "primereact": {
      "command": "npx",
      "args": ["-y", "primereact-mcp"]
    }
  }
}

Cursor

Add to .cursor/mcp.json in your project root:

{
  "mcpServers": {
    "primereact": {
      "command": "npx",
      "args": ["-y", "primereact-mcp"]
    }
  }
}

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "primereact": {
      "command": "npx",
      "args": ["-y", "primereact-mcp"]
    }
  }
}

Available Tools

| Tool | Description | |------|-------------| | list_components | List all 105 PrimeReact components, optionally filtered by category | | get_component | Get full details for a component (stats, props preview, sections) | | get_component_props | Get all props for a component with types and descriptions | | get_component_events | Get all event callbacks a component supports | | get_component_methods | Get component methods (where documented) | | get_component_slots | Get slots/render props for a component | | get_component_pt | Get Pass Through (PT) customization options | | get_component_tokens | Get design tokens (CSS variables) | | get_component_styles | Get CSS class names | | get_component_sections | Get all sections with examples (basic, advanced, etc.) | | get_component_import | Get the correct import statement | | get_component_url | Get the official documentation URL | | get_usage_example | Get code examples for a component | | search_components | Search components by name or description | | find_by_prop | Find all components that have a specific prop | | find_by_event | Find all components that emit a specific event | | find_components_with_feature | Find components with a feature (e.g. "filter", "lazy", "virtual") | | compare_components | Compare two components side by side | | suggest_component | Suggest components based on a use-case description | | get_categories | Get all component categories | | get_version_info | Get PrimeReact version and compatibility info | | get_form_components | Get all form input components | | get_data_components | Get all data display components (tables, lists, trees) | | get_overlay_components | Get all overlay/popup components |

Example prompts

Which PrimeReact component should I use for a searchable multi-select?

What props does the DataTable component accept?

Find all PrimeReact components that have a filter prop.

Compare the Dropdown and AutoComplete components.

Show me the import statement for the Calendar component.

Upgrading PrimeReact Version

To update the component data after upgrading PrimeReact:

npm install primereact@NEW_VERSION
node generate-data.mjs

The generate-data.mjs script re-reads all .d.ts files and rewrites components-data.json.


Project Structure

primereact-mcp/
├── index.mjs              # MCP server entry point
├── generate-data.mjs      # Generates components-data.json from .d.ts files
├── components-data.json   # Generated component data (committed for convenience)
├── server.json            # MCP Registry metadata
├── package.json
└── README.md

MCP Registry

This server is published to the Official MCP Registry. Registry metadata is in server.json at the repo root.

How it works

  1. generate-data.mjs reads each component's .d.ts file from the primereact npm package, parses JSDoc comments and TypeScript interface definitions using a line-by-line state machine, and writes structured JSON to components-data.json.

  2. index.mjs calls runPrimeMcpServer() from @primeuix/mcp — the same shared engine used by the official PrimeNG MCP server — passing PrimeReact-specific configuration and the generated component data.


Contributing

Contributions welcome! Areas that would benefit from improvement:

  • Richer examples — add JSX code snippets to more component sections
  • PrimeReact v11 support — the alpha v11 uses @primereact/types, requiring a different parsing strategy
  • Pass Through (PT) data — extract PT options from .d.ts files
  • Design tokens — extract CSS variable names

Please open an issue before sending a large PR.


License

MIT — see LICENSE.


Related