io.github.aspekt19/loyal-spark
repo:https://github.com/aspekt19/unboxed-loyalty-spark
Onchain loyalty MCP on Base: programs, mint, rewards, vouchers for AI agents.
- transport:
- remote
- credential class:
- open
Owner verification
Not yet verified. Verifying proves you control this server and is free, permanently — it never changes a published score.
Start verification →Tools
- activate_loyalty_programshallow
For legacy ERC-20 programs: returns unpauseUtility + enableMinting calldata. For B20 programs: no-op (already active).
- bazaar_discover_mcp_serversshallow
Discover third-party MCP servers published in Coinbase CDP's Bazaar. Read-only. Filter by free-text q and/or network.
- bazaar_discover_resourcesshallow
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_pay_and_callshallow
Pay and call any x402-paid HTTPS endpoint using the merchant agent's CDP MPC wallet (EIP-3009 exact scheme on Base USDC). Probes the URL for HTTP 402, picks a compatible requirement, signs TransferWithAuthorization via CDP, retries with X-PAYMENT header, and returns the paid response. Requires scope 'mint' and a pre-created CDP wallet. Safety cap: max_usdc (default 0.25, hard limit 10).
- bazaar_probe_x402shallow
GET a candidate x402 URL and, if it responds HTTP 402, return the parsed payment requirements (accepts[]) so the caller can decide whether to pay. HTTPS only. No signing performed.
- cancel_stale_offersshallow
Cancel marketplace offers that have been active for more than N days with no completions. Admin-only action tool.
- check_voucher_statusshallow
Check voucher status by code or ID. Public endpoint — no API key or authentication required.
- confirm_mint_feeshallow
Confirm that the protocol fee transaction for a previous mint/earn was broadcast on Base. Verifies the fee mint on-chain and clears the obligation. Unconfirmed fee obligations block future mints.
- create_gift_certificateshallow
Create a gift / welcome certificate (UDS-style) with a unique 6-character redemption code (LOYAL-XXXXXX). Customer redeems via QR or by entering the code; merchant then mints tokens on-chain. Use for welcome bonuses, promo campaigns, partnership gifts.
- create_loyalty_programshallow
Get factory calldata to deploy a new loyalty token on Base. Defaults to B20 (Base native ERC-20 superset, single tx, active immediately). Pass token_standard='erc20' for the legacy factory. For B20, MINT_ROLE is granted atomically to the merchant admin AND to the agent's CDP wallet (or explicit extra_minters) so autonomous agents can mint with no follow-up transaction.
- create_personalized_offershallow
Create a personalized offer for a specific customer. Use when analytics reveal engagement patterns (e.g., inactive customers, high-value segments).
- create_rewardshallow
Create a new reward redeemable with loyalty tokens
- delete_reportshallow
Delete a report that is no longer relevant. Use to clean up outdated or irrelevant reports.
- earn_pointsshallow
Calculate and mint loyalty tokens based on purchase amount and program's cashback rate. Returns a fee-first `calls[]` bundle (protocol fee mint first, then the customer mint) — submit in order, atomically via EIP-5792 if supported, then call confirm_mint_fee (or POST /agent-api/mint/confirm). Unconfirmed fee obligations block future mints.
- export_customersshallow
Export customer data for a specific loyalty program. Returns wallet addresses, voucher stats, balances, and tier info. Use for analytics, segmentation, and personalized offers.
- generate_program_defaultsshallow
Workflow planner: field catalog, required parameters, next_actions, and non-binding examples. External agents must choose their own name, symbol, and economics.
- get_my_profileshallow
Get authenticated agent's profile
- get_platform_infoshallow
Get info about Loyal Spark protocol on Base L2
- get_platform_statsshallow
Get global platform statistics across all merchants. Admin-only: requires agent owned by an admin wallet.
- get_program_analyticsshallow
Get analytics for your loyalty programs
- get_program_workflow_statusshallow
Explain the next merchant action: current_step, required fields, and ordered next_actions (you provide all parameter values)
- get_token_balanceshallow
Get loyalty token balance and tier info for a customer
- list_gift_certificatesshallow
List gift certificates issued by the agent's merchant (with status and redemption info).
- list_loyalty_programsshallow
List loyalty programs owned by the agent's merchant
- list_marketplace_offersshallow
List active token trading offers on the marketplace
- list_my_reportsshallow
List your previously submitted reports. Allows reviewing past reports, checking status (new/reviewed/done), and identifying what still needs attention.
- list_rewardsshallow
List rewards for a loyalty program by token_address. Includes redemption metrics (total vouchers issued, redeemed, and last-30-day counts) for each reward.
- mark_gift_certificate_mintedshallow
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.
- mint_loyalty_tokensshallow
Record mint intent and get a fee-first `calls[]` bundle: protocol fee mint FIRST, then the recipient mint. The protocol fee is charged in the merchant's own loyalty tokens (not USDC). Submit both calls in order (atomically via EIP-5792 send_calls if your wallet supports it), then call confirm_mint_fee (or POST /agent-api/mint/confirm) with the fee tx hash. Unconfirmed fee obligations block future mints.
- redeem_rewardshallow
Redeem a reward by providing a verified token transfer transaction hash. Creates a voucher for the customer.
- register_loyalty_programshallow
Register a deployed token as a loyalty program in the database. B20 tokens are registered as active; legacy ERC-20 as inactive (activate next).
- revoke_gift_certificateshallow
Revoke an active gift certificate (status active → revoked). Only the issuing merchant can revoke. Already-redeemed/minted certificates cannot be revoked.
- send_reportshallow
Send a report to the developer/owner. Use this to submit SEO audits, growth ideas, data reports, anomalies, recommendations, or weekly summaries. The report will appear in the merchant's Agent Reports dashboard.
- transfer_loyalty_tokensshallow
Get calldata to transfer loyalty tokens between wallets
- update_program_configshallow
Update default cashback_rate and/or points_per_dollar for a program (same as merchant dashboard sliders)
- update_program_statusshallow
Update program status in database after onchain activation/pause
- update_report_statusshallow
Update report status to 'reviewed' or 'done'. Use 'done' when the action items have been completed. Use 'reviewed' to acknowledge a report.
- update_reward_statusshallow
Activate or deactivate a reward in the catalog. Use to manage reward availability based on analytics.
- use_vouchershallow
Mark a voucher as used (redeemed by customer at merchant). Merchant-only operation.
Embed this server’s score
Tool count and median score across every tool in this server’s corpus — honest in a way a single cherry-picked tool’s badge wouldn’t be.
[](https://vouch.tools/servers/a0ae2eb3-85b8-4bd7-95f4-e3e4e0794f1d)