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

@cangdev/jtl-components

v0.1.4

Published

MCP server exposing @jtl-software/platform-ui-react component metadata to AI agents

Readme

@cangdev/jtl-components

MCP server that exposes @jtl-software/platform-ui-react component metadata to AI agents. Agents can browse, inspect, search, and get recommendations for 70 components without scanning source files.

Install

npx @cangdev/jtl-components install <agent> [--local]

--local writes to the project directory instead of global config.


Supported Agents

Claude Code (Claude Code CLI)

# Global  → ~/.claude.json
npx @cangdev/jtl-components install claude-code

# Project → .mcp.json (current directory)
npx @cangdev/jtl-components install claude-code --local

Claude Desktop

# Global only
# macOS:   ~/Library/Application Support/Claude/claude_desktop_config.json
# Windows: %APPDATA%\Claude\claude_desktop_config.json
npx @cangdev/jtl-components install claude

Cursor

# Global  → ~/.cursor/mcp.json
npx @cangdev/jtl-components install cursor

# Project → .cursor/mcp.json
npx @cangdev/jtl-components install cursor --local

Windsurf

# Global  → ~/.codeium/windsurf/mcp_config.json
npx @cangdev/jtl-components install windsurf

# Project → .windsurf/mcp.json
npx @cangdev/jtl-components install windsurf --local

Gemini CLI

# Global  → ~/.gemini/settings.json
npx @cangdev/jtl-components install gemini

# Project → .gemini/settings.json
npx @cangdev/jtl-components install gemini --local

Codex (OpenAI Codex CLI)

# Global  → ~/.codex/config.json
npx @cangdev/jtl-components install codex

# Project → .codex/config.json
npx @cangdev/jtl-components install codex --local

Cline (VS Code extension)

# Global  → VS Code extension global storage
npx @cangdev/jtl-components install cline

# Project → .vscode/mcp.json
npx @cangdev/jtl-components install cline --local

GitHub Copilot (VS Code)

Copilot only reads workspace config — --local is implicit.

# Project → .vscode/mcp.json
npx @cangdev/jtl-components install copilot

Kilo Code

# Global  → VS Code extension global storage
npx @cangdev/jtl-components install kilo

# Project → .vscode/mcp.json
npx @cangdev/jtl-components install kilo --local

Pi / Hermes / Google Antigravity

These agents read .mcp.json in the project root.

npx @cangdev/jtl-components install pi
npx @cangdev/jtl-components install hermes
npx @cangdev/jtl-components install antigravity

Manual config

If auto-install doesn't cover your agent, add this entry to its MCP config file:

{
  "mcpServers": {
    "jtl-components": {
      "command": "npx",
      "args": ["-y", "@cangdev/jtl-components", "stdio"]
    }
  }
}

For agents that require a type field (.mcp.json-based configs):

{
  "mcpServers": {
    "jtl-components": {
      "command": "npx",
      "args": ["-y", "@cangdev/jtl-components", "stdio"],
      "type": "stdio"
    }
  }
}

Tools

Recommended flow: get_minimal_contextlist_componentssearch_componentsget_component(name, fields?)get_composition

| Tool | Input | Returns | | --------------------- | -------------------------------- | ----------------------------------------------------------------------- | | get_minimal_context | — | count, categories, suggested tool flow (~100 tokens) | | list_components | category?, limit?, offset? | paginated name/title/category/description (default 20 per page) | | get_component | name, fields? | sparse or full metadata; use fields to fetch only what you need | | get_components | names[], fields? | batch fetch up to 10 components — avoids N+1 get_component calls | | search_components | query, limit? | ranked hits with relevance scores (max 20) | | suggest_component | task, limit? | top recommendations with reasoning + import path | | get_composition | name | sub-exports + real JSX showing how compound parts nest | | init | — | install commands (npm/pnpm/yarn) + Tailwind v4 global CSS + setup steps | | map_native_html | tags | native HTML tag(s) → JTL replacement component(s) | | get_tokens | category?, search? | design tokens (CSS vars) for color, typography, border-radius |


Development (this repo)

# from repo root
pnpm install
pnpm generate-registry      # -> packages/mcp-server/registry.json

Run locally

# stdio
pnpm --filter @cangdev/jtl-components dev:stdio

# HTTP (listens on http://127.0.0.1:3030/mcp)
pnpm --filter @cangdev/jtl-components dev:http

Regenerate after component changes

pnpm generate-registry

Build

pnpm --filter @cangdev/jtl-components build

Publish

cd packages/mcp-server
npm publish --access public