bestrobotmower-mcp
Server Details
Robot lawn mower dataset from BestRobotMower.co: specs, prices, 0-5 scores, buying recommendations.
- Status
- Healthy
- Uptime
- 100.0% over 22 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Server Listing
- BestRobotMower MCP Server
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose: list (browse/filter), get (single model lookup), compare (2-5 side by side), and recommend (criteria-driven yard matching). While list and recommend both return ranked models, the descriptions make the distinction between browsing a dataset and getting a tailored recommendation explicit.
All four names follow a strict verb_noun pattern in snake_case (compare_robot_mowers, get_robot_mower, list_robot_mowers, recommend_robot_mower), with consistent pluralization on the collection-level tools and singular on the single-item get.
Four tools is lean and well-scoped for a read-only dataset server: one per core user intent (browse, inspect, compare, recommend). Nothing redundant and nothing crufty.
The read-only surface is well covered for the domain, including comparison and a recommendation helper, but there is no tool to surface valid filter/enumeration values (brands, navigation types) and no free-text search, which agents may need to discover available options.
Available Tools
4 toolscompare_robot_mowersCompare robot mowersAInspect
Compare 2 to 5 robot lawn mowers side by side across navigation, coverage, slope, cutting specs, price and the 0-5 BestRobotMower Score. Pass each model by name or slug.
| Name | Required | Description | Default |
|---|---|---|---|
| models | Yes | 2 to 5 model names or slugs to compare. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It states the operation, the required input of 2-5 models by name/slug, and the comparison dimensions, but it does not describe the response format, error behavior, or how invalid/duplicate models are handled.
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 compact sentence that leads with the action, states the accepted count and input format, and enumerates comparison dimensions without redundancy.
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 single-parameter read-only comparison tool, the description covers purpose, input arity, accepted identifiers, and the fields included in the comparison. It does not spell out the response shape, but the listed dimensions effectively indicate what the comparison returns.
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?
The input schema already documents the models parameter at 100% coverage, including min/max count and 'names or slugs.' The description repeats this ('2 to 5', 'name or slug') without adding new semantic detail, so it stays at the baseline.
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 names a specific verb ('Compare'), a concrete resource ('robot lawn mowers'), and a clear scope: 2 to 5 models, compared across named attributes. This distinguishes it from sibling tools like get_robot_mower, list_robot_mowers, and recommend_robot_mower.
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?
The description establishes when to use it: when a side-by-side comparison of multiple mowers across specific dimensions is needed. It does not explicitly name alternatives or exclusion conditions, but the comparison focus provides clear context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_robot_mowerGet one robot mowerAInspect
Get the full specs, dated price, 0-5 score and sub-scores for a single robot lawn mower by name or slug (e.g. 'Mammotion Luba 2 AWD', 'Segway Navimow i110').
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Model name, brand + model, or slug to look up. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. It does disclose the response contents (specs, dated price, score, sub-scores), which is useful, but it does not address behaviors such as not-found handling, name ambiguity, normalization, or whether the operation is purely reads with no side effects.
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 description is a single, well-structured sentence that front-loads the return value and then states the input format with examples. Every word earns its place, with no filler or redundancy.
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 simple one-parameter lookup tool, the description covers the essential invocation details: what to pass, the acceptable input formats, and what data to expect back. It does not detail the exact response shape, and there is no output schema, but the described output fields are sufficient for an agent to use the tool confidently.
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?
The schema already fully documents the single 'query' parameter, so the baseline is 3. The description adds concrete examples ('Mammotion Luba 2 AWD', 'Segway Navimow i110') and clarifies that name, brand + model, or slug are all acceptable, which helps an agent phrase queries correctly beyond the schema text.
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 uses a specific verb ('Get') and a specific resource ('a single robot lawn mower'), and clearly enumerates what is returned: full specs, dated price, 0-5 score, and sub-scores. The phrase 'by name or slug' with concrete examples makes the purpose unmistakable and distinguishes it from list/compare/recommend 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?
The description implies when to use the tool by focusing on 'a single robot lawn mower by name or slug', so an agent can infer it is for known-model lookups rather than browsing or comparing. However, it never explicitly names sibling alternatives or states when not to use them, leaving some routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_robot_mowersList robot mowersAInspect
List and filter the robot lawn mowers in the BestRobotMower.co dataset by brand, navigation type, price, lawn-area coverage, slope handling and score. Returns models ranked by the 0-5 BestRobotMower Score (highest first).
| Name | Required | Description | Default |
|---|---|---|---|
| brand | No | Filter by brand, case-insensitive substring (e.g. 'Mammotion', 'Segway', 'Husqvarna'). | |
| limit | No | Max models to return (default 10, max 76, the whole catalog). | |
| min_score | No | Only models with a BestRobotMower Score at or above this value (0-5). | |
| navigation | No | Filter by navigation type, case-insensitive substring (e.g. 'RTK', 'satellite', 'vision', 'wire'). | |
| max_price_usd | No | Only models at or below this USD price. | |
| min_slope_pct | No | Only models rated for at least this slope, in percent grade. | |
| min_lawn_area_m2 | No | Only models that cover at least this lawn area in square metres. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full disclosure burden. It usefully reveals the ordering behavior (ranked by 0-5 BestRobotMower Score, highest first), which is not derivable from the schema. It omits that this is a read-only operation and says nothing about the default 10-result cap silently truncating output, which is a real behavioral risk for an agent expecting the full catalog.
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, zero waste. The scope and filterable dimensions come first and the return ordering is front-loaded in the second sentence, so the most decision-relevant facts are read immediately.
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 read-only list tool with no annotations and no output schema, the description covers purpose, filterable fields, and result ordering, which is enough to call it correctly. The one meaningful gap is not flagging the default result cap, which the agent would otherwise have to discover in the 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 description coverage is 100%, so the schema already documents all seven filters including substrings, ranges, and defaults. The description only restates the filter categories at a coarser level, adding no syntax or format detail beyond what the schema provides; 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 verb ('List and filter') plus the exact resource (robot lawn mowers in the BestRobotMower.co dataset) and enumerates the filterable dimensions. This makes it naturally distinguishable from get_robot_mower (single model), compare_robot_mowers (side-by-side), and recommend_robot_mower (advisory), without needing to name them.
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 filter dimensions and the ranking statement, so an agent can infer this is the browse/search entry point. However, there is no explicit guidance on when to prefer this over compare_robot_mowers or recommend_robot_mower, and no stated exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recommend_robot_mowerRecommend a robot mowerAInspect
Recommend the best robot lawn mowers for a specific yard: give the lawn area in square metres and optionally the steepest slope (percent grade) and a budget in USD. Returns up to 3 models that fit, ranked by the 0-5 BestRobotMower Score, with the reason each was chosen.
| Name | Required | Description | Default |
|---|---|---|---|
| budget_usd | No | Maximum budget in USD (optional). | |
| lawn_area_m2 | Yes | Lawn area to mow, in square metres. | |
| max_slope_pct | No | Steepest slope on the lawn, in percent grade (optional). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the output behavior (up to 3 models, ranked by score, with reasons) and the optionality of inputs. However, it doesn't disclose what happens if no model fits the budget/slope constraints, whether the score is computed internally or from a database, or any rate limits or data freshness. The description adds some behavioral context but not comprehensive.
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 description is a single, well-structured sentence that front-loads the core purpose, then lists inputs and outputs in a natural order. Every clause earns its place: the input specification, the output count, the ranking criterion, and the reason. No wasted words.
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 recommendation tool with 3 simple parameters and no output schema, the description covers the essential inputs and output shape. It doesn't explain edge cases (e.g., no matching models, invalid slope values) or the meaning of the BestRobotMower Score, but these are minor gaps given the tool's simplicity. The description is complete enough for an agent to call it 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?
Schema description coverage is 100%, so the schema already documents all three parameters. The description adds context by explaining how the parameters are used (lawn area is required, slope and budget are optional constraints) and that the output is ranked by a score. This is slightly above baseline but doesn't add significant new meaning beyond the schema.
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 verb ('Recommend'), a resource ('robot lawn mowers'), and the exact inputs (lawn area, slope, budget) and output (up to 3 models ranked by BestRobotMower Score with reasons). This clearly distinguishes it from siblings like list_robot_mowers (which likely lists all) and compare_robot_mowers (which likely compares specific models).
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?
The description implies when to use this tool: when you need recommendations for a specific yard, with area required and slope/budget optional. It doesn't explicitly state when not to use it or name alternatives, but the context signals and sibling names make the use case clear. A small gap: it doesn't explicitly say 'use list_robot_mowers to see all models' or 'use compare_robot_mowers to compare specific models.'
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.
1 tool update
- Changed
list_robot_mowers2 fields changed- changed
Input schema / properties / limit / descriptionPrevious value: -"Max models to return (default 10, max 70, the whole catalog)."New value: +"Max models to return (default 10, max 76, the whole catalog)." - changed
Input schema / properties / limit / maximumPrevious value: -70New value: +76
1 tool update
- Changed
list_robot_mowers2 fields changed- changed
Input schema / properties / limit / descriptionPrevious value: -"Max models to return (default 10, max 57, the whole catalog)."New value: +"Max models to return (default 10, max 70, the whole catalog)." - changed
Input schema / properties / limit / maximumPrevious value: -57New value: +70
1 tool update
- Changed
list_robot_mowers2 fields changed- changed
Input schema / properties / limit / descriptionPrevious value: -"Max models to return (default 10, max 55, the whole catalog)."New value: +"Max models to return (default 10, max 57, the whole catalog)." - changed
Input schema / properties / limit / maximumPrevious value: -55New value: +57
1 tool update
- Changed
list_robot_mowers2 fields changed- changed
Input schema / properties / limit / descriptionPrevious value: -"Max models to return (default 10, max 48, the whole catalog)."New value: +"Max models to return (default 10, max 55, the whole catalog)." - changed
Input schema / properties / limit / maximumPrevious value: -48New value: +55
1 tool update
- Changed
list_robot_mowers2 fields changed- changed
Input schema / properties / limit / descriptionPrevious value: -"Max models to return (default 10, max 39, the whole catalog)."New value: +"Max models to return (default 10, max 48, the whole catalog)." - changed
Input schema / properties / limit / maximumPrevious value: -39New value: +48
1 tool update
- Changed
list_robot_mowers2 fields changed- changed
Input schema / properties / limit / descriptionPrevious value: -"Max models to return (default 10, max 23)."New value: +"Max models to return (default 10, max 39, the whole catalog)." - changed
Input schema / properties / limit / maximumPrevious value: -23New value: +39
4 tool updates
- First observed
compare_robot_mowers - First observed
get_robot_mower - First observed
list_robot_mowers - First observed
recommend_robot_mower
Related MCP Connectors
Evidence-based humanoid robot data: RadarScore ratings, evidence grades A-D, prices, EU availability
Sourced, dated data on consumer robots and physical AI: specs, prices, availability, evidence.
Specs of commercially available robots, each figure citing its source document.
Vendor-neutral catalog of 300+ commercial robots: search, compare specs, request vendor intros.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to retrieve sourced, dated data on consumer robots and physical AI: full-text search of robot sheets, side-by-side comparisons, and lookups of claims, prices, availability, capabilities, programmability and recent changes, with every value traceable to an evidence-graded source. Read-only and free with no key required, served over Streamable HTTP.MIT
- AlicenseAqualityAmaintenanceReal Amazon (US, UK, DE, CA, AU) & Walmart shopping data for AI assistants: ranked product shortlists, current prices, live stock, real ratings, and price/BSR history from a 17M+ product warehouse. Free hosted endpoint, no signup — 30 queries a day.31MIT

Anakinofficial
AlicenseAqualityBmaintenanceWeb data for AI agents: scrape, crawl, search, deep research, site monitoring, browser automation2285 npm3Apache 2.0- AlicenseAqualityBmaintenanceStructured product data from the open web — where platform APIs don't reach. Schema.org + AI extraction. Pay per call via Stripe MPP.241 npm3Apache 2.0
Glama MCP Gateway
Add one secure layer between your agents and this server.