NestDaddy

Loyal Spark

io.github.aspekt19/loyal-spark · v1.0.4

Base MCP (39 tools) on Base: programs, mint, rewards. lsk_ key; plan limits enforced. /for-agents

Connect Remote server

Terminal
claude mcp add --transport http loyal-spark https://api.loyalspark.online/loyalty-mcp --header "x-api-key: <X_API_KEY>" --header "Authorization: Bearer <YOUR_API_KEY>"
~/.cursor/mcp.json
{
  "mcpServers": {
    "loyal-spark": {
      "url": "https://api.loyalspark.online/loyalty-mcp",
      "headers": {
        "x-api-key": "<X_API_KEY>",
        "Authorization": "Bearer <YOUR_API_KEY>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "loyal-spark": {
      "type": "http",
      "url": "https://api.loyalspark.online/loyalty-mcp",
      "headers": {
        "x-api-key": "<X_API_KEY>",
        "Authorization": "Bearer <YOUR_API_KEY>"
      }
    }
  }
}
Claude Desktop
Settings > Connectors > Add custom connector
URL: https://api.loyalspark.online/loyalty-mcp

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools 43 found in our last check

  • get_platform_info

    Get info about Loyal Spark protocol on Base L2

  • get_my_profile

    Get authenticated agent's profile, plan limits, and current-period usage

  • get_payment_info

    Free: agent Pro/Enterprise (or merchant) plan options, USDC subscription wallet, per-plan limits, annual prices, and the required-sender rule. Optional product=agent|merchant. Prefer this before paying; verify with POST /verify-agent-plan-payment action verify_payment.

  • generate_program_defaults

    Workflow planner: field catalog, required parameters, next_actions, and non-binding examples. External agents must choose their own name, symbol, and economics.

  • get_program_workflow_status

    Explain the next merchant action: current_step, required fields, and ordered next_actions (you provide all parameter values)

  • list_loyalty_programs

    List loyalty programs owned by the agent's merchant

  • create_loyalty_program

    Get factory calldata to deploy a new loyalty token on Base. Defaults to B20 (Base-native B20 asset standard, ERC-20 compatible, single tx, active immediately). Pass token_standard='erc20' for the legacy factory. For B20, MINT_ROLE is granted atomically to the merchant admin AND…

  • register_loyalty_program

    Register a deployed token as a loyalty program in the database. B20 tokens are registered as active; legacy ERC-20 as inactive (activate next).

  • activate_loyalty_program

    For legacy ERC-20 programs: returns unpauseUtility + enableMinting calldata. For B20 programs: no-op (already active).

  • update_program_status

    Update program status in database after onchain activation/pause

  • update_program_config

    Update default cashback_rate and/or points_per_dollar for a program (same as merchant dashboard sliders)

  • list_rewards

    List rewards for a loyalty program by token_address. Includes redemption metrics (total vouchers issued, redeemed, and last-30-day counts) for each reward.

  • create_reward

    Create a new reward redeemable with loyalty tokens

  • mint_loyalty_tokens

    Record a mint intent and get a fee-first calls[] bundle: protocol fee mint first (in the merchant's own loyalty tokens, not USDC), then the recipient mint. Submit both in order (atomically via EIP-5792 if supported), then call confirm_mint_fee with obligation_id, fee_tx_hash, re…

  • transfer_loyalty_tokens

    Build B20 token transfer calldata (ERC-20 compatible) to send loyalty tokens from your merchant wallet to any 0x address. Recipient: to (alias to_address).

  • earn_points

    Mint cashback tokens for a purchase at the program's cashback rate, optionally redeeming points first (points_to_redeem or redeem_all) to lower the payable amount. Returns a fee-first calls[] bundle (protocol fee mint, then the customer mint): submit in order (atomically via EIP…

  • confirm_mint_fee

    Confirm a prepared mint on Base. Verifies the protocol-fee mint and, when recipient_tx_hash is set (or the fee receipt already contains the recipient mint), writes customer_tier_status so get_token_balance leaves 0. Same hash for both fields when EIP-5792 batched the calls. A se…

  • list_mints

    List mint intents for this merchant. status=pending means transaction_hash is still null (confirm has not credited the recipient). status=completed means the recipient mint was recorded. GET /balance offchain_ledger_balance stays 0 until confirm.

  • list_fee_obligations

    List protocol-fee obligations for this API key. status=unpaid is an alias for pending. Each unpaid row includes next_action describing POST /mint/confirm.

  • get_token_balance

    Get loyalty token balance and tier info for a customer (accepts 0x Base wallet address or customer email in customer_address / customer_email)

  • get_program_analytics

    Get analytics for one of your loyalty programs. total_customers is the same count export_customers and GET /customers report; a program you do not own returns program_not_found.

  • list_marketplace_offers

    List active token trading offers on the marketplace

  • redeem_reward

    Redeem a reward by providing a verified token transfer transaction hash. Creates a voucher for the customer.

  • use_voucher

    Mark a voucher as used at the merchant. Send one of voucher_code (alias code) or voucher_id (anyOf). If neither is sent the tool returns error_code missing_identifier and an example. A voucher used before returns error_code voucher_already_used (do not retry).

  • check_voucher_status

    Check voucher status for this merchant. Send one of code, voucher_code, or voucher_id (anyOf). If none is sent the tool returns error_code missing_identifier, an example, and next_action. Anonymous public lookup is GET /agent-api/vouchers/status.

  • create_personalized_offer

    Create a personalized offer for a specific customer. Use when analytics reveal engagement patterns (e.g., inactive customers, high-value segments).

  • update_reward_status

    Activate or deactivate a reward in the catalog. Use to manage reward availability based on analytics.

  • send_report

    Internal. Send a report to the merchant's Agent Reports dashboard (SEO audits, growth ideas, anomalies, weekly summaries). Not a loyalty action.

  • list_my_reports

    Internal. List reports this agent submitted (status new, reviewed, or done).

  • update_report_status

    Internal. Set a report you submitted to reviewed or done.

  • delete_report

    Internal. Delete a report you submitted.

  • export_customers

    Export customers of one of your loyalty programs: the same wallet set and total_customers as GET /customers and get_program_analytics (voucher holders, ledger rows, completed mints), each with voucher stats, on-chain current_balance plus offchain_ledger_balance, and tier. Email-…

  • list_store_discount_codes

    List discount codes for this merchant's Shopify store, plus how customers spend points (online code, register voucher, or both).

  • update_store_discount_code

    Mark a Shopify discount code used, or cancel it and return the loyalty points. Same actions as the merchant discount-code journal.

  • set_store_sales_channel

    Set how this store's customers spend loyalty points: online (checkout code), offline (voucher at the register), or both (the shopper chooses).

  • create_gift_certificate

    Create a gift / welcome certificate (UDS-style) with a unique random redemption code (LOYAL-XXXX-XXXX-XXXX). Customer redeems via QR or by entering the code; merchant then mints tokens on-chain. Use for welcome bonuses, promo campaigns, partnership gifts.

  • list_gift_certificates

    List gift certificates issued by the agent's merchant (with status and redemption info).

  • revoke_gift_certificate

    Revoke an active gift certificate (status active -> revoked). Only the issuing merchant can revoke. Already-redeemed/minted certificates cannot be revoked.

  • mark_gift_certificate_minted

    After the merchant submits the on-chain mint transaction for a claimed gift certificate, call this to mark it as minted (status pending_mint -> redeemed) and store the mint tx hash.

  • bazaar_discover_resources

    Discover third-party x402-paid resources published in Coinbase CDP's Bazaar (docs, data feeds, AI inference, etc). Read-only. Filter by free-text q and/or network (e.g. 'base').

  • bazaar_discover_mcp_servers

    Search Coinbase CDP's Bazaar MCP catalog (search_resources) for third-party x402-payable tools. Read-only, free. Rows are run via the Bazaar MCP server's proxy_tool_call, not here.

  • bazaar_probe_x402

    Probe one x402 resource URL without paying: a single GET (https only, 5 s, 64 KB, no redirects). If it answers HTTP 402, returns a parsed summary of the x402 payment requirements (PAYMENT-REQUIRED header or accepts[]). Any other status returns error not_x402_resource with the st…

  • bazaar_pay_and_call

    Pay a Loyal Spark x402 URL on api.loyalspark.online with the merchant agent's CDP MPC wallet (EIP-3009 exact scheme, Base USDC). Other hosts are refused before any signature. Requires scope 'mint' and an active CDP wallet. max_usdc default 0.25, hard limit 10.

Headers

NameDescription
x-api-key
Required, secret
Merchant agent API key (lsk_...). Get at loyalspark.online/for-agents or SIWE.
Authorization
Optional, secret
Alternative auth: Bearer lsk_... (same key as x-api-key).

Details

Endpointhttps://api.loyalspark.online/loyalty-mcp (Streamable HTTP)
First published11 Oct 2026
Last updated11 Oct 2026
Registry nameio.github.aspekt19/loyal-spark

More data and analytics servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.