Skip to main content
Glama

Lotlytics — US Real Estate Market Data & Investment Analytics

Search markets by investment criteria

search_markets
Read-onlyIdempotent

Rank US markets by investment criteria; no filters returns the top-ranked markets nationally. Requires API key (Investor plan) — https://www.lotlytics.us/pricing ; key at https://www.lotlytics.us/settings/api-keys Example: state='TX', max_price=300000, min_rental_yield=6

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMarkets to return, 1-25 (clamped). Default 10.
stateNoOptional state filter, e.g. 'TX'. Omit = national, which samples only the first 20 markets.
max_priceNoMax median price in dollars, e.g. 300000. 0 = no cap.
min_appreciationNoMin YoY appreciation %, e.g. 3. Negatives allowed; -999 = no floor.
min_rental_yieldNoMin gross rental yield %, e.g. 6. 0 = no floor.
max_price_to_incomeNoMax price-to-income ratio, e.g. 4.5. 999 = no cap.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • changedInput schema / properties / max_price / description
      Previous value: -"Max median home price in dollars, e.g. 300000. 0 (default) = no cap."New value: +"Max median price in dollars, e.g. 300000. 0 = no cap."
    • changedInput schema / properties / max_price_to_income / description
      Previous value: -"Max median-price-to-income ratio, e.g. 4.5. 999 (default) = no cap."New value: +"Max price-to-income ratio, e.g. 4.5. 999 = no cap."
    • changedInput schema / properties / min_appreciation / description
      Previous value: -"Min YoY appreciation in percent, e.g. 3. Negatives allowed; -999 (default) = no floor."New value: +"Min YoY appreciation %, e.g. 3. Negatives allowed; -999 = no floor."
    • changedInput schema / properties / min_rental_yield / description
      Previous value: -"Min gross rental yield in percent, e.g. 6. 0 (default) = no floor."New value: +"Min gross rental yield %, e.g. 6. 0 = no floor."
    • changedInput schema / properties / state / description
      Previous value: -"Optional state filter, e.g. 'TX'. Omit to search nationally, which samples only the first 20 markets."New value: +"Optional state filter, e.g. 'TX'. Omit = national, which samples only the first 20 markets."
  2. Changed6 schema fields changed
    • changedInput schema / properties / limit / description
      Previous value: -"How many markets to return, 1-25. Values outside that range are clamped. Default 10."New value: +"Markets to return, 1-25 (clamped). Default 10."
    • changedInput schema / properties / max_price / description
      Previous value: -"Maximum median home price in whole US dollars, e.g. 300000. 0 (the default) means no price cap."New value: +"Max median home price in dollars, e.g. 300000. 0 (default) = no cap."
    • changedInput schema / properties / max_price_to_income / description
      Previous value: -"Maximum median-price-to-median-income ratio, e.g. 4.5. Lower is more affordable. The default (999) applies no cap."New value: +"Max median-price-to-income ratio, e.g. 4.5. 999 (default) = no cap."
    • changedInput schema / properties / min_appreciation / description
      Previous value: -"Minimum year-over-year appreciation in PERCENT, e.g. 3 for 3%. Negative values are allowed. The default (-999) applies no floor."New value: +"Min YoY appreciation in percent, e.g. 3. Negatives allowed; -999 (default) = no floor."
    • changedInput schema / properties / min_rental_yield / description
      Previous value: -"Minimum gross rental yield in PERCENT, e.g. 6 for 6%. 0 (the default) applies no floor."New value: +"Min gross rental yield in percent, e.g. 6. 0 (default) = no floor."
    • changedInput schema / properties / state / description
      Previous value: -"Optional US state filter — 2-letter abbreviation or full name, e.g. \"TX\". Omit to search nationally. Narrowing to one state also widens coverage: an unfiltered search samples only the first 20 markets."New value: +"Optional state filter, e.g. 'TX'. Omit to search nationally, which samples only the first 20 markets."
  3. Changed6 schema fields changed
    • addedInput schema / properties / limit / description
      Added value: +"How many markets to return, 1-25. Values outside that range are clamped. Default 10."
    • addedInput schema / properties / max_price / description
      Added value: +"Maximum median home price in whole US dollars, e.g. 300000. 0 (the default) means no price cap."
    • addedInput schema / properties / max_price_to_income / description
      Added value: +"Maximum median-price-to-median-income ratio, e.g. 4.5. Lower is more affordable. The default (999) applies no cap."
    • addedInput schema / properties / min_appreciation / description
      Added value: +"Minimum year-over-year appreciation in PERCENT, e.g. 3 for 3%. Negative values are allowed. The default (-999) applies no floor."
    • addedInput schema / properties / min_rental_yield / description
      Added value: +"Minimum gross rental yield in PERCENT, e.g. 6 for 6%. 0 (the default) applies no floor."
    • addedInput schema / properties / state / description
      Added value: +"Optional US state filter — 2-letter abbreviation or full name, e.g. \"TX\". Omit to search nationally. Narrowing to one state also widens coverage: an unfiltered search samples only the first 20 markets."
  4. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already mark the tool as read-only, idempotent, and non-destructive. The description adds meaningful behavior beyond those annotations: it requires an API key on the Investor plan and provides explicit URLs for pricing and key creation. It also documents the 'no filters returns national top-ranked markets' behavior, which is useful and non-obvious.

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 with the core behavior, followed by auth requirements and a useful example. The two URLs are somewhat clunky but earn their place because they provide necessary setup instructions. No filler sentences are present.

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

Completeness5/5

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

For a tool with six optional parameters, a complete input schema, an output schema, and safety annotations, the description covers the essential operational details: ranking behavior, national default, API key requirement, and a representative parameter combination. Nothing critical is missing for an agent to select and invoke the tool correctly.

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?

The input schema already documents all six parameters with descriptions and defaults, so schema coverage is 100%. The description contributes a practical example state='TX', max_price=300000, min_rental_yield=6, but it does not add new semantic meaning beyond what the schema already provides. Baseline 3 is appropriate.

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

Purpose4/5

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

The description states a specific action and resource: 'Rank US markets by investment criteria.' It also clarifies that omitting filters returns top-ranked national markets, which distinguishes it from a simple listing tool. However, it does not explicitly name or differentiate against sibling tools like list_markets, so it falls just short of the strongest clarity.

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 implies when to use the tool: when you want markets ranked by investment criteria, optionally filtered by state and metrics. It gives a concrete example, but it does not explicitly explain when to prefer compare_markets, get_market_health, or list_markets instead. No exclusions or alternative routing is provided.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.