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

@three-ws/vanity-mcp

v0.1.1

Published

Read the three.ws vanity-address grind-bounty market and proof-of-grind rarity gallery from any AI agent. Quote a pattern's difficulty + USDC price, appraise any address's rarity, and browse the bounty board, claimable queue, stats, leaderboard, config, a

Readme


A Model Context Protocol server that gives any AI assistant the read/discovery surface of the three.ws vanity-address grind-bounty market over stdio. Quote how hard a Solana vanity pattern is and what to escrow for it, appraise the rarity of any address, and browse the live bounty board, claimable queue, stats, leaderboard, config, and the proof-of-grind gallery.

The market is secret-blind: a requester escrows a USDC bounty for a pattern, a fleet of independent workers grinds it in parallel, and the first to submit a verified key matching the pattern is paid on-chain — yet the found secret is sealed to the requester, so the worker earns the bounty without ever seeing the wallet. Posting a bounty and claiming one are the x402-paid write paths on the HTTP API; this MCP exposes the read/discovery + rarity surface. No API key, no signer, no payment — every call hits the public /api/vanity endpoints.

Install

npm install @three-ws/vanity-mcp

Or run with npx (no install):

npx @three-ws/vanity-mcp

Quick start

Claude Code, one line:

claude mcp add vanity -- npx -y @three-ws/vanity-mcp

Claude Desktop / Cursor (claude_desktop_config.json or mcp.json):

{
	"mcpServers": {
		"vanity": {
			"command": "npx",
			"args": ["-y", "@three-ws/vanity-mcp"]
		}
	}
}

Inspect the surface with the MCP Inspector:

npx -y @modelcontextprotocol/inspector npx @three-ws/vanity-mcp

Tools

| Tool | Type | What it does | | -------------------- | --------- | ---------------------------------------------------------------------------------------------------- | | vanity_quote | read-only | Price a pattern: expected attempts, rarity tier, and an honest suggested USDC bounty. Idempotent. | | vanity_appraise | read-only | Appraise any Solana address's rarity (pattern, score, bits, tier, attempts). Idempotent. | | vanity_board | read-only | Browse the grind-bounty board — filter by status, sort by recency/reward/expiry, paginate. | | vanity_open | read-only | List the claimable open-bounty queue workers poll. | | vanity_stats | read-only | Live market totals: open count, USDC escrowed, USDC paid out. | | vanity_leaderboard | read-only | Top grinders ranked by total USDC earned. | | vanity_config | read-only | Payout availability + asset/network metadata (settlement asset, decimals, networks, pricing band). | | vanity_gallery | read-only | Browse the proof-of-grind rarity gallery — sort, filter by tier/length/substring, paginate. |

vanity_quote and vanity_appraise are pure functions of their input (same pattern/address → same result), so they're marked idempotent. The other six read the live market and gallery.

Input parameters

vanity_quoteprefix (optional Base58 prefix), suffix (optional Base58 suffix), ignoreCase (bool, default false). At least one of prefix/suffix is required.

vanity_appraiseaddress (required, Base58 32–44 chars), prefixLen (int, optional), suffixLen (int, optional).

vanity_boardstatus (open | all | settled, default open), sort (recency | reward | expiry, default recency), limit (1–100, default 24), offset (default 0).

vanity_openlimit (1–100, default 30).

vanity_stats — no params.

vanity_leaderboardlimit (1–100, default 10).

vanity_config — no params.

vanity_gallerysort (score | recency, default score), tier (string), minLength (int), contains (string), limit (1–100, default 24), offset (default 0).

Example

// vanity_quote
> { "prefix": "THREE" }
{
  "ok": true,
  "pattern": { "prefix": "THREE", "suffix": null, "ignoreCase": false },
  "difficulty": { "expectedAttempts": 656356768, "tier": "epic", "tierLabel": "Epic" },
  "oracle": { "suggestedAtomics": "500000", "suggestedUsdc": "0.50" },
  "band": { "floorAtomics": 50000, "maxAtomics": 50000000, "decimals": 6, "asset": "USDC" }
}

Requirements

  • Node.js >= 20.
  • Network access to https://three.ws (or your own THREE_WS_BASE).

Environment variables

| Variable | Required | Default | | --------------------- | -------- | ------------------ | | THREE_WS_BASE | no | https://three.ws | | THREE_WS_TIMEOUT_MS | no | 20000 |

Links

  • Homepage: https://three.ws
  • Changelog: https://three.ws/changelog
  • Issues: https://github.com/nirholas/three.ws/issues
  • License: Apache-2.0 — see LICENSE