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

@poolstatis/mcp

v0.7.0

Published

Official stdio MCP server for Poolstatis agent-native product analytics

Readme

@poolstatis/mcp

Thin stdio MCP runner for a Poolstatis API instance.

POOLSTATIS_URL=https://api.example.com \
POOLSTATIS_TOKEN=pt_your_token \
pnpm dlx @poolstatis/[email protected]

POOLSTATIS_TOKEN must be a pt_ personal token or project-scoped sk_ key. POOLSTATIS_URL must be a clean HTTPS origin; HTTP is allowed only for a local loopback API during controlled development. No production URL or token is embedded in the package, and the runner never prints the token.

Node.js 22 and 24 are supported. The package is an ESM executable and speaks MCP over stdio only; stdout is reserved for protocol messages.

The root programmatic export is pinned to the same published 0.7.0 profile as the CLI. Its McpConfig intentionally has no distribution override, so callers cannot swap the reviewed public contract for another internal profile.

Browser analytics contract

Read poolstatis://standard/browser-analytics before instrumenting or diagnosing browser traffic. In 0.7.0 the embedded standard matches the production SDK/Core contract:

  • @poolstatis/sdk/browser starts collection immediately when the host calls start(); Poolstatis does not require stored consent and does not inspect Global Privacy Control;
  • the browser sends a finite $route_key and landing_route, never raw $page_path, landing_path, a full URL, query string, DOM, page text, or raw IP;
  • $country is derived server-side only from a reviewed trusted-proxy/local MMDB boundary. Client-supplied country is ignored;
  • visitors, browser-tab sessions, page views, and engagement remain separate grains. Missing terminal timing evidence is unknown, not zero.

Existing hasConsent and subscribeConsent callbacks remain optional host-owned pause controls for older integrations. They are not required by the Poolstatis runtime.

Session Replay metadata

Version 0.7.0 adds list_session_replays and get_session_replay. They return bounded, project-scoped manifest metadata and an admin viewer path. They never return rrweb events, reconstructed DOM, text, cursor samples, upload tokens or object-store keys. Recording and playback remain governed by the separate consent, host-policy, masking, retention and sandbox contract in Core.

Funnel investigations

Version 0.7.0 also publishes create_funnel_investigation, list_funnel_investigations and get_funnel_investigation. They operate on bounded saved-funnel evidence through the same project-scoped REST contract, preserve immutable lineage and integrity fingerprints, and remain descriptive rather than causal.

Compatibility

Core keeps a bounded /i/v1/events compatibility path for the previously published SDK 0.1 payload. It removes legacy raw path fields instead of rejecting the whole event. New integrations must use SDK 0.3.0 and the finite route contract. A successful HTTP response is not enough during migration: verify accepted event readback and list_ingest_warnings.