search_deals

Pack: gamedeals · Endpoint: https://gateway.pipeworx.io/gamedeals/mcp

No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/search_deals for the schema, then POST the same URL with its arguments for the data.

Search active game deals with optional filters by store, platform, or discount level. Returns deal title, store, sale price, normal price, savings %, Metacritic score, and deal rating.

Parameters

NameTypeRequiredDescription
titlestringnoFilter deals by game title (partial match supported)
upper_pricenumbernoMaximum price filter (e.g., 5 for deals under $5)
lower_pricenumbernoMinimum price filter
store_idstringnoFilter by store ID (use list_stores to get IDs)
sort_bystringnoSort order: “Deal Rating” (default), “Price”, “Metacritic”, or “Reviews”
page_sizenumbernoNumber of results to return (default: 10, max: 60)

Example call

Arguments

{
  "upper_price": 10,
  "sort_by": "Deal Rating",
  "page_size": 20
}

curl

curl -X POST https://gateway.pipeworx.io/gamedeals/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_deals","arguments":{"upper_price":10,"sort_by":"Deal Rating","page_size":20}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('search_deals', {
  "upper_price": 10,
  "sort_by": "Deal Rating",
  "page_size": 20
});

More examples

{
  "title": "Elden Ring",
  "store_id": "1",
  "lower_price": 20,
  "upper_price": 50
}

Response shape

Always returns: total, deals

FieldTypeDescription
totalnumberTotal number of deals returned
dealsarray
Full JSON Schema
{
  "type": "object",
  "properties": {
    "total": {
      "type": "number",
      "description": "Total number of deals returned"
    },
    "deals": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "game_id": {
            "type": "string",
            "description": "CheapShark game ID"
          },
          "deal_id": {
            "type": "string",
            "description": "Unique deal identifier"
          },
          "title": {
            "type": "string",
            "description": "Game title"
          },
          "store_id": {
            "type": "string",
            "description": "Store ID where deal is available"
          },
          "sale_price": {
            "type": "number",
            "description": "Current sale price in USD"
          },
          "normal_price": {
            "type": "number",
            "description": "Regular/normal price in USD"
          },
          "savings_percent": {
            "type": "number",
            "description": "Discount percentage"
          },
          "metacritic_score": {
            "type": [
              "integer",
              "null"
            ],
            "description": "Metacritic score (0-100) or null if unavailable"
          },
          "steam_rating_percent": {
            "type": [
              "integer",
              "null"
            ],
            "description": "Steam user rating percentage or null if unavailable"
          },
          "deal_rating": {
            "type": "number",
            "description": "Community deal rating score"
          },
          "thumb": {
            "type": "string",
            "description": "Thumbnail image URL"
          }
        },
        "required": [
          "game_id",
          "deal_id",
          "title",
          "store_id",
          "sale_price",
          "normal_price",
          "savings_percent",
          "deal_rating",
          "thumb"
        ]
      }
    }
  },
  "required": [
    "total",
    "deals"
  ]
}

Connect

Add this to your MCP client config, or use one-click install buttons:

{
  "mcpServers": {
    "gamedeals": {
      "url": "https://gateway.pipeworx.io/gamedeals/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build September 22, 2026