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

@tavojs/mcp

v1.0.1

Published

Read-only Model Context Protocol server for Tavo.js documentation and project inspection.

Readme

Tavo.js MCP

@tavojs/mcp gives AI agents public Tavo.js documentation, exact Framework and UI metadata, and read-only project inspection through the Tavo.js CLI machine protocol.

Run locally

Requirements: Node.js ^20.19.0 || >=22.12.0.

npm install
npm run build
node dist/index.js

Add --project /absolute/path/to/tavo-app to enable project context, inspection, and verification. The application must have a project-local @tavojs/cli package installed; that package exposes the tavo binary used for the allowlisted machine commands.

Large projects can tune the bounded CLI runner with --timeout-ms, --max-output-bytes, and --max-concurrency. Defaults are 30 seconds, 1 MiB, and two concurrent commands; accepted limits are shown by tavo-mcp --help.

Example MCP client configuration:

{
  "mcpServers": {
    "tavo": {
      "command": "npx",
      "args": ["-y", "@tavojs/mcp", "--project", "/absolute/path/to/app"]
    }
  }
}

Run remotely

Start the documentation-only Streamable HTTP transport explicitly:

node dist/index.js \
  --transport http \
  --host 0.0.0.0 \
  --allowed-host mcp.tavojs.dev \
  --allowed-host 127.0.0.1 \
  --trust-proxy-hops 1

The hosted endpoint is designed for https://mcp.tavojs.dev/mcp. HTTP mode never accepts --project or exposes project tools. It provides /healthz and /readyz, validates Host and Origin headers, limits requests, and is designed to run behind an HTTPS reverse proxy. See Remote MCP deployment for Node.js, Docker, Nginx, environment, and security configuration.

Capabilities

  • Search task-oriented Tavo.js documentation.
  • Look up public Framework and UI APIs.
  • Find Tavo.js UI components, imports, props, examples, and accessibility guidance.
  • Read task-bounded project context and inspect routes, components, stores, files, and APIs.
  • Run scoped Tavo.js verification.
  • Bound every tool response with maxTokens (256–8192) and continuation metadata.
  • Inspect package, content, and project capability versions through tavo://status.

The server cannot generate, change, build, or install project code. It uses stdio by default, offers opt-in stateless HTTP for public documentation, and never fetches documentation at runtime.

Knowledge and project tools default to a 2,048-token response budget. Pass maxTokens when a smaller or larger result is useful. Truncated documentation results link back to their full MCP resource.

Documentation synchronization

The bundled manifest is exported by Tavo.js Website:

npm --prefix ../tavo-website run docs:export:mcp
npm run sync:content
npm run check:content
npm run schema:check

The versioned snapshot is included in this repository, so local development and check:content do not require access to the private Website codebase. sync:content refreshes it from https://tavojs.dev/.well-known/tavo-docs-v1.json by default. Set TAVO_MCP_DOCS_SOURCE to another local file path or HTTPS URL, or pass --source=<path-or-url> for a one-off override. The release workflow separately verifies that the checked-in snapshot matches the public URL before publishing.

Development

npm run typecheck
npm test
npm run test:integration
npm run test:search-eval
npm run format:check

Runtime modules are organized by responsibility: src/server.ts composes the server, src/capabilities/ registers MCP surfaces, src/schemas/ contains Zod contracts, src/transports/ owns stdio and HTTP, and src/mcp/ contains protocol response adapters. Content loading, search, configuration, and the project-local CLI boundary remain isolated in their own modules.

The published documentation contract is described by schemas/tavo-docs-v1.schema.json. CI validates Node.js 20, 22, and 24, package contents, the bundled content hash, search relevance, and production dependencies.

Contributing, security, and legal

See CONTRIBUTING.md for the development workflow and contribution requirements. Report vulnerabilities privately as described in SECURITY.md.

The software and associated documentation are available under the MIT License. The Tavo.js names and logo are not licensed under MIT; see TRADEMARKS.md.