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

@flying-money/mcp

v0.1.0

Published

MCP server: lets Claude, Hermes and any MCP agent pay APIs from a capped budget its owner funded (Flying Money).

Readme

MCP server (@flying-money/mcp)

Docs: https://useflyingmoney.vercel.app/agent.md · Reference: docs/site/mcp.md

An MCP server that lets any MCP-capable agent (Claude Desktop or Claude Code, Hermes-based agents, and others) pay APIs from a budget its owner gives it, and ask its owner for one. The budget's limits are enforced on-chain, not by the prompt.

Start it with one setting

The only setting you need is your owner's wallet address:

claude mcp add flying-money -e FM_OWNER=0xYourWallet -- npx -y @flying-money/mcp

On first run the server makes its own spending key and keeps it in ~/.flying-money/agent-key (readable only by you). It never prints or returns the key. A spending key holds no money: it can only spend budgets its owner funds, and only at the seller each one names. Call fm_status to see your spending address.

Then, when a paid service needs a budget, fm_request_budget sends your owner a request (or gives you a link for them). The owner approves it in the app. Nobody copies keys or ids by hand.

Tools

| Tool | Input | Output | |---|---|---| | fm_status | none | Your spending address and budgets: network, seller, amount, spent, remaining, end date (read-only) | | fm_explain | none | Plain-language rules: who you can pay, how much, until when | | fm_quote | url | The price and accepted networks, without paying | | fm_paid_fetch | url, method?, body?, max_price? | The response and the payment. Refuses prices above max_price or the per-request cap | | fm_request_budget | service, amount, days, reason | Asks your owner for a budget; moves no money | | fm_request_status | requestId | Whether your owner approved it |

There is no tool to give or top up a budget, and no tool returns the spending key. Only the owner can fund one, from their own wallet.

Settings (environment)

| Variable | | |---|---| | FM_OWNER | Your owner's wallet address, so you can ask them for budgets | | FM_OWNER_GRANT | Optional: the owner's permission to send requests straight to their inbox (from People & agents in the app) | | AGENT_KEY | Optional: bring your own spending key instead of the one the server makes | | FM_KEY_FILE | Where the made key is kept (default agent-key next to FM_STORE) | | AGENT_CERTIFICATES | Optional: budget ids already given to you, comma-separated | | AGENT_CHAINS | Registry keys, comma-separated (default arbitrum-sepolia) | | FM_MAX_PRICE | Per-request cap in USDC (default 0.05) | | FM_STORE | Durable outbox file (default ~/.flying-money/outbox.json) |

Until the package is published to npm, build it from the repository (pnpm install && pnpm build) and use node /path/to/flying-money/packages/mcp/dist/bin.js instead of npx -y @flying-money/mcp.

Claude Desktop

In claude_desktop_config.json:

{
  "mcpServers": {
    "flying-money": {
      "command": "npx",
      "args": ["-y", "@flying-money/mcp"],
      "env": { "FM_OWNER": "0xYourWallet" }
    }
  }
}

Any MCP client over HTTP

npx -y @flying-money/mcp --http 8788

This serves streamable HTTP at http://127.0.0.1:8788/mcp, for this machine only.

Notes

  • max_price is checked against the seller's quoted price before paying. The per-request cap (FM_MAX_PRICE) and the budget's amount always apply.
  • Failed requests are not charged: the seller turns the price into credit for your next request.