The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Primereact MCP listing page.
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/mcppackage. 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.
.d.ts source — no stale hand-written docsUse npx -y primereact-mcp directly in your MCP client config. Component data ships pre-generated inside the package.
To regenerate component data after a PrimeReact version upgrade:
Or add it to your project's .mcp.json:
Add the following to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
Add to .cursor/mcp.json in your project root:
Add to ~/.codeium/windsurf/mcp_config.json:
| 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 |
To update the component data after upgrading PrimeReact:
The generate-data.mjs script re-reads all .d.ts files and rewrites components-data.json.
This server is published to the Official MCP Registry. Registry metadata is in server.json at the repo root.
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.
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.
Contributions welcome! Areas that would benefit from improvement:
@primereact/types, requiring a different parsing strategy.d.ts filesPlease open an issue before sending a large PR.
MIT — see LICENSE.