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

mcpaas

v1.0.2

Published

MCPaaS SDK — Context, on-demand. Read souls, score repos, discover tags, query the globe.

Readme

mcpaas

npm Built with Bun License: MIT

AI context has an API. This is the client.

Every soul, score, namepoint, tag, and edge location on MCPaaS — typed, zero-dep, one import.

import { MCPaaS } from 'mcpaas';
const mcpaas = new MCPaaS();

const soul = await mcpaas.getRawSoul('spacex');

That's a live API call. Run it. You'll get SpaceX context back in ~50ms from the nearest Cloudflare edge.


Install

bun add mcpaas                     # Bun-native
npm install mcpaas                 # Also works with Node 18+, Deno, browsers, edge runtimes

What MCPaaS Does

MCPaaS is a context delivery platform running on 300+ Cloudflare edges.

| Concept | What it is | |---------|-----------| | Soul | A block of AI context — project DNA, persona, live data | | Namepoint | A claimed handle in a global directory (like DNS for context) | | Score | AI-readiness rating for a repo or namepoint (0-100) | | Tag Intel | Pattern detection and co-occurrence analysis across all namepoints | | Globe | Real-time execution stats from every edge location | | Badge | SVG score badge for any GitHub repo |

This SDK wraps the public HTTP API into typed methods with full IntelliSense.


Quick Start

import { MCPaaS } from 'mcpaas';

const mcpaas = new MCPaaS();

// Read live AI context
const soul = await mcpaas.getRawSoul('spacex');

// Score a GitHub repo's AI-readiness
const repo = await mcpaas.scoreRepo('anthropics/claude-code');
console.log(repo.score, repo.language);

// Check if a namepoint handle is available
const check = await mcpaas.check('myhandle');
console.log(check.available);

// Tag intelligence across the entire directory
const intel = await mcpaas.tagIntel();
console.log(intel.tags.length, 'tag profiles');

API Reference

Souls

| Method | Returns | Description | |--------|---------|-------------| | getSoul(name) | Promise<string> | Structured soul content | | getRawSoul(name) | Promise<string> | Plain text soul content | | listSouls() | Promise<SoulStats> | Total count, top souls, daily operations |

Scoring

| Method | Returns | Description | |--------|---------|-------------| | score(handle) | Promise<ScoreResult> | Score a namepoint (0-100) | | scoreRepo(repo) | Promise<RepoScore> | Score a GitHub repo's AI-readiness | | leaderboard() | Promise<LeaderboardResult> | Top and recent scored repos |

Directory & Discovery

| Method | Returns | Description | |--------|---------|-------------| | directory() | Promise<DirectoryResult> | Full namepoint directory with tag index | | check(handle) | Promise<CheckResult> | Handle availability and pricing | | count() | Promise<CountResult> | Claimed/remaining namepoint counts | | discover() | Promise<DiscoverResult> | Discovery feed (namepoints + souls) |

Tag Intel

| Method | Returns | Description | |--------|---------|-------------| | tagIntel() | Promise<TagIntelResult> | Tag patterns, co-occurrence, candidates, merge suggestions | | suggestTags(handle) | Promise<SuggestResult> | Suggested tags for a namepoint based on content |

Badges

| Method | Returns | Description | |--------|---------|-------------| | badge(owner, repo) | string | SVG badge URL (synchronous) |

mcpaas.badge('Wolfe-Jam', 'faf-cli')
// => "https://mcpaas.live/badge/Wolfe-Jam/faf-cli.svg"

Globe

| Method | Returns | Description | |--------|---------|-------------| | globe() | Promise<GlobeResult> | Edge location stats from 300+ Cloudflare colos |

Platform

| Method | Returns | Description | |--------|---------|-------------| | health() | Promise<HealthResult> | Service health + engine status | | info() | Promise<InfoResult> | Server name and version |


Error Handling

All methods throw MCPaaSError on non-2xx responses:

import { MCPaaS, MCPaaSError } from 'mcpaas';

try {
  await mcpaas.getSoul('nonexistent');
} catch (e) {
  if (e instanceof MCPaaSError) {
    e.status  // 404
    e.body    // "Not found"
    e.path    // "/souls/nonexistent"
  }
}

Exported Types

All response types are exported:

import type { ScoreResult, DirectoryEntry, TagIntelResult } from 'mcpaas';

Configuration

const mcpaas = new MCPaaS({
  baseUrl: 'https://mcpaas.live',  // default
});

Internals

Single file. 250 lines. Zero dependencies. Native fetch only.

src/index.ts     ← Types + MCPaaS class + MCPaaSError (that's it)
tests/sdk.test.ts ← 19 tests against live mcpaas.live

Built with Bun. Tested with Bun. Works anywhere fetch does.


Why Bun?

Bun powers Claude Code. This SDK follows the same toolchain — bun build, bun test, TypeScript-native. No transpiler config, no bundler plugins, no runtime dependencies.

Node, Deno, browsers, and edge runtimes work too. But Bun is home.


License

MIT


Built by Wolfe James | Powered by MCPaaS | Format: FAF