Skip to main content
Glama
chrischall

OurFamilyWizard MCP

by chrischall

Hemnet sold-price market statistics

hemnet_get_market_stats
Read-onlyIdempotent

Get median and average sold prices, price per m², and over/under-asking percentage from recent listings. Filter by location, property type, size, and keywords to assess the market.

Instructions

Aggregate median/average statistics from recent SOLD listings for a location (and optional property-type/size filters): median & average final price, median & average price-per-m², and average over/under-asking percentage. Provide location_ids or a free-text location. Read-only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sortNoNEWEST (default) or OLDEST.
limitNoDefault 25, max 50.
offsetNoPagination offset.
keywordsNoFree-text keyword filter (e.g. "sjönära", "balkong").
locationNoFree-text place name (e.g. "Vasastan", "Göteborg") resolved to its top Hemnet location. Ignored when `location_ids` is set.
price_maxNoSEK
price_minNoSEK
rooms_maxNo
rooms_minNo
location_idsNoNumeric Hemnet location ids (from hemnet_autocomplete_location). Provide this OR `location`.
living_area_maxNom²
living_area_minNom²
housing_form_groupsNoProperty-type groups: HOUSES (villa), APARTMENTS (lägenhet/bostadsrätt), ROW_HOUSES (radhus/parhus), VACATION_HOMES (fritidshus), PLOTS (tomt), OTHERS.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.0.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. Addedv0.2.0

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered without contradiction. The description adds context about the data source ('recent SOLD listings') and the computed metrics, but it does not disclose additional runtime behavior such as pagination behavior, response shape, or what happens when a free-text location cannot be resolved.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: it opens with the core purpose and the exact statistics returned before moving to input guidance. It has no filler, though 'Read-only' mildly repeats the readOnlyHint annotation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 13-parameter tool with no output schema, the description supplies the key call pattern (location_ids or location), the optional filter dimensions, and the return metric set. It does not detail output structure or edge cases like both location inputs being supplied, but the schema covers most of the remaining operational details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 85%, so the schema already documents nearly all parameters in detail. The description reinforces the key choice between location_ids and location and mentions property-type/size filters, but it adds no syntax or semantic information beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific operation ('Aggregate median/average statistics from recent SOLD listings') and names the resource/scope: a location with optional property-type/size filters. This clearly differentiates it from sibling tools like hemnet_search_sold and hemnet_get_sold_listing, which return individual listing records rather than aggregate market statistics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the core input requirement ('Provide location_ids or a free-text location') and mentions optional filters, but it never explicitly tells an agent when to choose this tool over hemnet_search_sold or when not to. Usage is implied by the aggregate-statistics framing rather than stated as a rule with exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.