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

@elenajs/mcp

v1.0.0-alpha.10

Published

MCP server that exposes Elena component metadata, scaffolding, and authoring guidance to AI assistants.

Readme

MCP server that exposes Elena scaffolding and authoring guidance

[!WARNING] Please note that @elenajs/mcp is an experimental package and not yet ready for production use. APIs may change without notice.

Table of contents

Install

npm install --save-dev @elenajs/mcp

Configuration

Claude Code

Add to .mcp.json in your project root:

{
  "mcpServers": {
    "elena": {
      "command": "npx",
      "args": ["@elenajs/mcp"]
    }
  }
}

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "elena": {
      "command": "npx",
      "args": ["@elenajs/mcp"]
    }
  }
}

You can optionally pass a project root path as an argument:

{
  "mcpServers": {
    "elena": {
      "command": "npx",
      "args": ["@elenajs/mcp", "./path/to/component-library"]
    }
  }
}

[!NOTE] The MCP server reads custom-elements.json from the project’s dist/ directory. Run elena build first to generate it.

Resources

elena://components

Returns a JSON array of all components in the project with summary information (name, tag name, description, status, type).

elena://components/{tagName}

Returns full API details for a specific component, including props with types and defaults, events, CSS custom properties, and slots.

elena://patterns

Returns a comprehensive Elena component authoring guide covering component types, static class fields, props, events, templates, CSS encapsulation patterns, lifecycle methods, SSR, framework compatibility, and best practices.

elena://frameworks

Returns a framework integration guide covering Plain HTML, Eleventy, Next.js, React, Svelte, Vue and Angular, including TypeScript declaration setup for each framework.

elena://ssr

Returns a server-side rendering guide: layout shift avoidance strategies, the @elenajs/ssr package API (register() and ssr()), Eleventy transform and shortcode patterns, and how client-side hydration works.

elena://api

Returns the full API reference for all Elena packages: @elenajs/core, @elenajs/bundler, @elenajs/ssr, @elenajs/mcp, and the build plugins.

Tools

scaffold-component

Generates JavaScript and CSS boilerplate for a new Elena component. Returns file contents without writing to disk.

Parameters:

| Parameter | Type | Required | Description | | ------------------ | ------------------------------------------------ | -------- | --------------------------------------------------------------------------------- | | name | string | Yes | Component class name in PascalCase (e.g. "DatePicker"). | | tagName | string | Yes | Custom element tag name (e.g. "elena-date-picker"). | | props | Array<{ name, type?, default?, description? }> | No | Props to define. | | events | string[] | No | Event names to delegate. | | cssProperties | Array<{ name, description? }> | No | CSS custom properties. | | description | string | No | Component description for JSDoc. | | status | "alpha" \| "beta" \| "stable" | No | Component status (default: "alpha"). | | cssEncapsulation | boolean | No | Include the all:unset encapsulation reset in CSS (default: true). | | ssr | boolean | No | Include :scope:not([hydrated]) pre-hydration styles to avoid layout shift (default: false). |

lookup-component

Queries API details for an existing component by tag name or class name. Returns props, events, CSS properties, slots, and metadata.

Parameters:

| Parameter | Type | Required | Description | | --------- | -------- | -------- | --------------------------------------------------------------------------- | | name | string | Yes | Component tag name (e.g. "elena-button") or class name (e.g. "Button"). |

get-patterns

Returns the Elena component authoring guide (same content as elena://patterns). Covers component types, static class fields, props, events, templates, CSS encapsulation, lifecycle, and best practices.

get-api-reference

Returns the full API reference for all Elena packages (same content as elena://api).

get-frameworks-guide

Returns the framework integration guide (same content as elena://frameworks). Covers Plain HTML, Eleventy, Next.js, React, Svelte, Vue, Angular, and TypeScript setup for each.

get-ssr-guide

Returns the server-side rendering guide (same content as elena://ssr). Covers layout shift avoidance, the @elenajs/ssr API, and Eleventy patterns.

Prompts

create-component

A guided workflow for creating new Elena components. The AI assistant will ask about props, events, and CSS properties, then generate boilerplate using the scaffold-component tool.

review-component

A best-practices review checklist for existing Elena components. Pass your component’s JavaScript (and optionally CSS) code to get a structured review covering props, JSDoc, CSS isolation, hydration, and framework compatibility.

Programmatic usage

import { createServer } from "@elenajs/mcp";

const server = createServer({ projectRoot: "./my-components" });

License

MIT

Copyright

Copyright © 2026 Ariel Salminen