Loyalteez MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOYALTEEZ_NETWORK | No | Network to use - mainnet (default) or testnet | mainnet |
| LOYALTEEZ_BRAND_ID | No | Your brand wallet address (optional, can also be provided per-tool) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| resources | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| loyalteez_create_eventB | Create a custom event for your loyalty program. Events are infinitely flexible - any string can be an event type. Once created, the backend handles: fire event → check auth → reward from balance. See also: loyalteez://docs/guides/custom-events |
| loyalteez_create_events_batchB | Create multiple events at once. Perfect for setting up entire programs. Returns all created events plus platform-specific implementation code. See also: loyalteez://docs/guides/custom-events |
| loyalteez_track_eventB | Fire any event. Works for ANY event type - predefined or custom. The backend handles: check auth (brandId) → check eligibility → reward from balance. See also: loyalteez://docs/api/rest-api |
| loyalteez_get_event_configA | Get all active event configurations for a brand, including custom events, reward amounts, and detection methods. Use this to understand what events are available and how much LTZ each event rewards. See also: loyalteez://docs/api/rest-api |
| loyalteez_bulk_eventsB | Submit multiple events in a single request. Use this for batch processing, importing historical data, or high-volume integrations. More efficient than calling track_event multiple times. See also: loyalteez://docs/api/rest-api |
| loyalteez_admin_rewardA | Manually reward users (mod/admin triggered). Wrapper around track_event with admin context. Use this when admins want to manually reward users for special contributions. See also: loyalteez://docs/api/rest-api |
| loyalteez_design_programB | Design a complete loyalty program from context. AI analyzes your app/community and generates optimal event structure, tiers, streaks, and implementation code. Uses documentation context to generate platform-specific implementations and best practices. See also:
|
| loyalteez_resolve_userA | Convert any platform identity to a Loyalteez wallet. Creates wallet if needed. Uses deterministic email pattern: {platform}_{userId}@loyalteez.app. See also: loyalteez://docs/architecture |
| loyalteez_streak_checkinB | Process a streak check-in with automatic multipliers and milestones. Tracks consecutive daily activity and applies bonus multipliers. See also: loyalteez://docs/shared-services/streak-service |
| loyalteez_get_leaderboardB | Get ranked leaderboards by any metric. Supports multiple time periods and platform filtering. See also: loyalteez://docs/shared-services/leaderboard-service |
| loyalteez_get_streak_statusB | Get a user's current streak status including streak length, multiplier, next milestone, and whether they've checked in today. See also: loyalteez://docs/shared-services/streak-service |
| loyalteez_claim_streak_milestoneA | Claim a milestone bonus (7, 30, 100, 365 days) for a user's streak. Returns the bonus LTZ amount awarded. See also: loyalteez://docs/shared-services/streak-service |
| loyalteez_log_activityB | Track voice time, messages, reactions with daily caps. Returns reward earned, daily progress, and cap status. See also: loyalteez://docs/shared-services/activity-service |
| loyalteez_calculate_rewardA | Calculate final reward with role multipliers & bonuses. Returns breakdown of base reward, multipliers, and final amount. Supports Discord role bonuses (multipliers 1.0-5.0x and flat bonuses 0-1000 LTZ). Multiple roles combine based on stacking mode (multiplicative, additive, highest_only). See also: loyalteez://docs/shared-services/tier-service |
| loyalteez_update_leaderboard_statsA | Update user statistics after rewarding them. This keeps leaderboard data current. Call after every reward distribution. See also: loyalteez://docs/shared-services/leaderboard-service |
| loyalteez_get_user_balanceA | Get a user's current LTZ balance and recent transaction history. Use this to display balance in your app or verify rewards were distributed. Implementation Note: LTZ balances are stored on-chain. If the API endpoint is unavailable:
See also: loyalteez://docs/api/rest-api, loyalteez://contracts/ltz-token |
| loyalteez_check_eligibilityA | Check if a user is eligible to receive a reward for a specific event. Returns eligibility status, cooldown info, and claim history. Use this BEFORE tracking an event to validate the user can receive the reward. Implementation Note: Eligibility checking requires event configuration (maxClaims, cooldown, reward) and user claim history. If the endpoint is unavailable, eligibility can be determined by:
See also: loyalteez://docs/api/rest-api |
| loyalteez_get_user_statsA | Get comprehensive stats for a single user including balance, lifetime earnings, streak, activity, and rank. Implementation Note: User stats aggregate data from multiple services. If the aggregation endpoint is unavailable, stats can be obtained by calling:
See also: loyalteez://docs/shared-services/leaderboard-service |
| loyalteez_relay_transactionB | Execute a gasless blockchain transaction. Users can claim perks, transfer LTZ, or interact with Loyalteez contracts without needing ETH for gas. Requires Privy authentication. See also: loyalteez://docs/api/gas-relayer |
| loyalteez_create_dropA | Create time-limited reward drops (reaction drops, claim buttons). Returns drop ID, claim URL, and embed data for posting. See also: loyalteez://docs/shared-services/drops-service |
| loyalteez_claim_dropB | Process a drop claim from a user. Returns success status, reward amount, position, and remaining claims. See also: loyalteez://docs/shared-services/drops-service |
| loyalteez_process_third_party_eventA | Handle events from Mee6, Arcane, Tatsu, etc. Parses bot messages and converts to Loyalteez events. Use this to integrate with existing Discord leveling bots. See also: loyalteez://docs/integrations/third-party |
| loyalteez_list_perksA | Get all available perks (NFT rewards) that users can claim with their LTZ balance. Returns perk details, pricing, and availability. See also: loyalteez://docs/shared-services/perks-service |
| loyalteez_check_perk_eligibilityB | Check if user can claim a specific perk. Returns eligibility status, balance check, cost, and missing amount. See also: loyalteez://docs/shared-services/perks-service |
| loyalteez_redeem_perkA | Redeem a perk for a user. Creates a redemption record and returns confirmation code. Note: You must separately deduct LTZ from the user's balance. See also: loyalteez://docs/shared-services/perks-service |
| loyalteez_get_user_achievementsB | Get all achievements for a user, showing progress toward each and which are unlocked. See also: loyalteez://docs/shared-services/achievement-service |
| loyalteez_update_achievement_progressA | Update user progress toward an achievement. When progress reaches the threshold, the achievement automatically unlocks. Returns newly unlocked achievements. See also: loyalteez://docs/shared-services/achievement-service |
| loyalteez_health_checkA | Check the health status of Loyalteez APIs. Verifies that the Event Handler, database, blockchain, and Privy services are operational. Useful for diagnostics and verifying API availability before making calls. See also: loyalteez://docs/api/rest-api |
| loyalteez_validate_webhookA | Validate a webhook signature to ensure the request is from Loyalteez. Use this to verify webhook authenticity before processing events. Webhook signatures use HMAC-SHA256. Always verify signatures to prevent unauthorized requests. See also: loyalteez://docs/guides/webhooks |
| loyalteez_webhook_exampleA | Generate complete webhook receiver code for your framework. Returns ready-to-use code with signature verification, error handling, and event processing. Supports: Node.js/Express, Next.js API routes, Python/Flask, Ruby/Rails, PHP. See also: loyalteez://docs/guides/webhooks |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| LTZ Token Contract | ERC-20 token contract address on Soneium |
| Perk NFT Contract | ERC-1155 perk NFT contract |
| PointsSale Contract | Contract for purchasing LTZ |
| All Contracts | All Loyalteez contract addresses |
| Soneium Network Configuration | Network details for connecting to Soneium Mainnet |
| Standard Event Types | Pre-defined event types and their typical reward amounts |
| Shared Services API Reference | Gamification services: Streaks, Leaderboards, Achievements, Perks |
| OAuth Provider ID Formats | User ID formats for each supported OAuth provider |
| Error Codes Reference | Complete reference for HTTP status codes and error responses |
| Error Handling Patterns | Best practices and code examples for handling errors |
| Rate Limits by Endpoint | Complete rate limit reference for all API endpoints |
| Rate Limit Handling Strategies | Code examples and best practices for handling rate limits |
| JavaScript SDK Reference | Complete JavaScript SDK method reference with examples |
| Mobile SDK Examples | Mobile integration examples for React Native, iOS, Android, and Flutter |
| Webhook Event Types | Complete reference of webhook event types and their payloads |
TDQS
Scored across 30 tools
Many event-related tools overlap: create_event vs create_events_batch, and track_event vs bulk_events/admin_reward/process_third_party_event are easy to confuse. get_user_stats also duplicates data available from get_user_balance, get_streak_status, and get_leaderboard. Descriptions help, but an agent can still misselect among the batch/fire/admin paths.
All tools use a consistent loyalteez_ prefix and snake_case, with most following a verb_noun pattern (create_event, get_user_balance, redeem_perk). Exceptions like streak_checkin, bulk_events, admin_reward, and health_check are noun-first but still readable and only minor deviations.
30 tools is heavy for a single MCP server, well above the typical 3-15 range. Although the loyalty domain is broad, many event/reward utilities could be consolidated, making the set feel burdensome for an agent to navigate.
Core lifecycle coverage exists for events, rewards, streaks, leaderboards, perks, achievements, drops, and webhooks. However, notable gaps remain: no update/delete for event configs, perks, or achievements, and redeem_perk requires separate balance deduction without a clear dedicated tool, creating potential dead ends.