Smile.io MCP server

Look up loyalty customers, points history, rewards and VIP tiers, and add points or activities. Hosted by usefulapi — connect from Claude, Cursor, or any MCP client.

Claude

  1. Open Settings → Connectors → Add custom connector
  2. Paste this URL:
    https://smile-io.usefulapi.io/mcp
  3. Authenticate with Smile.io when prompted

Cursor · VS Code · Windsurf · Cline

Add to your MCP config, then reload & authorize:

{
  "mcpServers": {
    "smile-io": {
      "url": "https://smile-io.usefulapi.io/mcp"
    }
  }
}
live16 toolsFree 100 tool calls / monthPro $9/mo · $90/yr

Tools 16

ToolTypeWhat it does
smile_list_customersread
List customers
List loyalty-program customers, newest first, with their points balance, state and VIP tier id. Look a customer up by exact email, or filter by state or last-updated time. Cursor-paginated (metadata.next_cursor). Smile: GET /customers.
smile_get_customerread
Get a customer
Fetch one customer by Smile customer ID: name, email, state, points_balance, referral_url, vip_tier_id, and optionally their VIP status with current and next tier. Smile: GET /customers/{id}.
smile_list_points_transactionsread
List points transactions
List points transactions (every earn, spend and manual adjustment), newest first — e.g. a customer's full points history. Each has points_change (+/-), a customer-visible description and a merchant internal_note. Cursor-paginated. Smile: GET /points_transactions.
smile_get_points_transactionread
Get a points transaction
Fetch one points transaction by ID. Smile: GET /points_transactions/{id}.
smile_list_points_productsread
List points products
List points products — the rewards customers can buy with points. 'fixed' products cost points_price; 'variable' products trade variable_points_step points for variable_points_step_reward_value, between variable_points_min and variable_points_max. Each embeds its reward. Page-numbered (page, page_size); a page shorter than page_size is the last. Smile: GET /points_products.
smile_get_points_productread
Get a points product
Fetch one points product (a way to redeem points) by ID, including its reward. Smile: GET /points_products/{id}.
smile_list_reward_fulfillmentsread
List reward fulfillments
List rewards that have been issued to customers — usually discount codes — with code, fulfillment_status (pending/issued/cancelled/failed), usage_status (used/unused/untracked), used_at and expires_at. Use customer_id to answer 'what codes does this customer have?'. Cursor-paginated. Smile: GET /reward_fulfillments.
smile_list_earning_rulesread
List earning rules
List the enabled earning rules — the ways customers earn points or rewards (placing an order, signing up, birthdays, custom activities), with reward, reward_value, earning_limit and any VIP-tier restriction. Cursor-paginated. Smile: GET /earning_rules.
smile_list_vip_tiersread
List VIP tiers
List the VIP program's tiers, sorted by milestone (the threshold to reach each tier), optionally with each tier's perks and entry rewards. Smile: GET /vip_tiers.
smile_get_points_settingsread
Get points settings
Fetch the points program's configuration, e.g. the points currency label ("Points", "Stars"). Smile: GET /points_settings.
smile_get_referral_settingsread
Get referral settings
Fetch the referral program's configuration: whether it is active, and the sender (advocate) and receiver (friend) rewards. Smile: GET /referral_settings.
smile_create_points_transactionwrite
Adjust a customer's points balance
WRITE: add or deduct points from a customer's balance (a manual adjustment, e.g. a goodwill credit or a correction). points_change > 0 adds, < 0 deducts; Smile rejects a deduction that would make the balance negative. Undo by creating an opposite adjustment. `description` is shown to the customer; `internal_note` is merchant-only. To reward a customer for completing an action, prefer smile_create_activity. Requires the points_transaction:write scope. Smile: POST /points_transactions.
smile_create_activitywrite
Record a customer activity
WRITE: record that a customer performed an action (identified by an activity type token configured in Smile Admin, e.g. a custom 'newsletter signup' activity). Smile then asynchronously applies the store's earning rules and may issue points or rewards. Identify the customer by customer_id OR customer_email (exactly one). Pass distinct_id (e.g. an order number) to make it idempotent — a second activity with the same token + distinct_id is rejected. Custom activity types need Smile's Plus/Enterprise plan. Requires the activity:write scope. Smile: POST /activities.
smile_purchase_points_productwrite
Redeem a customer's points for a reward
WRITE — SPENDS THE CUSTOMER'S POINTS: redeem points on the customer's behalf by purchasing a points product; Smile deducts the points and issues the reward (the response's points_purchase.reward_fulfillment usually holds a discount code). Only do this when the customer asked for it. For a 'variable' product pass points_to_spend; leave it out for 'fixed' products. There is no API to cancel a redemption — a mistaken one can only be compensated with smile_create_points_transaction. Requires the points_purchase:write scope. Smile: POST /points_products/{id}/purchase.
smile_usage_statusmeta
Usage status (free-tier meter)
Report the caller's current free-tier usage this month: calls used, monthly limit, remaining, and whether the cap is reached. Read-only; does not count against the meter.
smile_upgrademeta
Upgrade to Pro (unlimited)
Subscribe to the Pro plan for UNLIMITED Smile.io tool calls (the free tier caps monthly usage). Choose monthly ($9/month) or yearly ($90/year — 2 months free) billing. Returns a Stripe Checkout link to open in your browser; after payment your account upgrades automatically. Read-only; does not count against the meter.

Pricing

PlanPriceLimit
Free$0100 tool calls / month
Proper user$9/mo · $90/yrUnlimited

This is a Model Context Protocol endpoint — meant to be connected from an AI client, not opened in a browser. An invalid_token response at the URL is the auth gate working as designed; clients authenticate automatically.

More Commerce & Memberships MCP servers

BettermodeBloomerangBooqableBreeze ChMSEcwidElvantoEventbriteFoxy.ioGumroadHumanitixLearnWorldsLittle Green LightLoyverseMemberfulNeon CRMOwnerRezPrintfulPrintifyRaiselyRechargeSwellTeamUpTitoUnleashed SoftwareVirtuousWild Apricot

All Commerce & Memberships servers →