Labsco
MCP SERVER

LiveAuth MCP Server

by dulzuradev

Gate a tool behind proof-of-work or Lightning sats, meter each call, and hand back a signed receipt.

Agent Guardrails, Content Safety & Audit
Summary
The point is charging something, not charging much.

One sat per call does not build a business, but it makes a scraper unprofitable — and proof-of-work achieves the same without anyone creating an account. What comes out the other end is a signed receipt per call, which is the part that survives being questioned later.

What it is

An authentication and metering layer for agent-facing APIs. An agent proves work or pays sats, receives a short-lived JWT, and each subsequent paid call is metered and recorded as an HMAC-signed receipt that can be verified offline.

What you get
  • liveauth_mcp_start begins a session and returns a proof-of-work challenge, a Lightning invoice, or an L402 bundle hint
  • liveauth_mcp_confirm takes a solved challenge, a paid invoice or an L402 macaroon and returns a JWT
  • liveauth_mcp_charge meters usage after a call; with toolName it resolves registered per-tool pricing and records a paid revenue event
  • liveauth_mcp_refresh exchanges a refresh token for a new JWT with no re-authentication
  • liveauth_mcp_status polls session and payment state, including Lightning confirmation and expiry
  • liveauth_mcp_lnurl fetches the BOLT11 invoice for a session
  • liveauth_mcp_usage reports remaining budget, calls used and rate-limit windows
  • Receipts are signed as mcp-call-receipt-v1, so an auditor can check one without calling the service
Requirements

Npx @liveauth-labs/mcp-server runs with no configuration at all — it falls back to LiveAuth's anonymous demo project and the real proof-of-work flow, so the whole handshake can be exercised without an account. LIVEAUTH_API_KEY, an la_pk_ public key from liveauth.app, selects a specific project's policy, pricing and attribution. LIVEAUTH_API_BASE defaults to https://api.liveauth.app and points at a self-hosted instance; LIVEAUTH_DEMO defaults to false and switches on the older locally simulated Lightning demo.

Setup effort

One command — npx @liveauth-labs/mcp-server