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

tru-mcp

v1.0.1

Published

MCP server for tru — portable identity, billing, and provisioning for AI-native apps

Readme

tru MCP Server

MCP server for tru — auth and billing API in one. Verify identity, charge users, issue virtual cards, and get risk signals on every user. Payments flow to your existing Stripe account.

Quick Setup

npx tru-mcp init

No API key needed. This detects your MCP client (Claude Code, Claude Desktop, Cursor) and writes the config automatically. Then tell your agent:

"Run dev_setup to set up tru"

Your agent will register your app, get you an API key, connect Stripe, and discover your API — all in one conversation.

If you already have an API key:

npx tru-mcp init --key tru_ak_your_key_here

Manual Config

Add to your .mcp.json (Claude Code) or equivalent:

{
  "mcpServers": {
    "tru": {
      "command": "npx",
      "args": ["-y", "tru-mcp"],
      "env": {
        "TRU_API_URL": "https://tru.so"
      }
    }
  }
}

Environment Variables

| Variable | Required | Description | |----------|----------|-------------| | TRU_API_KEY | No | Your tru API key (starts with tru_ak_). Not needed for initial setup — dev_register_app will create one. | | TRU_API_URL | No | tru server URL (default: https://tru.so) |

Getting Started

The MCP tools walk you through setup step by step:

  1. dev_setup — Full guide: what tru is, why it matters, risk signals, setup walkthrough
  2. dev_register_app — Create your app, get an API key
  3. dev_connect_stripe — Link your Stripe account to receive payments

After that, you're live. All the tools below work immediately.

Tools

Wallet

| Tool | Description | |------|-------------| | login | Authenticate with tru via the browser | | logout | Log out and clear stored credentials | | request_payment | Request a payment from a tru user — works with tru-connected apps or external merchants | | check_payment_status | Check the status of a charge or subscription request | | get_card | Request a one-time virtual card to make a purchase on behalf of a user | | request_spt | Request a Shared Payment Token for purchasing from an ACP-compatible merchant | | report_purchase | Report that an approved external purchase has been completed | | browse_apps | List all apps in the tru directory | | lookup_skill | Fetch an app's SKILL.md — how agents should interact with its API | | discover_products | List products and pricing available from an app | | check_spending | Check spending totals and remaining budget across all apps | | check_history | View recent charges and payment activity | | check_rules | List your current app rules (spending limits, permissions, escalation thresholds) | | suggest_rule | Create a new app rule to auto-approve future charges |

Developer

| Tool | Description | |------|-------------| | dev_setup | Full setup guide — what tru is, how to integrate, risk signals explained | | dev_register_app | Register a new app on tru and get an API key | | dev_connect_stripe | Link your existing Stripe account to receive payments | | dev_configure_products | Sync and configure which Stripe products agents can discover and sell | | dev_configure_login | Generate an OAuth authorization URL for a tru-integrated app | | dev_generate_skill | Crawl your site and generate an agent skill (SKILL.md) | | dev_add_agent_signup | Get the agent signup HTML snippet for your app's login page | | dev_provision_user | Auto-create a user account on a third-party app | | dev_validate | Validate an app's tru integration — checks config, endpoints, and SDK usage | | dev_enable_acp | Generate an ACP bearer token so external agents can create checkout sessions |

Why tru?

  • Risk signals from day one — every user carries a risk profile built from Stripe Radar. Use risk level, score, card funding type, country, and fingerprint reuse to set trial length, spending limits, and feature access.
  • Auth + billing in one API — stop stitching together Stripe, an identity provider, a KYC vendor, and your own spending controls.
  • Payments to your Stripe — connect via OAuth, money flows to your existing account. Same dashboard, same bank, same everything.
  • Users control spending — they set per-app rules ("auto-approve under $10"), which builds trust and increases conversion.

Example: Developer Setup

Developer: I want to integrate tru into my app

Agent: → dev_setup()
       Here's how tru works...

Agent: Let's register your app.
       → dev_register_app(service_name: "my-app", display_name: "My App")
       ✓ App created — API key: tru_ak_...

Agent: Now let's connect your Stripe account.
       → dev_connect_stripe(service_name: "my-app")
       Open this URL to authorize: https://connect.stripe.com/oauth/authorize?...

Agent: You're live. Charges approved by tru users will flow to your Stripe account.

Example: Auto-Provisioning

User: Sign me up for clayking

Agent: → login(email: "[email protected]")
       ✓ Verified — risk: low

Agent: → dev_provision_user(email: "[email protected]", service_name: "clayking")
       ✓ Provisioned — got API key and account ID

Agent: Now using clayking API on behalf of user...

Example: End User Flow

User: Sign me up for that new service

Agent: → login(email: "[email protected]")
       ✓ Verified — risk: low, score: 12, debit card, US

Agent: → request_payment(amount_cents: 999, description: "Monthly plan", merchant: "my-app")
       ✓ Auto-approved by spending rules

License

MIT