Skip to content
Back to skills

Mpp Setup

BSecurity

Scaffold an MPP project — install mppx SDK, configure payment methods, set up server middleware, and create a basic paid API endpoint. Use when starting a new MPP machine payments project from scratch.

  • 39 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 7, 2026
ai-agentstypescriptpythonrustbashnextjsexpressfastapiflaskgitapi

Works with

  • cli
  • api

Security analysis

B84/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro shows the line behind each finding and how to fix it

Scanned September 7, 2026

npx -y skills add OrcaQubits/agentic-commerce-skills-plugins --skill mpp-setup --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Mpp Setup?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Mpp Setup
[![Security: B — Skills Directory](https://www.skillsdirectory.com/api/skills/orcaqubits-mpp-setup-agentic-commerce-skills-plugin/badge)](https://www.skillsdirectory.com/skills/orcaqubits-mpp-setup-agentic-commerce-skills-plugin)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: mpp-setup
description: Scaffold an MPP project — install mppx SDK, configure payment methods, set up server middleware, and create a basic paid API endpoint. Use when starting a new MPP machine payments project from scratch.
allowed-tools: Read, Write, Edit, Bash, Grep, Glob, WebSearch, WebFetch
---

# MPP Project Setup

## Before writing code

**Fetch live docs**:
1. Fetch `https://www.npmjs.com/package/mppx` for the latest mppx SDK version, installation, and API surface
2. Web-search `site:github.com stripe-samples machine-payments` for the official sample project structure
3. Fetch `https://docs.stripe.com/payments/machine` for Stripe machine payments setup requirements
4. Web-search `site:mpp.dev overview` for the current protocol overview and getting started guide

## What This Skill Does

Scaffolds a new MPP project for monetizing HTTP services with machine payments:

1. **Detect language/framework** — TypeScript (Hono/Express/Next.js/Elysia), Python (FastAPI/Flask), or Rust
2. **Install SDK** — `npm install mppx` (TypeScript), `pip install pympp` (Python), or check mpp.dev for the Rust crate
3. **Create configuration** — Environment variables for secret key, payment method settings, Stripe keys
4. **Set up server middleware** — `Mppx.create()` with payment method configuration
5. **Create a paid endpoint** — Basic route protected by `mppx.charge()` middleware
6. **Add service discovery** — `GET /openapi.json` with `x-payment-info` extensions
7. **Set up client (optional)** — `mppx.fetch()` for consuming paid APIs

## Environment Configuration

These must be externalized (env vars or config file):
- `MPP_SECRET_KEY` — 32-byte hex key for HMAC challenge binding (generate with `openssl rand -hex 32`)
- `STRIPE_SECRET_KEY` — If using Stripe payment method
- `TEMPO_RECIPIENT_ADDRESS` — Wallet address for receiving Tempo payments
- `TEMPO_CHAIN_ID` — `4217` for Tempo mainnet
- `TEMPO_USDC_CONTRACT` — `0x20c000000000000000000000b9537d11c60e8b50` for USDC on Tempo

## Project Structure Pattern

```
my-mpp-service/
├── src/
│   ├── index.ts              # Server entry point with Mppx middleware
│   ├── routes/
│   │   ├── paid.ts           # Payment-protected endpoints
│   │   └── free.ts           # Free/health endpoints
│   ├── config.ts             # MPP and payment method configuration
│   └── openapi.ts            # Service discovery endpoint
├── .env                      # Secrets (MPP_SECRET_KEY, STRIPE_SECRET_KEY)
├── package.json
├── tsconfig.json
└── tests/
    └── payment.test.ts
```

## Key Setup Decisions

- **Payment method** — Tempo (crypto, sub-second), Stripe (cards via SPT), Lightning, or multiple
- **Payment intent** — Charge (one-time per request) or Session (streaming micropayments)
- **Framework** — Hono (recommended, lightweight), Express, Next.js, or Elysia
- **Pricing model** — Fixed per-request, dynamic based on payload, or session-based streaming

## Quick Start Pattern (Hono + Tempo)

```typescript
import { Hono } from 'hono';
import { Mppx, tempo } from 'mppx/server';

const mppx = Mppx.create({
  secretKey: process.env.MPP_SECRET_KEY,
  methods: [
    tempo.charge({
      chainId: 4217,
      currency: '0x20C000000000000000000000b9537d11c60E8b50',
      recipient: process.env.TEMPO_RECIPIENT_ADDRESS,
    }),
  ],
});

const app = new Hono();
app.get('/api/data', mppx.charge({ amount: '100' }), (c) => {
  return c.json({ data: 'premium content' });
});
```

Fetch the latest mppx README and Stripe machine payments docs for exact SDK API, current payment method configuration options, and framework-specific setup before scaffolding.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.