AISub

ChatGPT, Claude, Gemini, Perplexity and Grok subscription prices by country, with price history.

Should I use this

Quality & Safety

A
Description quality
92%
Schema completeness
91%
Naming quality
93%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (1)

  • LOWTool 'compare_credits' description lacks action verbin compare_credits

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~5,178Tokens (tool definitions)
~9.1 KBTypical response size
Significant attention impact (4.05% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "aisub": {
      "url": "https://aisub.yuanwu.ai/mcp"
    }
  }
}

Remote endpoints

https://aisub.yuanwu.ai/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢list_catalog(product, channel, locale)

List the AI subscription products, sales channels, plan keys, billing intervals and regions that AISub tracks. Call without arguments for an overview; pass a product (and optionally a channel) to also get its region codes and the currencies available for conversion. Use the returned plan keys and region codes with the other tools.

Input Schema

{
  "type": "object",
  "properties": {
    "product": {
      "type": "string",
      "enum": [
        "chatgpt",
        "claude",
        "gemini",
        "perplexity",
        "grok"
      ],
      "description": "Product: chatgpt, claude, gemini, perplexity or grok."
    },
    "channel": {
      "description": "Sales channel: web (ChatGPT website checkout, ChatGPT only) or app_store (iOS in-app purchase). Defaults to web for ChatGPT and app_store for other products.",
      "type": "string",
      "enum": [
        "web",
        "app_store"
      ]
    },
    "locale": {
      "default": "en",
      "description": "Language for region and plan names: en (default) or zh.",
      "type": "string",
      "enum": [
        "zh",
        "en"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "products": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "product": {
            "type": "string",
            "enum": [
              "chatgpt",
              "claude",
              "gemini",
              "perplexity",
              "grok"
            ]
          },
          "name": {
            "type": "string"
          },
          "provider": {
            "type": "string"
          },
          "channels": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "channel": {
                  "type": "string",
                  "enum": [
                    "web",
                    "app_store"
                  ]
                },
                "plans": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "key": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string"
                      },
                      "unit": {
                        "type": "string",
                        "enum": [
                          "person",
                          "seat",
                          "unknown"
                        ]
                      },
                      "intervals": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "month",
                            "year"
                          ]
                        }
                      }
                    },
                    "required": [
                      "key",
                      "name",
                      "unit",
                      "intervals"
                    ],
                    "additionalProperties": false
                  }
                },
                "regionCount": {
                  "type": "integer",
                  "minimum": -9007199254740991,
                  "maximum": 9007199254740991
                },
                "pricedRegionCount": {
                  "type": "integer",
                  "minimum": -9007199254740991,
                  "maximum": 9007199254740991
                },
                "regions": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "code": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "code",
                      "name"
                    ],
                    "additionalProperties": false
                  }
                },
                "currencies": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "channel",
                "plans",
                "regionCount",
                "pricedRegionCount"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "product",
          "name",
          "provider",
          "channels"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "products"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢compare_prices(product, channel, plan, interval, currency, ...)

Rank the price of one subscription plan (e.g. ChatGPT Plus, Claude Pro, Google AI Pro) across countries and regions, converted to one currency. Answers questions like "where is ChatGPT Plus cheapest?" or "how much is Claude Pro in Turkey?". Prices are monthly equivalents; for yearly billing the full-year total is also given. Each response includes when the prices and exchange rates were last updated.

Input Schema

