
MPP Agent
FreeFacilitate payments for HTTP 402 APIs using MPP.
Free · Opens the source repo
What MPP Agent does
The MPP Agent skill allows developers to interact with APIs that require payment for access, specifically those that respond with an HTTP 402 Payment Required status. By utilizing the Machine Payments Protocol (MPP), this skill enables seamless payment processing for per-request API access. This is particularly useful for applications that need to handle payments dynamically based on API responses, ensuring that developers can integrate payment functionality directly into their workflows.
The skill offers several client options, each tailored to different use cases. Users can choose from link-cli, Tempo Wallet, Privy Agent CLI, AgentCash, or mppx, depending on their existing setup and specific needs. For instance, if a user has Stripe Link configured, they can use link-cli for payments. Alternatively, for one-off calls or debugging, mppx is the recommended choice due to its minimal dependencies. This flexibility allows developers to select the most appropriate tool for their payment processing requirements.
To get started, users need to have Node.js installed and a funded wallet or an mppx account. The skill guides users through the process of setting up their accounts, inspecting merchant challenges, and making payments. It also includes important considerations, such as handling multiple payment methods and ensuring that wallet keys remain secure and out of the agent context. Overall, the MPP Agent skill is designed for developers looking to integrate payment functionalities into their applications efficiently and securely.
When to use it
Use this skill when you need to interact with APIs that require payment for access and want to automate the payment process.
When not to use it
This skill is not suitable for adding payment capabilities to your own API; for that, refer to server-side MPP solutions.
What you can build with it
Integrating Payments for API Access
Use the MPP Agent skill to automate payments for APIs that require payment upon access, streamlining your development process.
Choosing the Right Payment Client
Select from various clients like `link-cli`, Tempo Wallet, or `mppx` based on your existing setup and payment needs.
Debugging Payment Requests
Utilize `mppx` for one-off calls and debugging to ensure your payment processing is functioning correctly.
How to install MPP Agent
View source1. Install with the skills CLI
npx skills add nousresearch/hermes-agent/mpp-agent --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by nousresearchMPP Agent Skill
Wraps the Machine Payments Protocol (MPP, https://mpp.dev) clients so Hermes can pay for per-request API access against servers that respond with HTTP 402 Payment Required.
Three client options, all distributed via npm. Pick the lightest one that solves the user's need. Gated [linux, macos] while the broader payments tooling matures on Windows.
When to Use
- A merchant API returns
HTTP 402with awww-authenticateheader — and the user wants to actually pay it, not just log the response. - The user asks to "pay per request", "set up an agent wallet", "use Tempo / Privy / AgentCash", or wants to discover MPP-priced services.
- A Stripe Link spend has produced a Shared Payment Token (SPT) and the agent needs to attach it to the 402 challenge — in that flow, prefer
link-cli mpp pay(see thestripe-link-cliskill).
Choosing a client
| Tool | When | Setup |
|---|---|---|
link-cli | User already has Stripe Link set up, or the 402 challenge advertises method="stripe" | see the stripe-link-cli skill |
| Tempo Wallet | MPP services with spend controls, service discovery | tempo wallet login |
| Privy Agent CLI | Multi-chain wallets, browser-based funding | privy-agent-wallets login |
| AgentCash | 300+ pre-priced APIs via one USDC.e balance | npx agentcash onboard |
mppx | Dev + debugging, smallest dep surface | npm install -g mppx then mppx account create |
Default: if the user already has Stripe Link configured or the 402 challenge specifies method="stripe", use link-cli mpp pay (the stripe-link-cli skill). Otherwise mppx for one-off paid calls and debugging, and Tempo Wallet when the user wants persistent spend controls.
Prerequisites
- Node.js 20+ on
PATH - A funded wallet (Tempo / Privy / AgentCash) OR an
mppxaccount - For Tempo / Privy / AgentCash: follow their respective onboarding skills:
https://tempo.xyz/SKILL.mdhttps://agents.privy.io/skill.mdhttps://agentcash.dev/skill.md
Use web_extract to fetch any of those SKILL.md files if the user picks one.
Procedure (mppx, fastest path)
Run all commands through the terminal tool.
1. Install + create an account
npm install -g mppx
mppx account create
Store the resulting account credentials wherever the CLI tells you (the CLI writes them under its own config — do not paste them into the agent transcript).
2. Inspect the merchant's 402 challenge
If the user gives you a URL, probe it first to confirm it actually speaks MPP:
curl -i <url>
A real MPP 402 looks like:
HTTP/1.1 402 Payment Required
www-authenticate: tempo amount=0.1 currency=...
3. Pay the request
mppx <url>
For non-GET methods or request bodies:
mppx <url> --method POST --data '<json>'
mppx handles the 402 challenge/credential dance automatically and prints the merchant's actual response on success.
4. Verify the receipt
mppx attaches the receipt header automatically. To inspect:
mppx <url> -v
Procedure (Tempo Wallet)
The Tempo Wallet skill at https://tempo.xyz/SKILL.md is the canonical reference; fetch it with web_extract and follow it. Headline:
tempo wallet login
tempo wallet pay <url>
Spend controls and service discovery live in the wallet UI at https://wallet.tempo.xyz.
Pitfalls
HTTP 402withoutmethod="stripe"cannot be paid by Stripe Link. If the challenge advertises only Tempo / other methods, usemppx(or whichever wallet matches) — Link will reject it. Conversely, if it advertisesmethod="stripe", prefer Link via thestripe-link-cliskill so the spend goes through the user's approved card.- Multiple challenges in one header.
www-authenticatemay list several methods (e.g.tempo, stripe). The Link CLI'smpp decodewill pick the Stripe one;mppxwill pick Tempo. There's no single "right" client — pick by which wallet the user has funded. - Zero-amount challenges. Some MPP endpoints charge
$0.00and just want a proof credential. These work without a funded wallet. Don't refuse them as "broken." - Wallet keys never enter agent context. All four clients store keys under their own config dirs (or generate per-session ephemeral keypairs, in Privy's case). Do not
cat/read_filethem. - Server-side MPP is a different skill. If the user wants to ADD 402 to their own API, this skill is wrong — point them at https://mpp.dev/quickstart/server and the
mppx/nextjs/mppx/hono/mppx/express/mppx/elysiamiddlewares. A dedicatedmpp-serverskill may land later.
Verification
mppx --version && mppx account list
Exit code 0 means installed and an account exists.
Frequently asked questions about MPP Agent
Similar skills
WinMD API Search
Easily find and explore Windows desktop APIs.
WebMCPify
Transform any web app into an agent-ready platform.
Phoenix Tracing
Instrument LLM applications with OpenInference tracing.
Foundry Hosted Agent CopilotKit
Guidance for developing agentic web apps on Azure.
Power Automate Foundation
Connect AI agents to Power Automate seamlessly.
Power Automate Flow Builder
Efficiently build and deploy Power Automate flows programmatically.
