DipScout MCP
An official MCP server providing AliExpress price history, verified price drop detection, and alternative product discovery. It allows agents to check if a price is good, find the lowest price in a given timeframe, and locate cheaper alternatives, all backed by DipScout's own tracking data.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://dipscout.com/api/mcpWhat you can do with it
- Check if an AliExpress product is a good price
- Find the lowest price in the last N days
- Discover cheaper alternatives for a product
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- dipscout 1.0.0
- MCP protocol
- 2025-06-18
- Tools
- 6 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
6 advertised
buscar_promocoes — Search AliExpress deals
Lists AliExpress products with a real price drop, detected by our price history in the last 30 days and still holding (the seller's 'was' price does not count). Each product includes discount.certainty: 'verified' means the drop is proven by the time-weighted median of our readings and MAY be presented as savings; 'none' means there is no discount that can be claimed. The seller's 'was' price on the listing does not support any discount here. Quoting the percentage without the certainty next to it misinforms the reader.
{
"type": "object",
"properties": {
"busca": {
"type": "string",
"description": "Text to look for in the title, only among the top drops read (up to 100); this is not a search of the whole catalog."
},
"idioma": {
"enum": [
"en",
"de",
"pt",
"es",
"fr",
"ko",
"it",
"pl"
],
"type": "string",
"default": "en",
"description": "Optional language for the human-readable text (title, discount.explanation, discount.warning, pageUrl): \"en\" (default), \"de\", \"pt\", \"es\", \"fr\", \"ko\", \"it\" or \"pl\". Field names, numbers and currency (USD) are the same in every language."
},
"limite": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1
},
"mercado": {
"enum": [
"us",
"global"
],
"type": "string",
"description": "\"us\": only US listings, which ship within the United States only. \"global\": only listings that ship worldwide. Omit for both. For a shopper outside the US, use \"global\". Prices are always the ones read for the US."
},
"categoria": {
"enum": [
"eletronicos",
"informatica",
"casa",
"eletrodomesticos",
"beleza",
"saude",
"esportes",
"moda",
"infantil",
"pets",
"automotivo",
"mercado",
"papelaria",
"hobbies"
],
"type": "string",
"description": "Category slug. Omit to search all categories."
},
"preco_maximo": {
"type": "number",
"minimum": 0,
"description": "Maximum price in US dollars."
},
"desconto_minimo": {
"type": "integer",
"maximum": 99,
"minimum": 1,
"description": "Minimum real drop, in percent, against the typical price we measured."
},
"apenas_verificados": {
"type": "boolean",
"description": "Kept for compatibility: since 2026-10-14 this tool only returns products whose drop our price history proves."
}
}
}{
"title": "Search AliExpress deals",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}historico_de_preco — Price history for a product
Observed price series for an AliExpress product. Accepts the itemId or the product URL. Also returns the number of readings and days of tracking: with too little tracking there is no basis to claim a drop, and the response says so explicitly. `queda` is the latest drop (last 30 days) with when we detected it and the last reading that confirmed it (ISO 8601, UTC); null without a drop.
{
"type": "object",
"required": [
"produto"
],
"properties": {
"idioma": {
"enum": [
"en",
"de",
"pt",
"es",
"fr",
"ko",
"it",
"pl"
],
"type": "string",
"default": "en",
"description": "Optional language for the human-readable text (title, discount.explanation, discount.warning, pageUrl): \"en\" (default), \"de\", \"pt\", \"es\", \"fr\", \"ko\", \"it\" or \"pl\". Field names, numbers and currency (USD) are the same in every language."
},
"produto": {
"type": "string",
"description": "Numeric AliExpress product_id, or the product URL (https://www.aliexpress.com/item/<product_id>.html)."
}
}
}{
"title": "Price history for a product",
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}avaliar_preco — Is this a good price?
Use this when the user asks whether an AliExpress product is a good price, a real deal, worth buying now, or pastes an AliExpress product link and asks about it. Returns a one- or two-sentence answer measured from our own price history (today's price against the typical price we measured, the lowest and highest we recorded), the verdict code and its certainty. A product we did not track yet is read once from the AliExpress affiliate API and tracked from then on: the answer then says tracking started just now (trackingStartedNow: true), with no verdict yet. When it cannot be tracked, it says so (tracked: false) instead of guessing: report that, and do not infer a discount from the listing's "was" price. Optional `dias` adds the lowest price in that many days. Every product carries pageUrl (the DipScout page with the price chart: the citation link), buyUrl (affiliate link through DipScout, disclosed in `monetization`; the price is the same with or without it), summary and citation (a self-contained sentence measured from our price history) and verdict (the short answer to "is this a good price?").
{
"type": "object",
"required": [
"produto"
],
"properties": {
"dias": {
"type": "integer",
"maximum": 365,
"minimum": 1,
"description": "Optional: also return the lowest price recorded in this many days."
},
"idioma": {
"enum": [
"en",
"de",
"pt",
"es",
"fr",
"ko",
"it",
"pl"
],
"type": "string",
"default": "en",
"description": "Optional language for the human-readable text (title, discount.explanation, discount.warning, pageUrl): \"en\" (default), \"de\", \"pt\", \"es\", \"fr\", \"ko\", \"it\" or \"pl\". Field names, numbers and currency (USD) are the same in every language."
},
"produto": {
"type": "string",
"description": "The AliExpress product URL exactly as the user pasted it (any country or language subdomain: www.aliexpress.com, pt.aliexpress.com, aliexpress.us, aliexpress.ru, m.aliexpress.com, /item/<id>.html, /i/<id>.html, ?productId=<id>), the short link the AliExpress app's Share button copies (a.aliexpress.com/_..., s.click.aliexpress.com/e/_..., even inside the shared sentence), a DipScout product URL, or the numeric product id."
}
}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}menor_preco — Lowest price in N days
Use this when the user asks for the lowest (or cheapest) price of an AliExpress product over a period: "lowest price in the last 30 days", "has it been cheaper?", "is this the lowest price ever?". Returns the lowest price in effect during the window, when it held, and how far today's price is from it. If our tracking began after the window opened, the answer says how many of the requested days it covers; it never claims a low beyond our own history. Every product carries pageUrl (the DipScout page with the price chart: the citation link), buyUrl (affiliate link through DipScout, disclosed in `monetization`; the price is the same with or without it), summary and citation (a self-contained sentence measured from our price history) and verdict (the short answer to "is this a good price?").
{
"type": "object",
"required": [
"produto"
],
"properties": {
"dias": {
"type": "integer",
"default": 30,
"maximum": 365,
"minimum": 1,
"description": "Window in days, counted back from now."
},
"idioma": {
"enum": [
"en",
"de",
"pt",
"es",
"fr",
"ko",
"it",
"pl"
],
"type": "string",
"default": "en",
"description": "Optional language for the human-readable text (title, discount.explanation, discount.warning, pageUrl): \"en\" (default), \"de\", \"pt\", \"es\", \"fr\", \"ko\", \"it\" or \"pl\". Field names, numbers and currency (USD) are the same in every language."
},
"produto": {
"type": "string",
"description": "The AliExpress product URL exactly as the user pasted it (any country or language subdomain: www.aliexpress.com, pt.aliexpress.com, aliexpress.us, aliexpress.ru, m.aliexpress.com, /item/<id>.html, /i/<id>.html, ?productId=<id>), the short link the AliExpress app's Share button copies (a.aliexpress.com/_..., s.click.aliexpress.com/e/_..., even inside the shared sentence), a DipScout product URL, or the numeric product id."
}
}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}alternativas_mais_baratas — Cheaper alternatives
Use this when the user asks for a cheaper option, an alternative, or the same product from another store. Returns cheaper listings that have our own price history: first the same product sold by other stores (relation same_product_other_shop), then products with a similar title in the same category (relation similar_product, not necessarily the same item). Each one has its price difference and its own verdict and certainty. Every product carries pageUrl (the DipScout page with the price chart: the citation link), buyUrl (affiliate link through DipScout, disclosed in `monetization`; the price is the same with or without it), summary and citation (a self-contained sentence measured from our price history) and verdict (the short answer to "is this a good price?").
{
"type": "object",
"required": [
"produto"
],
"properties": {
"idioma": {
"enum": [
"en",
"de",
"pt",
"es",
"fr",
"ko",
"it",
"pl"
],
"type": "string",
"default": "en",
"description": "Optional language for the human-readable text (title, discount.explanation, discount.warning, pageUrl): \"en\" (default), \"de\", \"pt\", \"es\", \"fr\", \"ko\", \"it\" or \"pl\". Field names, numbers and currency (USD) are the same in every language."
},
"limite": {
"type": "integer",
"default": 5,
"maximum": 10,
"minimum": 1
},
"mercado": {
"enum": [
"us",
"global"
],
"type": "string",
"description": "\"us\": only US listings, which ship within the United States only. \"global\": only listings that ship worldwide. Omit for both. For a shopper outside the US, use \"global\". Prices are always the ones read for the US."
},
"produto": {
"type": "string",
"description": "The AliExpress product URL exactly as the user pasted it (any country or language subdomain: www.aliexpress.com, pt.aliexpress.com, aliexpress.us, aliexpress.ru, m.aliexpress.com, /item/<id>.html, /i/<id>.html, ?productId=<id>), the short link the AliExpress app's Share button copies (a.aliexpress.com/_..., s.click.aliexpress.com/e/_..., even inside the shared sentence), a DipScout product URL, or the numeric product id."
}
}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}quedas_de_preco — Detected price drops
Products whose price dropped at least 10% below the TYPICAL price of the last 14 days (median weighted by how long each price lasted — a flash sale only counts for the hours it ran). Requires 7 days of tracking. Each product includes discount.certainty: 'verified' means the drop is proven by the time-weighted median of our readings and MAY be presented as savings; 'none' means there is no discount that can be claimed. The seller's 'was' price on the listing does not support any discount here. Quoting the percentage without the certainty next to it misinforms the reader.
{
"type": "object",
"properties": {
"idioma": {
"enum": [
"en",
"de",
"pt",
"es",
"fr",
"ko",
"it",
"pl"
],
"type": "string",
"default": "en",
"description": "Optional language for the human-readable text (title, discount.explanation, discount.warning, pageUrl): \"en\" (default), \"de\", \"pt\", \"es\", \"fr\", \"ko\", \"it\" or \"pl\". Field names, numbers and currency (USD) are the same in every language."
},
"limite": {
"type": "integer",
"default": 10,
"maximum": 50,
"minimum": 1
},
"mercado": {
"enum": [
"us",
"global"
],
"type": "string",
"description": "\"us\": only US listings, which ship within the United States only. \"global\": only listings that ship worldwide. Omit for both. For a shopper outside the US, use \"global\". Prices are always the ones read for the US."
}
}
}{
"title": "Detected price drops",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
Not advertised
Resources
Not advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 696 ms
- 95th percentile latency
- 696 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 696 ms · metadata changed · 6 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http dipscout-mcp https://dipscout.com/api/mcpCodex
codex mcp add dipscout-mcp --url https://dipscout.com/api/mcpCursor
{
"mcpServers": {
"dipscout-mcp": {
"url": "https://dipscout.com/api/mcp"
}
}
}Cline
{
"mcpServers": {
"dipscout-mcp": {
"type": "streamableHttp",
"url": "https://dipscout.com/api/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"dipscout-mcp": {
"type": "http",
"url": "https://dipscout.com/api/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http dipscout-mcp https://dipscout.com/api/mcpClaude Desktop
{
"mcpServers": {
"dipscout-mcp": {
"url": "https://dipscout.com/api/mcp"
}
}
}Windsurf
{
"mcpServers": {
"dipscout-mcp": {
"serverUrl": "https://dipscout.com/api/mcp"
}
}
}Let your agent find its tools
Find servers like DipScout MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other commerce servers
Do you run DipScout MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.