{
  "type": "object",
  "properties": {
    "product": {
      "default": "chatgpt",
      "type": "string",
      "enum": [
        "chatgpt",
        "claude",
        "gemini",
        "perplexity",
        "grok"
      ],
      "description": "Product: chatgpt, claude, gemini, perplexity or grok."
    },
    "channel": {
      "description": "Sales channel: web (ChatGPT website checkout, ChatGPT only) or app_store (iOS in-app purchase). Defaults to web for ChatGPT and app_store for other products.",
      "type": "string",
      "enum": [
        "web",
        "app_store"
      ]
    },
    "plan": {
      "description": "Plan key from list_catalog, e.g. plus, pro, business (ChatGPT), claude_pro, gemini_ai_pro, perplexity_pro, supergrok. Defaults to the product's main plan.",
      "type": "string",
      "pattern": "^[a-zA-Z0-9_-]{1,80}$"
    },
    "interval": {
      "default": "month",
      "description": "Billing interval: month (default) or year.",
      "type": "string",
      "enum": [
        "month",
        "year"
      ]
    },
    "currency": {
      "description": "ISO 4217 currency for converted reference prices, e.g. USD, CNY, EUR. Defaults to USD for en and CNY for zh.",
      "type": "string",
      "pattern": "^[A-Z]{3}$"
    },
    "tax": {
      "default": "all",
      "description": "Only regions whose reference price has this tax label.",
      "type": "string",
      "enum": [
        "all",
        "inclusive",
        "exclusive",
        "unknown"
      ]
    },
    "sort": {
      "default": "asc",
      "description": "asc: cheapest first (default); desc: most expensive first; name: alphabetical.",
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "name"
      ]
    },
    "region": {
      "description": "Optional filter by region code, name or currency, e.g. JP, Japan, 日本, EUR.",
      "type": "string",
      "maxLength": 100
    },
    "limit": {
      "default": 10,
      "description": "Rows per page, 1–50.",
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    },
    "locale": {
      "default": "en",
      "description": "Language for region and plan names: en (default) or zh.",
      "type": "string",
      "enum": [
        "zh",
        "en"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "product": {
      "type": "string"
    },
    "channel": {
      "type": "string"
    },
    "plan": {
      "type": "string"
    },
    "planName": {
      "type": "string"
    },
    "unit": {
      "type": "string"
    },
    "interval": {
      "type": "string",
      "enum": [
        "month",
        "year"
      ]
    },
    "currency": {
      "type": "string"
    },
    "summary": {
      "type": "object",
      "properties": {
        "pricedRegions": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "matchingRegions": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "cheapest": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "regionCode": {
                  "type": "string"
                },
                "regionName": {
                  "type": "string"
                },
                "referencePrice": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "tax": {
                  "type": "string"
                }
              },
              "required": [
                "regionCode",
                "regionName",
                "referencePrice",
                "tax"
              ],
              "additionalProperties": false
            },
            {
              "type": "null"
            }
          ]
        },
        "median": {
          "type": [
            "string",
            "null"
          ]
        },
        "highest": {
          "type": [
            "string",
            "null"
          ]
        },
        "usReference": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "pricedRegions",
        "matchingRegions",
        "cheapest",
        "median",
        "highest",
        "usReference"
      ],
      "additionalProperties": false
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "position": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          },
          "regionCode": {
            "type": "string"
          },
          "regionName": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "ok",
              "missing_quote",
              "missing_rate",
              "unknown_basis"
            ]
          },
          "localAmount": {
            "description": "Reference price in the local currency for the billing interval; App Store yearly amounts are full-year totals.",
            "type": [
              "string",
              "null"
            ]
          },
          "localCurrency": {
            "type": [
              "string",
              "null"
            ]
          },
          "amountBasis": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "monthly",
                  "annual",
                  "unknown"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "tax": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "inclusive",
                  "exclusive",
                  "unknown"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "referencePrice": {
            "description": "Monthly-equivalent reference price converted to the requested currency.",
            "type": [
              "string",
              "null"
            ]
          },
          "yearlyTotal": {
            "description": "Full-year reference amount in the requested currency (yearly billing only).",
            "type": [
              "string",
              "null"
            ]
          },
          "vsUs": {
            "description": "Percent difference from the United States reference price.",
            "type": [
              "number",
              "null"
            ]
          },
          "quoteUpdatedAt": {
            "type": [
              "string",
              "null"
            ]
          },
          "stale": {
            "type": "boolean"
          }
        },
        "required": [
          "position",
          "regionCode",
          "regionName",
          "status",
          "localAmount",
          "localCurrency",
          "amountBasis",
          "tax",
          "referencePrice",
          "yearlyTotal",
          "vsUs",
          "quoteUpdatedAt",
          "stale"
        ],
        "additionalProperties": false
      }
    },
    "page": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "totalPages": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "dataUpdatedAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "oldestQuoteUpdatedAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "fxUpdatedAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "staleQuotes": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "fxStale": {
      "type": "boolean"
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "url": {
      "type": "string"
    }
  },
  "required": [
    "product",
    "channel",
    "plan",
    "planName",
    "unit",
    "interval",
    "currency",
    "summary",
    "rows",
    "page",
    "totalPages",
    "dataUpdatedAt",
    "oldestQuoteUpdatedAt",
    "fxUpdatedAt",
    "staleQuotes",
    "fxStale",
    "notes",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_region_prices(product, region, currency, locale)

Show every plan price of one product in one country or region, for each sales channel and billing interval, with its rank among all regions and its difference from the United States. Answers questions like "how much does ChatGPT cost in Japan?" or "is Claude cheaper in India than in the US?".

Input Schema

{
  "type": "object",
  "properties": {
    "product": {
      "default": "chatgpt",
      "type": "string",
      "enum": [
        "chatgpt",
        "claude",
        "gemini",
        "perplexity",
        "grok"
      ],
      "description": "Product: chatgpt, claude, gemini, perplexity or grok."
    },
    "region": {
      "type": "string",
      "minLength": 1,
      "maxLength": 60,
      "description": "Country or region as an ISO 3166 code (JP), English name (Japan) or Chinese name (日本)."
    },
    "currency": {
      "description": "ISO 4217 currency for converted reference prices, e.g. USD, CNY, EUR. Defaults to USD for en and CNY for zh.",
      "type": "string",
      "pattern": "^[A-Z]{3}$"
    },
    "locale": {
      "default": "en",
      "description": "Language for region and plan names: en (default) or zh.",
      "type": "string",
      "enum": [
        "zh",
        "en"
      ]
    }
  },
  "required": [
    "region"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "product": {
      "type": "string"
    },
    "region": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      },
      "required": [
        "code",
        "name"
      ],
      "additionalProperties": false
    },
    "currency": {
      "type": "string"
    },
    "prices": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "ok",
              "missing_quote",
              "missing_rate",
              "unknown_basis"
            ]
          },
          "localAmount": {
            "description": "Reference price in the local currency for the billing interval; App Store yearly amounts are full-year totals.",
            "type": [
              "string",
              "null"
            ]
          },
          "localCurrency": {
            "type": [
              "string",
              "null"
            ]
          },
          "amountBasis": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "monthly",
                  "annual",
                  "unknown"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "tax": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "inclusive",
                  "exclusive",
                  "unknown"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "referencePrice": {
            "description": "Monthly-equivalent reference price converted to the requested currency.",
            "type": [
              "string",
              "null"
            ]
          },
          "yearlyTotal": {
            "description": "Full-year reference amount in the requested currency (yearly billing only).",
            "type": [
              "string",
              "null"
            ]
          },
          "vsUs": {
            "description": "Percent difference from the United States reference price.",
            "type": [
              "number",
              "null"
            ]
          },
          "quoteUpdatedAt": {
            "type": [
              "string",
              "null"
            ]
          },
          "stale": {
            "type": "boolean"
          },
          "channel": {
            "type": "string"
          },
          "plan": {
            "type": "string"
          },
          "planName": {
            "type": "string"
          },
          "unit": {
            "type": "string"
          },
          "interval": {
            "type": "string",
            "enum": [
              "month",
              "year"
            ]
          },
          "rank": {
            "anyOf": [
              {
                "type": "integer",
                "minimum": -9007199254740991,
                "maximum": 9007199254740991
              },
              {
                "type": "null"
              }
            ],
            "description": "Position among priced regions, cheapest = 1."
          },
          "pricedRegions": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          }
        },
        "required": [
          "status",
          "localAmount",
          "localCurrency",
          "amountBasis",
          "tax",
          "referencePrice",
          "yearlyTotal",
          "vsUs",
          "quoteUpdatedAt",
          "stale",
          "channel",
          "plan",
          "planName",
          "unit",
          "interval",
          "rank",
          "pricedRegions"
        ],
        "additionalProperties": false
      }
    },
    "missing": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "channel": {
            "type": "string"
          },
          "plan": {
            "type": "string"
          },
          "interval": {
            "type": "string",
            "enum": [
              "month",
              "year"
            ]
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "channel",
          "plan",
          "interval",
          "reason"
        ],
        "additionalProperties": false
      }
    },
    "dataUpdatedAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "fxUpdatedAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "url": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "product",
    "region",
    "currency",
    "prices",
    "missing",
    "dataUpdatedAt",
    "fxUpdatedAt",
    "notes",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_price_history(product, channel, plan, interval, region, ...)

