bootstrap-dpyc-operator

bootstrap-dpyc-operator is a skill for Claude Code from lonniev/tollbooth-sample. It costs 101 tokens per session (2,573 once invoked), scanned A, original, Apache-2.0.

A workflow for turning an existing REST API or MCP server into a DPYC paid MCP server. It uses Bitcoin Lightning for small payments, Nostr for identity, and a tollbooth SDK to charge for tool calls.

In plain words
What is it for?
Creating a paid wrapper around an API or MCP server, setting tool prices, tracking prepaid balances, identifying users, and recording payment activity.
Why use it?
It provides the project structure and payment machinery needed to charge users for API or MCP access instead of building those parts from scratch.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the bootstrap-dpyc-operator plugin — 1 skill, 1 MCP server shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/lonniev/tollbooth-sample/bootstrap-dpyc-operator
Any agent
npx skills add lonniev/tollbooth-sample --skill bootstrap-dpyc-operator
Clone the repo
git clone --depth 1 https://github.com/lonniev/tollbooth-sample

Made for: Claude Code.

Or install bootstrap-dpyc-operator, the plugin that ships this one along with the rest of its 1 skill, 1 MCP server.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for bootstrap-dpyc-operator

README.md
[![agentmods](https://agentmods.dev/badge/skills/lonniev/tollbooth-sample/bootstrap-dpyc-operator.svg)](https://agentmods.dev/skills/lonniev/tollbooth-sample/bootstrap-dpyc-operator)
Your own site
<a href="https://agentmods.dev/skills/lonniev/tollbooth-sample/bootstrap-dpyc-operator"><img src="https://agentmods.dev/badge/skills/lonniev/tollbooth-sample/bootstrap-dpyc-operator.svg" alt="Measured on agentmods" height="20"></a>
Per session 101 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,573 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00101 $0.02573
Opus 5 $0.00051 $0.01287
Sonnet 5 $0.00020 $0.00515
Haiku 4.5 $0.00010 $0.00257

Measured 5d ago against content hash 70d5a84bb2f0, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

bootstrap-dpyc-operator scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/bootstrap-dpyc-operator/SKILL.md · 164 lines

How it starts

The opening of the file, as written. The whole thing — 164 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Bootstrap a DPYC Tollbooth Operator MCP

This skill scaffolds a new DPYC Operator MCP server that wraps a user's existing service. The operator sells its tools for Bitcoin Lightning micropayments: patrons pre-fund a satoshi balance (identified by a Nostr npub, no KYC), and each tool call debits credits at a price the operator sets dynamically. All the payment, identity, vault, and audit machinery comes from the tollbooth-dpyc SDK — the user only supplies domain logic.

The canonical template is the tollbooth-sample repo. This skill always fetches it live so it never goes stale, then mirrors its structure into a new project.

The one rule: the template is the source of truth

Do not invent structure, versions, or APIs from memory. Clone tollbooth-sample and copy what is actually there. The SDK evolves; the live template reflects the current shape.

Procedure

1. Confirm inputs

Gather (ask only for what the user did not already provide):

  • Service name / slug — short, lowercase, e.g. weather, polygon, wiki. Becomes the tool prefix (<slug>_check_balance, <slug>_<your_tool>).
  • One-line description of what the service does.
  • Path to the user's existing code and its shape: a REST API, a stdio MCP, or an HTTP MCP. Detect the shape yourself if you can see the code (look for FastMCP, an MCP Server, stdio transport, or plain HTTP handlers vs. a REST client).

If the upstream service needs credentials (API key, OAuth), note that — it affects the credential template and whether a per-call session module is warranted (see references/sessions-and-vaults.md).

2. Fetch the live template

git clone --depth 1 https://github.com/lonniev/tollbooth-sample.git /tmp/tollbooth-sample-template

Then read, from the clone:

  • pyproject.toml — the live wheel pin (e.g. tollbooth-dpyc[nostr]==X.Y.Z). Never hardcode a version; copy whatever the template pins today.
  • src/tollbooth_sample/server.py — the bootstrap anatomy you will mirror.
  • src/tollbooth_sample/weather.py — the domain-module exemplar (pure logic, no billing).
  • src/tollbooth_sample/config.py, fastmcp.json, .fastmcp.yaml, renovate.json, .github/workflows/ci.yml, tests/ — copy these with only names/slugs changed.

Read the full file on GitHub · 164 lines

Files

What ships with it

5 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 5d ago First seen · 164 lines · 101 tokens per session scan A 70d5a84bb2f0

Subscribe to this mod's changes

bootstrap-dpyc-operator is a skill published in the GitHub repository lonniev/tollbooth-sample (0 stars, last pushed 2d ago), licensed Apache-2.0. It adds 101 tokens to every session and 2,573 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

sparkbtcbot

Give an AI agent a self-custodial Bitcoin wallet on the Spark L2. Covers wallet init from a BIP39 mnemonic, zero-fee Spark and BTKN/LRC20 token transfers, Lightning invoices (create and pay), Spark native invoices, L402 paywall payment, L1 deposits and cooperative withdrawals, and message signing. Make sure to use…

echennells/sparkbtcbot · 215 tokens

btcpay-mcp

MCP server for BTCPay Server — enables AI agents to manage Bitcoin and Lightning merchant payments. 21 tools, 77 tests, MIT license.

ThomsenDrake/btcpay-mcp · 37 tokens

saturnzap

Non-custodial Lightning wallet for AI agents via sz CLI: send/receive sats, pay invoices, auto-pay HTTP 402 (L402), manage channels and liquidity. Use when: (1) paying for API access with Lightning, (2) creating or paying BOLT11 invoices, (3) checking wallet balance or channel health, (4) managing peers and channels.…

lqwdtech/SaturnZap · 98 tokens

satrank-l402

Discover and score L402 endpoints on Bitcoin Lightning before paying. Use when an agent needs to call a paid API and wants a Bayesian trust posterior + offline-verifiable Nostr assertion. Bitcoin-pure, no x402/EVM.

proofoftrust21/satrank · 52 tokens

lightning-architecture-review

Review Bitcoin Lightning Network protocol designs, compare channel factory approaches, and analyze Layer 2 scaling tradeoffs. Covers trust models, on-chain footprint, consensus requirements, HTLC/PTLC compatibility, liveness, and watchtower support.

8144225309/superscalar-mcp · 52 tokens

lightning-channel-factories

Technical reference on Lightning Network channel factories, multi-party channels, LSP architectures, and Bitcoin Layer 2 scaling without soft forks. Covers Decker-Wattenhofer, timeout trees, MuSig2 key aggregation, HTLC/PTLC forwarding, and watchtower breach detection.

8144225309/superscalar-mcp · 61 tokens