HomeLatest OffersOffer Directory⏰ Expiring SoonSearch APIMCP ServerPricingChrome ExtensionMy Offers

The Offer.love MCP Server lets AI assistants like Claude, Cursor, and other MCP-compatible clients search credit card offers directly. Basic searches work without a key. To search your personal offers, create a free API key at /myoffers.

Quick Start

Point any MCP client to:

https://data.offer.love/mcp?key=YOUR_API_KEY

Authentication

Three ways to authenticate, from simplest to most advanced:

1. API Key (recommended)

Get a Free API Key

  1. Go to /myoffers and sign in with your email
  2. Click the 🔑 API Key button
  3. Create a key and copy it
  4. Add it to your MCP server URL as shown below

2. No auth (anonymous)

Public tools work without any key at 100 requests/day.

3. OAuth 2.0

Standard OAuth 2.1 with PKCE. Used by ChatGPT and any OAuth-compatible client. Sign in when prompted — no manual key setup needed.

Any MCP Client (ChatGPT, Claude, Cursor, etc.)

Append your key to the URL — works everywhere:

{
  "mcpServers": {
    "offer-love": {
      "url": "https://data.offer.love/mcp?key=YOUR_API_KEY"
    }
  }
}
Alternative: Header-based auth

If your client supports custom headers (Claude Desktop, Cursor), you can also use the x-api-key header or Authorization: Bearer:

{
  "mcpServers": {
    "offer-love": {
      "url": "https://data.offer.love/mcp",
      "headers": {
        "x-api-key": "YOUR_API_KEY"
      }
    }
  }
}

Without an API key, public tools (search, list, stats) still work at 100 requests/day.

Available Tools

search_offersFree

Search credit card offers by keyword

query (string) — Search query (merchant, bank, keyword)
Response
{
  "total": 4,
  "per_page": 10,
  "results": [
    {
      "offerId": "19cdd43e-...",
      "domainSld": "walmart",       // merchant slug
      "merchantName": "Walmart",    // display name
      "title": "Earn 4% Back...",    // offer headline
      "bank": "Amex",               // issuing bank
      "imgSrc": "https://...",      // merchant logo
      "addedAt": "2026-03-01",      // date added
      "expiresAt": "2026-06-15"     // expiration date
    }
  ]
}
list_by_merchantFree

List active offers from a specific merchant

merchant (string) — Merchant slug (e.g. walmart)
Response
{
  "total": 4,
  "per_page": 10,
  "results": [ // same offer objects as search ]
}
list_by_bankFree

List active offers from a specific bank

bank (string) — Bank name (Amex, Chase, Citi, Paypal, US Bank)
Response
{
  "total": 10,
  "per_page": 10,
  "results": [ ... ]
}
get_offerFree

Get a specific offer by ID

id (string) — Offer ID from search results
Response
{
  "offerId": "19cdd43e-...",
  "domainSld": "walmart",
  "merchantName": "Walmart",
  "title": "Earn 4% Back on any purchase.",
  "bank": "Amex",
  "imgSrc": "https://...",
  "addedAt": "2026-03-01",
  "expiresAt": "2026-06-15"
}
get_statsFree

Get overall statistics

Response
{
  "total": 5628,      // active offers
  "merchants": 2796,  // unique merchants
  "banks": 5           // issuing banks
}
get_banksFree

List all banks with offer counts

Response
[
  { "bank": "Paypal", "count": 1989 },
  { "bank": "Amex", "count": 1832 },
  { "bank": "Chase", "count": 1204 },
  { "bank": "Citi", "count": 412 },
  { "bank": "US Bank", "count": 191 }
]
get_trendingKey

Get trending merchants by page views

Response
{
  "total": 20,
  "per_page": 20,
  "results": [
    {
      "domainSld": "amazon",
      "views": 1523,          // page views
      "merchantName": "Amazon",
      "offerCount": 12,       // active offers
      "bank": "Amex",
      "imgSrc": "https://..."
    }
  ]
}
get_expiringKey

Get offers expiring within 7 days

Response
{
  "total": 50,
  "per_page": 50,
  "results": [ // offers sorted by expiresAt ASC ]
}
get_recentKey

Get most recently added offers

Response
{
  "total": 50,
  "per_page": 50,
  "results": [ // offers sorted by addedAt DESC ]
}
search_my_offersFree

Search your personal offers synced from the browser extension

query (Search query (e.g. starbucks)) — undefined
Response
{
  "total": 3,
  "results": [
    {
      "merchant": "starbucks",
      "title": "Earn 5% back at Starbucks",
      "bank": "Chase",
      "details": "...",
      "expiresAt": "2026-04-15",
      "cardNumber": "...1234"
    }
  ]
}

Example Prompts

Once connected, try asking your AI assistant:

Live Example

// You ask Claude: "What Chase offers are available?" // Claude calls the MCP tool automatically: Tool: list_by_bank Input: { "bank": "Chase" } // Returns 10 active Chase offers with merchant, title, expiry // Claude summarizes the results in natural language

Need Full Access?

Free tier returns basic fields (title, merchant, bank, image). Upgrade to Pro for full offer details, trending feeds, and higher limits.

Get API Key →