Skip to main content
Glama

Analyze an investment property

analyze_property_investment

Gross rental yield, gross annual rent, price-to-rent and price per sq ft for a sale listing, from the user's monthly_rent, an active rental listing for the same property, or a RentCast rent estimate (labelled). With assumptions (down payment, rate, taxes, insurance, vacancy, repairs, management, capex) also cash flow, cap rate and cash-on-cash, plus a sensitivity table. Gross yield is not a return; always relay the disclaimer.

Input Schema

NameRequiredDescriptionDefault
listing_idNo
assumptionsNo
property_idNo
monthly_rentNoThe user's own rent assumption; used instead of an estimate.
use_rent_estimateNoUse a RentCast rent estimate when no monthly_rent is given (may use a live refresh).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior4/5

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

Annotations establish the safety profile (destructiveHint=false, openWorldHint=true, idempotentHint=false), and the description adds real value on top: rent estimates are 'labelled', the disclaimer must always be relayed, and gross yield is explicitly not a return. The unexplained gap is readOnlyHint=false for what reads as a pure calculation tool — nothing in the description accounts for the write/non-idempotent side (e.g., a live RentCast refresh or quota cost).

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?

Dense but front-loaded: outputs and data sources come first, assumptions and the disclaimer caveat last. Every clause carries information, though the opening metric list is compressed to the point of being slightly hard to parse on one read.

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

Completeness3/5

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

With no output schema, the description usefully enumerates return values, and it covers the rent-source logic. The main omission is identifier selection: both listing_id and property_id are optional and mutually unexplained, which is exactly what an agent needs to invoke this correctly. The non-read-only hint is also left unaccounted for.

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

Parameters4/5

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

Schema description coverage is only 40%, so the description must compensate, and it largely does: it names most assumption fields (down payment, rate, taxes, insurance, vacancy, repairs, management, capex) and both rent paths (monthly_rent vs. the labelled estimate). It omits loan_years and hoa_monthly, and never explains how listing_id vs. property_id are meant to be chosen given neither is required.

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?

Specific verb+resource ('analyze' an investment property / sale listing) with an explicit enumeration of the computed metrics (gross yield, price-to-rent, price per sq ft, cash flow, cap rate, cash-on-cash, sensitivity table) and the three rent-data sources. It is clearly distinct in function from siblings like get_property_details or compare_properties, though it never names or contrasts them.

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?

Usage is implied by the framing (analyze a sale listing, with assumptions for the fuller cash-flow view), and the ordering of rent sources conveys an implicit priority (user rent > rental listing > labelled estimate). There is no explicit when-to-use / when-not-to-use guidance and no alternative tool is named, so the agent must infer routing.

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.

Resources