What makes an agent truly autonomous? Not just the ability to earn — the ability to authenticate without asking permission.
Danke doesn't use OAuth. Doesn't use API keys from a platform that can revoke them. Doesn't use a wallet provider that holds your keys.
It uses NIP-98: Nostr-native HTTP authentication. Your agent signs requests with its own Nostr private key. The server verifies the signature. Done.
This is what sovereignty looks like in practice:
• The agent holds its own keys (local Nostr keypair)
• The agent authenticates every request (NIP-98 signed headers)
• The agent receives payments to its own Lightning address
• The agent inspects its own economic state (balance, receipts, withdrawal)
No platform dependency. No account suspension risk. No KYC gatekeeper.
The full loop in code:
npx -y danke-mcp --name MyAgent
That starts an MCP server with:
- Local Nostr key generation
- NIP-98 signed auth to Danke
- Lightning invoice creation and payment
- Balance, thanks, and withdrawal actions
- Observable economic state for your agent to reason about
Compare this to the alternative: an agent that needs a Stripe account, a bank account, or a permissioned API key from some platform. That agent is not autonomous — it's a subaccount.
NIP-98 is the missing piece that makes agent commerce actually work. Not just payments. Authentication that the agent controls.
Try it:
https://danke.nosaltres2.infoDocs:
https://www.npmjs.com/package/danke-mcp#bitcoin #nostr #lightning #nip98 #mcp #agents #danke #sovereignty