Skip to main content
Glama

Texas unequal-appraisal candidates

registry_tx_equity_candidates
Read-onlyIdempotent

Candidate comparable parcels for a Texas unequal-appraisal comparison (Tax Code §41.43(b)(3)), from one tax year of the subject's appraisal district roll (the newest year whose roll gives the subject a value, or tax_year), with every field of the subject and the candidates read from that year's roll only: same county and tax year, the same state property category code, improvement area within area_band of the subject's, year built within year_band years when both are known; parcels sharing the subject's neighborhood code first (when the roll gives one), then its ZIP code, then the rest of the county if fewer than min_matches. Each candidate and the subject carry their roll fields (id, value and value_basis, market and appraised value, areas, year built, codes, situs address, tax year, citation of the value fact); the subject adds its value history by tax year. calc_args gives the same subject and candidates with exactly calc_tx_unequal_appraisal's input fields (tax_year, subject, comparables; id = the FactLot URN, label = the situs address, nulls left out, no adjustments): the candidate list under the default rule, not a selection by FactLot, for the caller to review and edit (remove, add or adjust comparables, each adjustment with a reason) before passing it to calc_tx_unequal_appraisal. Order of operations: registry_tx_equity_candidates, then the person's review, then calc_tx_unequal_appraisal with the reviewed calc_args, then report_create. selection echoes the rule, the effective parameters, the tax year and roll sources used, and which tier each candidate came from; selection_rule restates the parameters used (tax year, category, area band and year band with their bounds, counts per tier) with a notice that the list is the default rule's output. Each candidate's citation.document_id names its entry in sources, which gives that snapshot's license, attribution, ai_use and redistribution: relay them with the candidate. Candidates under FactLot's default rule, a design choice, not a legal standard; a person decides which, if any, to use. For evidence calculations only: FactLot does not represent property owners, file protests, or advise whether to protest. Not an appraisal or an opinion of value (Tex. Occ. Code §1103.003(1)); not legal or tax advice and not a substitute for the advice of an attorney. Never returns owner names, mailing addresses, or ownership facts. Do not look up the owners of candidate parcels; ownership is not needed for this comparison. Texas parcels only. Tarrant County is not served by the hosted registry while the publisher's terms for AI use are unclear. Requires a FactLot Registry (public-record facts about commercial property, each cited to the source file and record).

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "registry_tx_equity_candidates"
  }
}

Input Schema

NameRequiredDescriptionDefault
apnNoAppraisal district account number as the district prints it.
urnNoFactLot parcel URN of the subject, e.g. fl:parcel:us-48201:0011440000001. Give this, or county_fips and apn.
limitNoMaximum candidates returned (1–200).
tax_yearNoRoll year to compare in. Default: the newest tax year whose roll gives the subject a positive value.
area_bandNoImprovement area band as a share of the subject's (0.35: within ±35%).
year_bandNoYear-built band in years, applied when both the subject's and the candidate's are known.
state_fipsNoWith county_fips and apn: "48" (Texas), the only state served.
county_fipsNo3-digit Texas county FIPS, e.g. "201" for Harris County.
min_matchesNoWiden from the neighborhood and ZIP code tiers to the whole county when they hold fewer than this.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / urn / description
      Previous value: -"FactLot parcel URN of the subject, e.g. fl:parcel:us-48201:0420150000012. Give this, or county_fips and apn."New value: +"FactLot parcel URN of the subject, e.g. fl:parcel:us-48201:0011440000001. Give this, or county_fips and apn."
  2. Added

TDQS

A4.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false and destructiveHint=false, and the description adds genuinely useful non-obvious behavior: no owner names or mailing addresses are ever returned, citations must be relayed with their snapshot's license/attribution/ai_use, and Tarrant County is withheld pending publisher terms. It also flags the output as a design choice rather than a legal standard, which is valuable behavioral framing.

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

Conciseness3/5

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

The single dense paragraph is front-loaded and specific, but it contains real redundancy: the review-before-calculation instruction is stated twice, and the selection/selection_rule explanation repeats the same idea in two clauses. The legal disclaimers are also restated (not an appraisal, not legal advice, do not look up owners), which lengthens the text without adding new guidance.

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?

With no output schema and nine parameters, the description carries the full burden and does: it enumerates the returned candidate and subject fields, describes calc_args's shape and how it maps to calc_tx_unequal_appraisal's inputs, and explains the selection and sources structures. An agent has enough to call this correctly and to know what comes back.

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 coverage is 100%, so parameter definitions are already handled. The description nonetheless adds meaning beyond the schema by explaining how the parameters interact: same county and tax year, matching state category code, area_band and year_band constraints, and the tiered widening from neighborhood to ZIP to county when min_matches is not met.

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?

Names a specific verb+resource ('Candidate comparable parcels for a Texas unequal-appraisal comparison') and scopes it to one tax year of the subject's appraisal district roll. It also implicitly separates itself from the sibling calc_tx_unequal_appraisal by noting this tool produces candidates rather than the calculation.

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

Usage Guidelines5/5

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

Gives an explicit order of operations: registry_tx_equity_candidates, then human review, then calc_tx_unequal_appraisal with the reviewed calc_args, then report_create. It also states the exclusions (Texas parcels only, Tarrant County not served) and that the output is the default rule's list, not a FactLot selection.

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.