electricskateboard
Server Details
Live prices for e-skateboards, onewheels, scooters and e-bikes: buy now or wait, with the evidence.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 7 tools
Tools mostly target distinct concerns: search_products for discovery, product_price/price_history for a single product's pricing, fake_sales vs todays_deals for suspicious vs defensible discounts, and the two 'where' tools for shops and legality. There is mild overlap between product_price, price_history, and todays_deals (all touch price claims), but the descriptions draw clear boundaries (current full picture vs archived captures vs defended deals).
All names use lowercase snake_case, which is consistent, but the grammatical styles are mixed: noun phrases (fake_sales, price_history, product_price, todays_deals), an imperative (search_products), and question phrases (where_can_i_ride, where_to_buy). It remains readable but lacks a single predictable pattern.
Seven tools is well within a sensible range for a price-transparency and skateboard-legality server. Each tool covers a distinct capability (search, single-product pricing, history, fake-deal detection, deals, shop ranking, legality) with no obvious filler.
Coverage is solid for the stated purpose: product discovery, current and historical pricing, deal validation, shop ranking, and regional legality. Minor gaps exist (no brand/category listing, no cross-product comparison or watch/alert capability), but core workflows are supported.
Available Tools
7 toolsfake_salesDiscounts that are not discountsBRead-onlyIdempotentInspect
Products where one shop advertises a discount while another quietly charges less for the same thing, or where the crossed-out price is one nobody actually charges.
| Name | Required | Description | Default |
|---|---|---|---|
| brand | No | Brand name, e.g. "Meepo", "Onewheel", "Exway". | |
| limit | No | How many results (default 10, max 50). | |
| vehicle | No | One of: electric-skateboard, electric-scooter, onewheel, electric-bike, skateboard. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and openWorldHint=false, so the safety profile is covered. The description contributes semantic framing (what constitutes a 'fake' discount) but says nothing about pagination, result ordering, or how many matches typically come back.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One tight sentence with no filler, front-loading the anomaly definition. It is efficient, though the abstraction level means the reader still has to infer that the output is a product list.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-required-parameter read-only tool with annotations and full schema coverage, the description is adequate but thin: no output shape (no output schema exists) and no routing against the three sibling tools that return overlapping deal/price data.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so brand, limit and vehicle are fully documented in the schema, including the default/max for limit and the allowed vehicle values. The description adds no parameter meaning beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description defines a precise domain concept: products with illusory discounts (cross-shop price gaps or phantom crossed-out prices). An agent can tell what class of data this returns, though unlike a sibling-aware definition it never names or contrasts with todays_deals or price_history, which occupy similar territory.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance at all. With siblings like todays_deals and price_history, an agent has no stated condition for preferring fake_sales over a plain deals listing or a price-history lookup.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
price_historyWhat this page charged in the pastARead-onlyIdempotentInspect
Dated captures of one product page from the Internet Archive, oldest first, with today's price at the same shop as the last point, and the number of captures found (fewer than two means the past price is unknown).
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | A product URL or path on electricskateboard.com, e.g. "/decks/onewheel/gt-s-series-11db9". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only, idempotent, non-destructive, and closed-world behavior, so the bar is low. The description still adds real value by disclosing ordering (oldest first), that today's live price is appended as the final point, and the interpretation rule that fewer than two captures means the past price is unknown.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that opens with the core resource and scope before the qualifiers. Every clause carries information, though the trailing parenthetical about capture counts makes it slightly run-on.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of explaining return values, and it does so: an ordered list of dated captures, an appended current price, and a capture count. It stops short of describing the exact shape of each point, but the agent has enough to call and interpret it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema itself documents the URL format with a concrete example. The description only adds the constraint that it operates on a single product page, which is marginal beyond the schema. Baseline 3 applies when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: dated historical price captures of one product page, sourced from the Internet Archive. The 'Internet Archive' framing implicitly separates it from live-price siblings like product_price and fake_sales, but no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than stated: a reader infers this is for checking past prices. There is no explicit when-to-use/when-not, no routing to product_price for current prices or fake_sales for manipulation detection, so the agent must guess the boundary itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
product_priceEvery shop charging for one productARead-onlyIdempotentInspect
The full price picture of one product: every shop we read, their price and stock, the spread, and whether a dated archive capture contradicts the claim that today is its lowest.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | A product URL or path on electricskateboard.com, e.g. "/decks/onewheel/gt-s-series-11db9". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly=true, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description adds useful behavioral content about what is returned (cross-shop spread, archive contradiction check), but says nothing about caching, freshness, or what happens when a shop lookup fails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that packs the return payload into one readable clause chain. Slightly dense and rhetorical in the closing archive clause, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one required param and no output schema, the description successfully conveys the shape of the response and the unusual archive-contradiction feature. Minor gaps remain about output structure and failure modes, but it is sufficient to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter with 100% schema description coverage, including an example path, so the schema carries the burden. The description adds no additional parameter semantics such as accepted formats, slug rules, or invalid-input behavior; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (one product) and enumerates exactly what is returned: every shop read, its price and stock, the spread, and an archive-capture cross-check. This clearly separates it from siblings like price_history, where_to_buy, and todays_deals.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use guidance and no routing to or from alternatives, despite heavy overlap with price_history, where_to_buy, todays_deals, and fake_sales. The agent must infer selection from the description's content alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_productsSearch tracked productsARead-onlyIdempotentInspect
Finds products by name or brand across about 480 shops. Returns, for each match, the cheapest shop, how many shops carry it, our verdict on the price, and the product URL.
| Name | Required | Description | Default |
|---|---|---|---|
| brand | No | Brand name, e.g. "Meepo", "Onewheel", "Exway". | |
| limit | No | How many results (default 10, max 50). | |
| query | Yes | Product name or brand, e.g. "Meepo V5" or "Onewheel Pint". | |
| country | No | Two-letter country code of the shop charging the best price, e.g. "US", "CA", "DE". | |
| vehicle | No | One of: electric-skateboard, electric-scooter, onewheel, electric-bike, skateboard. | |
| currency | No | Currency for max_price: USD, CAD, EUR, GBP, AUD. Defaults to USD. | |
| max_price | No | Upper bound on the best price. Requires `currency` — we never convert, so this only filters products priced in that currency. | |
| in_stock_only | No | Keep only products the cheapest shop actually has in stock. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the description earns credit by disclosing result semantics: cheapest shop per match, shop count, a price verdict, and the product URL. It adds no rate-limit or auth context, but it usefully describes the shape of the response for a tool with no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core lookup behavior and followed by the return composition. Every clause carries information and there is no padding or repetition of the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter, no-output-schema search tool, the description covers the essential behavior and return shape, and the schema covers all parameters. It is largely complete, with only the sibling-disambiguation and any pagination/ordering behavior left unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all eight parameters are already documented in the schema, including the interplay between max_price and currency. The description only restates the name/brand search dimension and adds no syntax or format detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb+resource ("Finds products by name or brand") and a scope quantifier ("across about 480 shops"), which lets an agent distinguish it from a single-product lookup. It does not, however, explicitly contrast itself with siblings like product_price or where_to_buy, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use, when-not-to-use, or alternative-naming statement. With siblings such as product_price and where_to_buy present, an agent has no guidance on why it would pick search_products over them, leaving the choice to inference from name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
todays_dealsToday's proven dealsARead-onlyIdempotentInspect
Claims we can defend today, by kind: real_deal (cheapest anywhere, or a sale a competitor confirms), just_dropped (fell since our last reading), lowest_we_have_seen, cheaper_than_years_ago (beats a dated capture), you_just_missed_it (climbed back), and last_one_standing (at least three shops carry it and exactly one can still ship it — a scarcity fact no single shop can report about itself). Recomputed twice a day.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | Which list. Defaults to real_deal. | |
| brand | No | Brand name, e.g. "Meepo", "Onewheel", "Exway". | |
| limit | No | How many results (default 10, max 50). | |
| country | No | Two-letter country code of the shop charging the best price, e.g. "US", "CA", "DE". | |
| vehicle | No | One of: electric-skateboard, electric-scooter, onewheel, electric-bike, skateboard. | |
| currency | No | Currency for max_price: USD, CAD, EUR, GBP, AUD. Defaults to USD. | |
| max_price | No | Upper bound on the best price. Requires `currency` — we never convert, so this only filters products priced in that currency. | |
| in_stock_only | No | Keep only products the cheapest shop actually has in stock. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world reads, so the burden is lighter. The description adds genuinely useful behavior the annotations cannot carry: the data is 'recomputed twice a day' and each category encodes a provenance rule (competitor-confirmed sale, comparison against a years-old capture, three-shop scarcity).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The kind definitions are front-loaded in a single dense sentence and the freshness note is a short closer; every clause earns its place by disambiguating an enum. The first sentence is long and syntactically heavy, but not padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an eight-parameter, optional-only filter tool with no output schema, the description covers the ambiguous dimension (the category meanings) and the freshness model. It stops short of describing result shape or how multiple filters combine, but those are secondary given the rich schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3, but the description goes beyond the schema by giving operational definitions for each of the six `kind` values, which the schema only enumerates. Still, it adds nothing about how brand, country, vehicle, and currency interact with one another.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states precisely what the tool returns (defensible price claims, grouped by kind) and defines every enum value, so an agent knows the resource and its scope. It does not explicitly contrast itself with siblings like search_products or fake_sales, though the 'claims we can defend' framing implicitly distances it from fake_sales.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance and no sibling is named as an alternative, so an agent must infer that this is a curated daily-deal feed rather than a general search. The only routing signal is the implicit contrast with fake_sales in the phrase 'claims we can defend'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
where_can_i_rideIs an electric skateboard legal here? (US states, Canadian provinces, Australian states and 10 more countries)ARead-onlyIdempotentInspect
For one of the 50 US states, 13 Canadian provinces and territories, 8 Australian states and territories, or the United Kingdom, New Zealand, Singapore, Hong Kong, Germany, France, the Netherlands, Spain, Austria and Switzerland: whether any statute names the electric skateboard, what it requires, the exact words of the law with section numbers, links to the primary sources and the date each was read. Statuses: encadre (a statute names it and sets conditions), interdit (not allowed on public roads), sans-texte (no statute names it), nomme-sans-regles (named, but no operating rules). Information from the statutes, not legal advice.
| Name | Required | Description | Default |
|---|---|---|---|
| jurisdiction | Yes | State or province name or code, e.g. "Michigan", "MI", "Quebec", "QC", "us-ca". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description goes beyond them by disclosing the response contents (quoted statutes, section numbers, source links, read dates) and the four status categories (encadre, interdit, sans-texte, nomme-sans-regles), plus the 'statutes, not legal advice' caveat.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Everything is packed into one long run-on sentence whose opening clause delays the core action, followed by a useful but dense status glossary. The status definitions earn their place, but the middle enumeration of countries and the stacked list of return fields could be restructured for faster scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of describing returns and does so well (status, statutory text, section numbers, sources, dates). It never states the behavior for an unsupported or misspelled jurisdiction, which is the main remaining gap for a single-parameter lookup tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already shows accepted formats ('Michigan', 'MI', 'Quebec', 'us-ca'). The description constrains the domain of valid values by listing covered states, provinces, and countries, but it does not enumerate them or clarify format rules beyond what the schema provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states exactly what the tool returns: whether a statute names electric skateboards in a given jurisdiction, what it requires, quoted statutory text with section numbers, source links, and read dates. The resource (electric skateboard legality by jurisdiction) is unmistakable and shares no overlap with the shopping-oriented siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the purpose rather than stated. There is no explicit 'when to use' guidance, no mention of what happens for unsupported jurisdictions, and no named alternative tool. The 'not legal advice' caveat is a caution rather than invocation guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
where_to_buyWhich shops carry a brand, and how honest their sales areARead-onlyIdempotentInspect
For a brand or a country: the shops we read that carry it, ranked by how many genuine deals they actually have, plus how often they badge a discount versus how often that discount survives comparison.
| Name | Required | Description | Default |
|---|---|---|---|
| brand | No | Brand name. Either brand or country is required. | |
| limit | No | How many results (default 10, max 50). | |
| country | No | Two-letter country code, e.g. "US", "CA", "DE". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and non-open-world, so the safety profile is covered. The description adds real behavioral context: results are ranked by count of genuine deals and include a badge-vs-survival discount honesty ratio, which is not derivable from structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the scoping clause ('For a brand or a country') before the ranking details. It is efficient, though the trailing clause about badge-vs-survival metrics takes a moment to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-shape burden and mostly succeeds by naming the ranked entity and the two metrics returned. It remains slightly vague on pagination/limit behavior and on what happens when both brand and country are supplied.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and all three parameters are documented in the schema, including the either/or requirement on brand and country. The description only restates the brand-or-country dimension and adds no format, default, or limit detail, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource (shops carrying a brand/country) and the ranking criterion (genuine deals, discount-badge honesty), which is distinctive versus siblings like todays_deals or price_history. It does not explicitly name a sibling or contrast with fake_sales, which it partially overlaps, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: query with a brand or a country to see which retailers carry it. There is no explicit when-to-use, when-not-to-use, or routing to an alternative such as fake_sales for discount-honesty questions, so it is minimum viable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
7 tool updates
- First observed
fake_sales - First observed
price_history - First observed
product_price - First observed
search_products - First observed
todays_deals - First observed
where_can_i_ride - First observed
where_to_buy
Related MCP Connectors
Current retail deals by category and store, with buying guides. Affiliate links.
Curated, human-reviewed deal feed for AI agents — live deal search + price watches. No auth.
Editorial picks for e-bikes, power stations, EV chargers, and robot vacuums, by use case and budget
Search 86 US retailers — 260M+ products with real-time pricing, stock, and price history.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceCollective intelligence for AI shopping agents — product intel, deals, and more33 npmMIT
- AlicenseAqualityDmaintenanceSearches UK electronics products across multiple retailers, compares prices, and provides purchase links.262 npmMIT
- FlicenseNot gradedqualityDmaintenanceDTC competitor intelligence: catalog snapshots, price history, cross-brand product comparison, and drop/restock detection for 84 Shopify-powered brands. Pay-per-call via Apify.-
- AlicenseNot gradedqualityCmaintenanceA dated log of SaaS price changes across 494 tools: old price, new price and verification date for every move, plus category-level pulse and the biggest recorded increases.36 npm2MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.