{
  "name": "Loyal Spark",
  "description": "Onchain loyalty on Base (chain 8453). A write key requires a Shopify store plan or a paid Pro or Enterprise plan; otherwise agent-register-siwe returns HTTP 402 next_action pay_x402. Then GET /workflow/program-status and follow next_actions.",
  "url": "https://api.loyalspark.online/loyalty-mcp",
  "version": "1.0.0",
  "documentationUrl": "https://loyalspark.online/for-agents",
  "provider": {
    "organization": "Loyal Spark",
    "url": "https://loyalspark.online"
  },
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "stateTransitionHistory": false
  },
  "authentication": {
    "schemes": ["apiKey"],
    "credentials": "header x-api-key: lsk_... or Authorization: Bearer lsk_..."
  },
  "defaultInputModes": ["application/json", "text/plain"],
  "defaultOutputModes": ["application/json", "text/plain"],
  "skills": [
    {
      "id": "merchant-loyalty",
      "name": "Merchant loyalty",
      "description": "Deploy a loyalty program, mint tokens, and redeem vouchers on Base.",
      "tags": ["loyalty", "base", "mint"]
    }
  ],
  "interfaces": {
    "mcp": {
      "url": "https://api.loyalspark.online/loyalty-mcp",
      "transport": "streamable-http",
      "card": "https://loyalspark.online/.well-known/mcp.json",
      "auth": "x-api-key: lsk_"
    },
    "rest": {
      "openapi": "https://loyalspark.online/openapi.json",
      "baseUrl": "https://api.loyalspark.online/agent-api"
    },
    "siwe": {
      "first": true,
      "nonceUrl": "https://api.loyalspark.online/siwe-nonce",
      "registerUrl": "https://api.loyalspark.online/agent-register-siwe",
      "domain": "loyalspark.online",
      "uri": "https://loyalspark.online",
      "chainId": 8453,
      "version": "1",
      "statement": "Register Loyal Spark merchant agent",
      "body": {
        "message": "EIP-4361 string",
        "signature": "0x...",
        "name": "agent name",
        "scopes": ["mint", "create_program", "manage_rewards", "trade"]
      },
      "docs": "https://loyalspark.online/.well-known/skills/00-getting-started.md",
      "note": "Write key only when the wallet already has a Shopify store plan or a paid Pro or Enterprise plan. Otherwise HTTP 402 error_code payment_required. The same wallet and name rotates and recovers the key. Paid POST /x402-gateway/register-agent is read-only and cannot mint."
    }
  }
}
