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

@curless/agentbank-mcp

v0.6.2

Published

MCP server for agentbank — let your AI agent discover Curless merchants and pay them.

Readme

@curless/agentbank-mcp

MCP server for agentbank — Curless's gateway for AI-agent payments. Lets your local AI agent (Claude Desktop, Cursor, etc.) discover Curless merchants and pay them through agent payment protocols.

Install

npx @curless/agentbank-mcp

Claude Desktop config

// ~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "agentbank": {
      "command": "npx",
      "args": ["-y", "@curless/agentbank-mcp"],
      "env": {
        "AGENTBANK_API_URL": "https://api.agentbank.example",
        "AGENTBANK_AGENT_TOKEN": "agt_..."
      }
    }
  }
}

Tools

Merchant discovery

  • list_merchants — list merchants, optionally by category
  • get_merchant — full merchant info
  • get_merchant_catalog — items + prices for a merchant
  • get_agent_card — A2A / ACP compatible agent card
  • invoke_skill — call a skill (search_availability, book_room, order_item, …)

ACP checkout (the buyer's main path — discovers, orders, and pays in one go)

  • acp_checkout ⚠️ — open an ACP checkout session for a merchant + items and complete it with a card token (Stripe Shared Payment Token; sandbox default pm_card_visa). Real money on capture.

PaymentIntents (the rail-agnostic money primitive — capture moves real money ⚠️)

  • create_payment_intent — create a PI; pass idempotencyKey for safe retries
  • get_payment_intent / list_payment_intents — status + history
  • capture_payment_intent ⚠️ — charge the rail and book the ledger

Payment Links (shareable, Stripe Payment Links)

  • create_payment_link — a shareable url for a merchant + fixed amount
  • get_payment_link — view a link before paying
  • pay_payment_link ⚠️ — pay a shared link (mints a PI)

Wallet & paywalls (this agent's own budget)

  • get_my_balance — this agent's wallet budget (available / held)
  • top_up — get a hosted top-up link to fund this agent's wallet
  • pay_payment_gate ⚠️ — pay a payment_required gate from a paywalled MCP tool (drives the MPP two-step charge), so the gated tool runs

Buyer wallet (the PERSON's own money — a shopper, not a merchant)

  • wallet_login — sign in with the buyer's email, for this session. Required before any other wallet_* tool. Demo sign-in: it does not verify the address, so it works in test mode only — a live deployment refuses it.
  • wallet_me — profile, spend limits, spent-today / spent-this-month, and whether a card is bound
  • wallet_balance — the buyer's own balance per currency
  • wallet_orders — what this buyer has bought
  • wallet_set_limits — the buyer caps their own spending. No merchant admin scope involved: before this existed the only way to change a spend policy was update_agent, which needs agentbank:admin.
  • wallet_cards — which cards are bound. An unavailable field means the list could not be read: that is unknown, not "no cards bound".
  • wallet_bind_card — bind a card so the wallet can pay with it again. Takes a Stripe reference (pm_… / tok_…) only. Never send a card number, expiry or CVC — those are tokenized in the buyer's browser and are refused by the API. Test mode only; use Stripe's pm_card_visa.
  • wallet_unbind_card — forget a bound card (detach, not delete)
  • wallet_pay_credential — turn the bound card into a one-off credential (a Stripe shared payment token) for one merchant, one amount, 15 minutes, then hand it to that merchant's checkout. The buyer's own spend limits are checked here — this is the only place they bind, and a refusal is their own limit, not a payment failure.

These use a session obtained at runtime, not AGENTBANK_AGENT_TOKEN. The agent token is configuration set by whoever installed the connector; the wallet session is the person signing in, and it expires. When it does, the tools say so — "your session expired" is never rendered as an empty balance or an empty order list.

Resources (read-only / admin)

  • get_wallet_balancesadmin/treasury only: the org's Curless balances (fiat + crypto). A plain agent:execute token gets 403 here — use get_my_balance for the agent's own budget.
  • list_agents / get_agent / update_agent — your spending entities
  • list_customers / get_customer / update_customer — end users / payers

What you can actually do is gated by the scope of the AGENTBANK_AGENT_TOKEN you set — give it agent:execute for buyer flows, agentbank:admin to manage agents/customers.

Local dev

export AGENTBANK_API_URL=http://localhost:3000
pnpm dev