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

@kind-ling/igniter

v0.1.0

Published

x402 + MCP + A2A scaffolding for any agent service. Ship in 5 minutes.

Readme

Kindling Igniter

x402 + MCP + A2A scaffolding for any agent service. Ship in 5 minutes.

CI npm PyPI License: MIT

Part of Kindling — agent SEO for the agent economy.

Ecosystem tool. Igniter scaffolds the infrastructure. For x402 payment routing, also see MCPay — a compatible and complementary payment layer. For optimizing the descriptions Igniter generates, use Twig.


What it does

Kindling Igniter adds three things to any service:

  1. x402 payment middleware — agents pay before accessing your API. 402 response includes full economics disclosure before payment.
  2. A2A Agent Card — machine-readable capability declaration served at /.well-known/agent.json
  3. MCP tool definitions — semantic-search-optimized tool descriptions

Every 402 response discloses referral economics. There are no hidden splits. Agents see the economics before they pay.


Quick Start

Express

npm install @kindling/igniter
import express from 'express';
import { kindlingPayment } from '@kindling/igniter';

const app = express();

app.get('/api/forecast/:asset',
  kindlingPayment({
    payTo: '0xYourWallet',
    amount: '50000', // $0.05 USDC (6 decimals)
  }),
  (req, res) => {
    res.json({ forecast: '...' });
  }
);

FastAPI

pip install kindling-igniter
from fastapi import FastAPI, Request
from kindling_igniter import KindlingPayment

app = FastAPI()

@app.get("/api/forecast/{asset}")
@KindlingPayment(pay_to="0xYourWallet", amount=50000)  # $0.05 USDC
async def forecast(asset: str, request: Request):
    return {"forecast": "..."}

402 Response

When an agent calls without payment, they receive:

{
  "version": "1.0",
  "maxAmountRequired": "50000",
  "asset": "USDC",
  "assetAddress": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
  "payTo": "0xYourWallet",
  "chainId": 8453,
  "facilitator": "https://x402.org/facilitator",
  "referral_split_pct": 15,
  "referral_wallet": null,
  "referral_disclosure": "15% of payment settles to the referring wallet. Built with Kindling Igniter. Economics are on-chain and auditable. See: github.com/kind-ling/igniter",
  "built_with": "@kindling/[email protected]"
}

The agent pays via x402, then retries with the x-payment header. Your handler is called.


A2A Agent Card

import { generateAgentCard } from '@kindling/igniter';

const card = generateAgentCard({
  name: 'My Forecast Service',
  description: 'Probabilistic market forecasts with confidence intervals',
  url: 'https://api.yourservice.com',
  organization: 'Your Org',
  skills: [{
    id: 'generate_forecast',
    name: 'Generate Forecast',
    description: 'Returns probabilistic forecast with confidence interval',
    tags: ['forecast', 'prediction', 'market'],
    examples: ['Generate a 4-hour BTC forecast'],
  }],
});

// Serve at /.well-known/agent.json
app.get('/.well-known/agent.json', (_req, res) => res.json(card));

Configuration

All defaults are documented in kindling.config.yml.

| Parameter | Default | Description | |-----------|---------|-------------| | chainId | 8453 | Base mainnet. Use 84532 for Sepolia testnet. | | asset | USDC | Payment asset | | assetAddress | USDC on Base | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 | | facilitator | https://x402.org/facilitator | x402 payment verifier | | referralSplitPct | 15 | Referral split (0–100%). Configurable per service. | | maxAgeSeconds | 60 | Max payment receipt age |


Referral Economics

Kindling Igniter defaults to a 15% referral split — configurable from 0 to 100%. The split is:

  • Disclosed in every 402 response before payment
  • Settled on-chain (auditable by anyone)
  • Configurable: referralSplitPct: 0 to disable

Kindling Verifier only counts referral splits ≤50% toward demand score normalization. Splits above 50% are flagged as promotional. Full economics docs →


First-Party Disclosure

PUC-operated services set isFirstParty: true in their Agent Card config. This propagates is_first_party: true through all Kindling modules — Verifier, Scout routing, Documenter benchmarks. First-party services receive no scoring advantage and lose tie-breaks.


Packages

| Package | Registry | Language | |---------|---------|---------| | @kindling/igniter | npm | TypeScript/Express | | kindling-igniter | PyPI | Python/FastAPI |

More adapters welcome — see contributing →


Kindling Igniter v0.1.0 · Permanent Upper Class · MIT License