List the recorded price changes of one plan in one region, newest first, with the previous and new local price. Use it for questions like "has ChatGPT Plus gotten more expensive in Brazil?".

Input Schema

{
  "type": "object",
  "properties": {
    "product": {
      "default": "chatgpt",
      "type": "string",
      "enum": [
        "chatgpt",
        "claude",
        "gemini",
        "perplexity",
        "grok"
      ],
      "description": "Product: chatgpt, claude, gemini, perplexity or grok."
    },
    "channel": {
      "description": "Sales channel: web (ChatGPT website checkout, ChatGPT only) or app_store (iOS in-app purchase). Defaults to web for ChatGPT and app_store for other products.",
      "type": "string",
      "enum": [
        "web",
        "app_store"
      ]
    },
    "plan": {
      "description": "Plan key from list_catalog, e.g. plus, pro, business (ChatGPT), claude_pro, gemini_ai_pro, perplexity_pro, supergrok. Defaults to the product's main plan.",
      "type": "string",
      "pattern": "^[a-zA-Z0-9_-]{1,80}$"
    },
    "interval": {
      "default": "month",
      "description": "Billing interval: month (default) or year.",
      "type": "string",
      "enum": [
        "month",
        "year"
      ]
    },
    "region": {
      "type": "string",
      "minLength": 1,
      "maxLength": 60,
      "description": "Country or region as an ISO 3166 code (JP), English name (Japan) or Chinese name (日本)."
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    },
    "locale": {
      "default": "en",
      "description": "Language for region and plan names: en (default) or zh.",
      "type": "string",
      "enum": [
        "zh",
        "en"
      ]
    }
  },
  "required": [
    "region"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "product": {
      "type": "string"
    },
    "channel": {
      "type": "string"
    },
    "plan": {
      "type": "string"
    },
    "planName": {
      "type": "string"
    },
    "interval": {
      "type": "string",
      "enum": [
        "month",
        "year"
      ]
    },
    "region": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      },
      "required": [
        "code",
        "name"
      ],
      "additionalProperties": false
    },
    "changes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "changedAt": {
            "type": "string",
            "description": "When AISub first recorded the new price; not necessarily when it took effect."
          },
          "previousObservedAt": {
            "type": "string"
          },
          "previous": {
            "type": "object",
            "properties": {
              "amount": {
                "type": "string"
              },
              "currency": {
                "type": "string"
              },
              "tax": {
                "type": "string",
                "enum": [
                  "inclusive",
                  "exclusive",
                  "unknown"
                ]
              },
              "amountBasis": {
                "type": "string",
                "enum": [
                  "monthly",
                  "annual",
                  "unknown"
                ]
              },
              "unit": {
                "type": "string",
                "enum": [
                  "person",
                  "seat",
                  "unknown"
                ]
              }
            },
            "required": [
              "amount",
              "currency",
              "tax",
              "amountBasis",
              "unit"
            ],
            "additionalProperties": false
          },
          "current": {
            "type": "object",
            "properties": {
              "amount": {
                "type": "string"
              },
              "currency": {
                "type": "string"
              },
              "tax": {
                "type": "string",
                "enum": [
                  "inclusive",
                  "exclusive",
                  "unknown"
                ]
              },
              "amountBasis": {
                "type": "string",
                "enum": [
                  "monthly",
                  "annual",
                  "unknown"
                ]
              },
              "unit": {
                "type": "string",
                "enum": [
                  "person",
                  "seat",
                  "unknown"
                ]
              }
            },
            "required": [
              "amount",
              "currency",
              "tax",
              "amountBasis",
              "unit"
            ],
            "additionalProperties": false
          },
          "changePercent": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "changedAt",
          "previousObservedAt",
          "previous",
          "current",
          "changePercent"
        ],
        "additionalProperties": false
      }
    },
    "trackedSince": {
      "description": "Earliest observation AISub retains for this series; no changes before it are known.",
      "type": [
        "string",
        "null"
      ]
    },
    "url": {
      "type": "string"
    }
  },
  "required": [
    "product",
    "channel",
    "plan",
    "planName",
    "interval",
    "region",
    "changes",
    "trackedSince",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_recent_price_changes(days, product, limit, locale)

List monthly subscription price changes AISub recorded across all regions in the last N days, newest first. Use it for questions like "which countries changed ChatGPT prices this month?".

Input Schema

{
  "type": "object",
  "properties": {
    "days": {
      "default": 30,
      "description": "Look-back window in days, 1–90.",
      "type": "integer",
      "minimum": 1,
      "maximum": 90
    },
    "product": {
      "description": "Only changes for this product.",
      "type": "string",
      "enum": [
        "chatgpt",
        "claude",
        "gemini",
        "perplexity",
        "grok"
      ]
    },
    "limit": {
      "default": 20,
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "locale": {
      "default": "en",
      "description": "Language for region and plan names: en (default) or zh.",
      "type": "string",
      "enum": [
        "zh",
        "en"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "total": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "changes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "changedAt": {
            "type": "string"
          },
          "product": {
            "type": "string"
          },
          "channel": {
            "type": "string"
          },
          "plan": {
            "type": "string"
          },
          "planName": {
            "type": "string"
          },
          "regionCode": {
            "type": "string"
          },
          "regionName": {
            "type": "string"
          },
          "previous": {
            "type": "object",
            "properties": {
              "amount": {
                "type": "string"
              },
              "currency": {
                "type": "string"
              },
              "tax": {
                "type": "string",
                "enum": [
                  "inclusive",
                  "exclusive",
                  "unknown"
                ]
              },
              "amountBasis": {
                "type": "string",
                "enum": [
                  "monthly",
                  "annual",
                  "unknown"
                ]
              },
              "unit": {
                "type": "string",
                "enum": [
                  "person",
                  "seat",
                  "unknown"
                ]
              }
            },
            "required": [
              "amount",
              "currency",
              "tax",
              "amountBasis",
              "unit"
            ],
            "additionalProperties": false
          },
          "current": {
            "type": "object",
            "properties": {
              "amount": {
                "type": "string"
              },
              "currency": {
                "type": "string"
              },
              "tax": {
                "type": "string",
                "enum": [
                  "inclusive",
                  "exclusive",
                  "unknown"
                ]
              },
              "amountBasis": {
                "type": "string",
                "enum": [
                  "monthly",
                  "annual",
                  "unknown"
                ]
              },
              "unit": {
                "type": "string",
                "enum": [
                  "person",
                  "seat",
                  "unknown"
                ]
              }
            },
            "required": [
              "amount",
              "currency",
              "tax",
              "amountBasis",
              "unit"
            ],
            "additionalProperties": false
          },
          "changePercent": {
            "type": [
              "number",
              "null"
            ]
          },
          "url": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "changedAt",
          "product",
          "channel",
          "plan",
          "planName",
          "regionCode",
          "regionName",
          "previous",
          "current",
          "changePercent",
          "url"
        ],
        "additionalProperties": false
      }
    },
    "trackedSince": {
      "type": [
        "string",
        "null"
      ]
    },
    "url": {
      "type": "string"
    }
  },
  "required": [
    "days",
    "total",
    "changes",
    "trackedSince",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢compare_credits(product, channel, currency, pack, sort, ...)

Compare credit pack prices (extra usage credits sold on top of a subscription, such as ChatGPT credits) across regions, normalised to the price per 100 credits in one currency. Answers questions like "where are ChatGPT credits cheapest?".

Input Schema

{
  "type": "object",
  "properties": {
    "product": {
      "default": "chatgpt",
      "type": "string",
      "enum": [
        "chatgpt",
        "claude",
        "gemini",
        "perplexity",
        "grok"
      ],
      "description": "Product: chatgpt, claude, gemini, perplexity or grok."
    },
    "channel": {
      "description": "Sales channel: web (ChatGPT website checkout, ChatGPT only) or app_store (iOS in-app purchase). Defaults to web for ChatGPT and app_store for other products.",
      "type": "string",
      "enum": [
        "web",
        "app_store"
      ]
    },
    "currency": {
      "description": "ISO 4217 currency for converted reference prices, e.g. USD, CNY, EUR. Defaults to USD for en and CNY for zh.",
      "type": "string",
      "pattern": "^[A-Z]{3}$"
    },
    "pack": {
      "default": "all",
      "description": "all (default), unit for single-credit prices, or a pack quantity such as 1000.",
      "type": "string",
      "pattern": "^(?:all|unit|[1-9]\\d{0,30})$"
    },
    "sort": {
      "default": "price_asc",
      "description": "price_asc: cheapest per 100 credits first (default); price_desc; region: alphabetical.",
      "type": "string",
      "enum": [
        "price_asc",
        "price_desc",
        "region"
      ]
    },
    "region": {
      "description": "Optional filter by region code or name.",
      "type": "string",
      "maxLength": 100
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    },
    "locale": {
      "default": "en",
      "description": "Language for region and plan names: en (default) or zh.",
      "type": "string",
      "enum": [
        "zh",
        "en"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "product": {
      "type": "string"
    },
    "channel": {
      "type": "string"
    },
    "currency": {
      "type": "string"
    },
    "pack": {
      "type": "string"
    },
    "availablePacks": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "position": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          },
          "regionCode": {
            "type": "string"
          },
          "regionName": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "kind": {
            "type": "string",
            "enum": [
              "unit",
              "pack"
            ]
          },
          "quantity": {
            "type": [
              "string",
              "null"
            ]
          },
          "localAmount": {
            "type": "string"
          },
          "localCurrency": {
            "type": "string"
          },
          "per100Local": {
            "type": "string",
            "description": "Price per 100 credits in the local currency."
          },
          "per100": {
            "description": "Price per 100 credits converted to the requested currency.",
            "type": [
              "string",
              "null"
            ]
          },
          "updatedAt": {
            "type": "string"
          },
          "stale": {
            "type": "boolean"
          }
        },
        "required": [
          "position",
          "regionCode",
          "regionName",
          "name",
          "kind",
          "quantity",
          "localAmount",
          "localCurrency",
          "per100Local",
          "per100",
          "updatedAt",
          "stale"
        ],
        "additionalProperties": false
      }
    },
    "matchingOffers": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "page": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "totalPages": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "dataUpdatedAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "fxUpdatedAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "url": {
      "type": "string"
    }
  },
  "required": [
    "product",
    "channel",
    "currency",
    "pack",
    "availablePacks",
    "rows",
    "matchingOffers",
    "page",
    "totalPages",
    "dataUpdatedAt",
    "fxUpdatedAt",
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools