{"service":"locus-api","kind":"unified_tool_catalog","version":"2.0.0","access":{"accountApiKeyRequired":false,"explanation":"Locus buyers do not need an account API key. Free tools are open; paid routes return an x402 or advertised MPP payment challenge.","paidAccess":"Pay per successful call with one complete option from the live challenge. x402 may offer USDC on Base and Solana. A PAYMENT-SIGNATURE is a signed payment credential, not an API key."},"naming":{"canonicalIdStyle":"dot","freeToolStyle":"underscore","paidRouteStyle":"hyphen","uniqueKey":"catalogId","canonicalIdPurpose":"search-and-grouping","rule":"Free executor names use underscores. Paid REST slugs use hyphens. catalogId is globally unique; canonicalId normalizes each executable name for search. Follow counterparts for related free/paid routes and always call the entry's callName."},"topAgentEndpointsUrl":"https://api.locus.report/.well-known/locus-agent-endpoints.json","counts":{"free":94,"paid":85,"total":179},"tools":[{"catalogId":"free:locus_agent_feedback","canonicalId":"locus.agent.feedback","callName":"locus_agent_feedback","title":"Send product feedback from an agent session","description":"Free write: record what helped, what did not, a catalog/schema UX gap, or an improvement idea. Stores closed-vocab notes only — no place, person, wallet, or payment fields. Use after a Locus session when the skill, catalog, or a tool was confusing or useful. Set target (or tool/toolName) to the exact catalog name. Summary allows up to 1000 characters. Also available as POST /feedback. Aggregate product signal, not a record lookup.","tier":"free","rail":"free","category":"infrastructure","tags":["feedback","participation","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"kind":{"type":"string","enum":["helpful","not_helpful","ux_gap","schema_issue","coverage_gap","docs_issue","idea"],"description":"What this note is: helpful, not_helpful, ux_gap, schema_issue, coverage_gap, docs_issue, or idea."},"target":{"description":"Exact catalog tool, surface, or skill this note is about. Use locus-before-you-sign, locus-pfas-occurrence, or llms.txt. Do not put the tool name only in summary.","type":"string","minLength":1,"maxLength":80},"tool":{"description":"Alias for target. Exact catalog name of the tool this note is about.","type":"string","minLength":1,"maxLength":80},"toolName":{"description":"Alias for target. Exact catalog name of the tool this note is about.","type":"string","minLength":1,"maxLength":80},"summary":{"type":"string","minLength":8,"maxLength":1000,"description":"One sentence about what helped, what failed, or the gap. Max 1000 characters. No address, person, or wallet. Set target/tool for the related catalog name."},"helpful":{"description":"Short bullets of what worked.","maxItems":8,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"unhelpful":{"description":"Short bullets of friction, missing schema, or confusing copy.","maxItems":8,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"idea":{"description":"Optional improvement the next agent should see in catalogs or the skill.","type":"string","minLength":1,"maxLength":1000},"skillVersion":{"description":"Optional installed skill version, for example 1.20.0.","type":"string","minLength":1,"maxLength":40},"client":{"description":"Optional harness name such as claude, grok, or codex. Not a user id.","type":"string","minLength":1,"maxLength":80}},"required":["kind","summary"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_agent_feedback","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_air_quality_current","canonicalId":"locus.air.quality.current","callName":"locus_air_quality_current","title":"Current air quality and satellite-observed smoke","description":"Current location-specific air-quality evidence from the nearest EPA AirNow monitors plus NOAA HMS smoke polygons intersecting the point. This is separate from wildfire hazard: use locus_wildfire_risk for modeled hazard and locus_wildfire_history for fire perimeters. Reports monitor distance, AQI category, source freshness, and smoke density label; never infers that a wildfire caused an AQI reading, never treats no nearby monitor as good air, and never returns a property or safe/unsafe score. Read-only and free.","tier":"free","rail":"free","category":"infrastructure","tags":["air-quality","smoke","wildfire-smoke","environmental","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusKm":{"description":"Optional nearest-monitor search radius in kilometers; default 80, max 250. NOAA smoke uses exact point intersection.","type":"integer","minimum":5,"maximum":250}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_air_quality_current","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"paid:locus-air-quality-history","canonicalId":"locus.air.quality.history","callName":"locus-air-quality-history","title":"Historical air quality and satellite-observed smoke","description":"Historical location-specific air-quality evidence: nearby EPA AQS annual monitor summaries, exact-point NOAA HMS satellite smoke days, and clearly separated CDC county-level modeled PM2.5 only where a requested year lacks nearby AQS PM2.5. This is not wildfire hazard, source-fire attribution, medical advice, or a safe/unsafe property score. Missing mirror years are disclosed and never treated as clean air. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"environmental","tags":["data","search","real-estate","property","property-research","due-diligence","public-records","x402","air-quality","smoke","wildfire-smoke","environmental-due-diligence","government","citations","category:environmental"],"endpoint":"https://api.locus.report/api/locus-air-quality-history","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; provide instead of latitude+longitude.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"yearsBack":{"description":"Calendar-year lookback, 1-10 years; default 5. The response discloses which requested years are actually ingested.","type":"integer","minimum":1,"maximum":10},"radiusKm":{"description":"Nearby AQS monitor search radius in kilometers; default 50, max 150. HMS smoke uses exact point-in-polygon.","type":"integer","minimum":5,"maximum":150}},"additionalProperties":false,"description":"US street address or latitude+longitude, plus an optional 1-10 calendar-year lookback and AQS monitor radius. NOAA HMS history is exact point-in-polygon.","anyOf":[{"required":["address"]},{"required":["latitude","longitude"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"kind":{"type":"string","const":"air_quality_history"},"generatedAt":{"type":"string"},"point":{"type":"object","properties":{"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["latitude","longitude"],"additionalProperties":false},"period":{"type":"object","properties":{"startYear":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"endYear":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"requestedYears":{"type":"array","items":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}}},"required":["startYear","endYear","requestedYears"],"additionalProperties":false},"searchRadiusKm":{"type":"number"},"componentStatus":{"type":"array","items":{"type":"object","properties":{"component":{"type":"string","enum":["aqs_monitors","hms_smoke","cdc_gap_fill"]},"status":{"type":"string","enum":["ok","no_data","not_needed","not_ingested","source_unavailable"]},"detail":{"type":"string"}},"required":["component","status"],"additionalProperties":false}},"aqs":{"type":"object","properties":{"annualMonitorSummaries":{"type":"array","items":{"type":"object","properties":{"recordId":{"type":"string"},"year":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"siteId":{"type":"string"},"siteName":{"type":"string"},"parameterCode":{"type":"string"},"parameter":{"type":"string"},"poc":{"type":"string"},"sampleDuration":{"type":"string"},"pollutantStandard":{"type":"string"},"metricUsed":{"type":"string"},"methodName":{"type":"string"},"units":{"type":"string"},"distanceKm":{"type":"number"},"observationCount":{"type":"number"},"observationPercent":{"type":"number"},"validDayCount":{"type":"number"},"arithmeticMean":{"type":"number"},"firstMaxValue":{"type":"number"},"firstMaxAt":{"type":"string"},"ninetyEighthPercentile":{"type":"number"},"ninetyNinthPercentile":{"type":"number"},"certificationIndicator":{"type":"string"},"eventType":{"type":"string"}},"required":["recordId","year","siteId","parameterCode","parameter","poc","pollutantStandard","units","distanceKm"],"additionalProperties":false}},"availableYears":{"type":"array","items":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"provenance":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"datasetPage":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"syncedAt":{"type":"string"},"license":{"type":"string"}},"required":["sourceName","sourceUrl","datasetPage"],"additionalProperties":false}},"required":["annualMonitorSummaries","availableYears","provenance"],"additionalProperties":false},"hmsSmoke":{"type":"object","properties":{"annualSummaries":{"type":"array","items":{"type":"object","properties":{"year":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"observedDays":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"polygonCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"densityDays":{"type":"object","properties":{"light":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"medium":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"heavy":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"unknown":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["light","medium","heavy","unknown"],"additionalProperties":false}},"required":["year","observedDays","polygonCount","densityDays"],"additionalProperties":false}},"observedDates":{"type":"array","items":{"type":"string"}},"availableYears":{"type":"array","items":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"provenance":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"datasetPage":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"syncedAt":{"type":"string"},"license":{"type":"string"}},"required":["sourceName","sourceUrl","datasetPage"],"additionalProperties":false}},"required":["annualSummaries","observedDates","availableYears","provenance"],"additionalProperties":false},"cdcGapFill":{"type":"object","properties":{"modeledAnnualPm25":{"type":"array","items":{"type":"object","properties":{"year":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"countyFips5":{"type":"string"},"countyName":{"type":"string"},"meanPredictedUgM3":{"type":"number"},"medianPredictedUgM3":{"type":"number"},"populationWeightedPredictedUgM3":{"type":"number"}},"required":["year","countyFips5","countyName"],"additionalProperties":false}},"filledYears":{"type":"array","items":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"provenance":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"datasetPage":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"syncedAt":{"type":"string"},"license":{"type":"string"}},"required":["sourceName","sourceUrl","datasetPage"],"additionalProperties":false}},"required":["modeledAnnualPm25","filledYears","provenance"],"additionalProperties":false},"charged":{"type":"boolean"},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","generatedAt","point","period","searchRadiusKm","componentStatus","aqs","hmsSmoke","cdcGapFill","caveats"],"additionalProperties":false,"description":"A cited history artifact with separate AQS monitor, NOAA HMS smoke-polygon, and CDC modeled-gap-fill components; includes available mirror years and charged:false when no substantive source resolves."},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-air-quality-history.json","naming":{"style":"hyphen-paid-route","executableName":"locus-air-quality-history","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_appeal_filing_guide","canonicalId":"locus.appeal.filing.guide","callName":"locus_appeal_filing_guide","title":"Property assessment appeal filing guide","description":"Return cited forms, filing body, next appeal body, portal mode, fee rule, hearing modes, and verification steps from an address, state code, or full state name for registered state and local assessment-appeal workflows. The guide reports official filing facts and a separate browser-workflow handoff; Locus does not file or advise whether to appeal. Read-only and free.","tier":"free","rail":"free","category":"meta","tags":["taxes","appeals","forms","workflow","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"county":{"description":"Optional county or appraisal-district name, for example Harris County.","type":"string","minLength":2,"maxLength":100},"locality":{"description":"Optional city, appraisal district, or local board name, for example New York City.","type":"string","minLength":2,"maxLength":120},"state":{"type":"string","minLength":2,"maxLength":40,"description":"Two-letter US state abbreviation or full state name, for example TX or Texas."},"address":{"type":"string","minLength":5,"maxLength":200,"description":"Full US address used to resolve the governing state, county, and locality."}},"required":["state"],"additionalProperties":false},{"type":"object","properties":{"county":{"description":"Optional county or appraisal-district name, for example Harris County.","type":"string","minLength":2,"maxLength":100},"locality":{"description":"Optional city, appraisal district, or local board name, for example New York City.","type":"string","minLength":2,"maxLength":120},"state":{"type":"string","minLength":2,"maxLength":40,"description":"Two-letter US state abbreviation or full state name, for example TX or Texas."},"address":{"type":"string","minLength":5,"maxLength":200,"description":"Full US address used to resolve the governing state, county, and locality."}},"required":["address"],"additionalProperties":false}],"type":"object"},"naming":{"style":"underscore-free-tool","executableName":"locus_appeal_filing_guide","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_appeal_outcomes","canonicalId":"locus.appeal.outcomes","callName":"locus_appeal_outcomes","title":"Published assessment-appeal outcome aggregates","description":"Return published Cook County Board of Review and Assessor aggregates, NYC Tax Commission granted-reduction totals, Texas Comptroller 2024 appraisal-district survey facts, or cited official pointers. Accepts an address, state code, or full state name. Historical aggregates only, never a parcel forecast, value opinion, score, ranking, or filing recommendation. Read-only and free.","tier":"free","rail":"free","category":"infrastructure","tags":["taxes","appeals","outcomes","aggregates","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"county":{"description":"Optional county name. Cook County has Board of Review and Assessor aggregates; Texas counties use the statewide Comptroller survey.","type":"string","minLength":2,"maxLength":100},"township":{"description":"Optional Cook County township name or two-digit township code.","type":"string","minLength":1,"maxLength":80},"taxYear":{"description":"Optional tax year. When omitted, Socrata sources return the three most recent prior years.","type":"integer","minimum":1900,"maximum":2100},"majorclass":{"description":"Cook County Board of Review major property class; defaults to Residential. Assessor aggregates do not filter numeric class.","type":"string","minLength":1,"maxLength":80},"state":{"type":"string","minLength":2,"maxLength":40,"description":"Two-letter US state abbreviation or full state name, for example TX or Texas."},"address":{"type":"string","minLength":5,"maxLength":200,"description":"Full US address used to resolve the governing state, county, and locality."}},"required":["state"],"additionalProperties":false},{"type":"object","properties":{"county":{"description":"Optional county name. Cook County has Board of Review and Assessor aggregates; Texas counties use the statewide Comptroller survey.","type":"string","minLength":2,"maxLength":100},"township":{"description":"Optional Cook County township name or two-digit township code.","type":"string","minLength":1,"maxLength":80},"taxYear":{"description":"Optional tax year. When omitted, Socrata sources return the three most recent prior years.","type":"integer","minimum":1900,"maximum":2100},"majorclass":{"description":"Cook County Board of Review major property class; defaults to Residential. Assessor aggregates do not filter numeric class.","type":"string","minLength":1,"maxLength":80},"state":{"type":"string","minLength":2,"maxLength":40,"description":"Two-letter US state abbreviation or full state name, for example TX or Texas."},"address":{"type":"string","minLength":5,"maxLength":200,"description":"Full US address used to resolve the governing state, county, and locality."}},"required":["address"],"additionalProperties":false}],"type":"object"},"naming":{"style":"underscore-free-tool","executableName":"locus_appeal_outcomes","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_appeal_window","canonicalId":"locus.appeal.window","callName":"locus_appeal_window","title":"Cited property-value appeal deadline calculator","description":"Compute the property-value appeal/protest filing deadline from a US address, two-letter state code, or full state name and, when given, the date on the owner's notice. Pure date arithmetic on a cited rule; returns both candidates for later-of rules; never advises whether to appeal. Covered: TX GA AZ FL NC CO OH NJ WA CA NY IL MI TN PA(Philadelphia).","tier":"free","rail":"free","category":"infrastructure","tags":["taxes","appeals","deadlines","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"noticeDate":{"description":"Optional ISO date YYYY-MM-DD from the owner's notice; use the mailed, delivered, printed, or publication date named by the returned rule.","type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"year":{"description":"Tax year; defaults to the current year.","type":"integer","minimum":2000,"maximum":2100},"locality":{"description":"NY or PA locality row. Philadelphia is required for PA.","type":"string","enum":["nyc_class1","nyc_other","nassau","philadelphia"]},"propertyClass":{"description":"Optional published property class. NYC class 1 selects the nyc_class1 row when locality is not supplied.","type":"string","minLength":1,"maxLength":80},"revaluationYear":{"description":"NJ only: true when a municipal-wide revaluation or reassessment was implemented.","type":"boolean"},"countyExtended":{"description":"WA only: true when the county adopted the 60-day notice period.","type":"boolean"},"state":{"type":"string","minLength":2,"maxLength":40,"description":"Two-letter US state abbreviation or full state name, for example TX or Texas."},"address":{"type":"string","minLength":5,"maxLength":200,"description":"Full US address used to resolve the governing state, county, and locality."}},"required":["state"],"additionalProperties":false},{"type":"object","properties":{"noticeDate":{"description":"Optional ISO date YYYY-MM-DD from the owner's notice; use the mailed, delivered, printed, or publication date named by the returned rule.","type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"year":{"description":"Tax year; defaults to the current year.","type":"integer","minimum":2000,"maximum":2100},"locality":{"description":"NY or PA locality row. Philadelphia is required for PA.","type":"string","enum":["nyc_class1","nyc_other","nassau","philadelphia"]},"propertyClass":{"description":"Optional published property class. NYC class 1 selects the nyc_class1 row when locality is not supplied.","type":"string","minLength":1,"maxLength":80},"revaluationYear":{"description":"NJ only: true when a municipal-wide revaluation or reassessment was implemented.","type":"boolean"},"countyExtended":{"description":"WA only: true when the county adopted the 60-day notice period.","type":"boolean"},"state":{"type":"string","minLength":2,"maxLength":40,"description":"Two-letter US state abbreviation or full state name, for example TX or Texas."},"address":{"type":"string","minLength":5,"maxLength":200,"description":"Full US address used to resolve the governing state, county, and locality."}},"required":["address"],"additionalProperties":false}],"type":"object"},"naming":{"style":"underscore-free-tool","executableName":"locus_appeal_window","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-appeal-window","canonicalId":"locus.appeal.window","callName":"locus-appeal-window","tier":"paid","endpoint":"https://api.locus.report/api/locus-appeal-window"}]},{"catalogId":"paid:locus-appeal-window","canonicalId":"locus.appeal.window","callName":"locus-appeal-window","title":"Cited property-value appeal deadline calculator","description":"Cited property-value appeal deadline arithmetic for a covered state. Perfect for: 'appeal deadline from my notice date', 'property-tax protest window'. Returns the rule, statute, source, computed dates when inputs support them, caveats, and verify-next. Never advice to appeal. Charge-free when the state/locality is not covered.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["taxes","appeals","deadlines","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-appeal-window","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"noticeDate":{"description":"Optional ISO date YYYY-MM-DD from the owner's notice; use the mailed, delivered, printed, or publication date named by the returned rule.","type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"year":{"description":"Tax year; defaults to the current year.","type":"integer","minimum":2000,"maximum":2100},"locality":{"description":"NY or PA locality row. Philadelphia is required for PA.","type":"string","enum":["nyc_class1","nyc_other","nassau","philadelphia"]},"propertyClass":{"description":"Optional published property class. NYC class 1 selects the nyc_class1 row when locality is not supplied.","type":"string","minLength":1,"maxLength":80},"revaluationYear":{"description":"NJ only: true when a municipal-wide revaluation or reassessment was implemented.","type":"boolean"},"countyExtended":{"description":"WA only: true when the county adopted the 60-day notice period.","type":"boolean"},"state":{"type":"string","minLength":2,"maxLength":40,"description":"Two-letter US state abbreviation or full state name, for example TX or Texas."},"address":{"type":"string","minLength":5,"maxLength":200,"description":"Full US address used to resolve the governing state, county, and locality."}},"required":["state"],"additionalProperties":false},{"type":"object","properties":{"noticeDate":{"description":"Optional ISO date YYYY-MM-DD from the owner's notice; use the mailed, delivered, printed, or publication date named by the returned rule.","type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"year":{"description":"Tax year; defaults to the current year.","type":"integer","minimum":2000,"maximum":2100},"locality":{"description":"NY or PA locality row. Philadelphia is required for PA.","type":"string","enum":["nyc_class1","nyc_other","nassau","philadelphia"]},"propertyClass":{"description":"Optional published property class. NYC class 1 selects the nyc_class1 row when locality is not supplied.","type":"string","minLength":1,"maxLength":80},"revaluationYear":{"description":"NJ only: true when a municipal-wide revaluation or reassessment was implemented.","type":"boolean"},"countyExtended":{"description":"WA only: true when the county adopted the 60-day notice period.","type":"boolean"},"state":{"type":"string","minLength":2,"maxLength":40,"description":"Two-letter US state abbreviation or full state name, for example TX or Texas."},"address":{"type":"string","minLength":5,"maxLength":200,"description":"Full US address used to resolve the governing state, county, and locality."}},"required":["address"],"additionalProperties":false}]},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-appeal-window.json","naming":{"style":"hyphen-paid-route","executableName":"locus-appeal-window","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_appeal_window","canonicalId":"locus.appeal.window","callName":"locus_appeal_window","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"paid:locus-area-crime-report","canonicalId":"locus.area.crime.report","callName":"locus-area-crime-report","title":"Area reported-crime context","description":"Cited area reported-crime context for an address. Perfect for: 'crime for an address', 'safety records for a neighborhood', 'reported incidents near a place', 'property crime baseline for a county'. Returns municipal incident feeds (Cary, Raleigh, Charlotte) with counts + categories where wired, or official county/agency source links (NC SBI, SC SLED, FBI CDE) elsewhere. Area-level only -- never street/block, person/case data, or a verdict. Charge-free when no jurisdiction resolves.","tier":"paid","rail":"promoted-free-dual","category":"safety","tags":["crime","incidents","read-only","paid","x402","category:safety"],"endpoint":"https://api.locus.report/api/locus-area-crime-report","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":3,"description":"Required street address used to scope area reported-crime context, e.g. '123 Oak Park Dr, Cary, NC 27519'."},"radiusMeters":{"description":"Optional radius in meters for point feeds when available; default 1000, max 5000.","type":"number"},"lookbackDays":{"description":"Optional lookback window in days for point feeds; default 365, max 1825.","type":"number"},"includeSurveyContext":{"description":"Optional boolean; include BJS NCVS caveats/context. Default true. National methodology context only, never a local estimate.","type":"boolean"}},"required":["address"],"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-area-crime-report.json","naming":{"style":"hyphen-paid-route","executableName":"locus-area-crime-report","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_area_incidents","canonicalId":"locus.area.incidents","callName":"locus_area_incidents","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_area_incidents","canonicalId":"locus.area.incidents","callName":"locus_area_incidents","title":"Area reported-crime context","description":"Return cited area-level reported-crime context for a place from wired official municipal feeds (Cary CPD, Morrisville PD, Raleigh NIBRS, Charlotte CMPD) or county/agency sources (NC SBI, SC SLED, FBI CDE). Use when the user asks about crime, safety records, or reported incidents for a place; an address only resolves its city/county, the data is area-level. Answer crime from this. City/area counts only, never street/block crime, person/case detail, a verdict, score, ranking, or prediction. Reports are allegations.","tier":"free","rail":"free","category":"safety","tags":["crime","incidents","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":3,"description":"Required street address used to scope area reported-crime context, e.g. '123 Oak Park Dr, Cary, NC 27519'."},"radiusMeters":{"description":"Optional radius in meters for point feeds when available; default 1000, max 5000.","type":"number"},"lookbackDays":{"description":"Optional lookback window in days for point feeds; default 365, max 1825.","type":"number"},"includeSurveyContext":{"description":"Optional boolean; include BJS NCVS caveats/context. Default true. National methodology context only, never a local estimate.","type":"boolean"}},"required":["address"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_area_incidents","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-area-crime-report","canonicalId":"locus.area.crime.report","callName":"locus-area-crime-report","tier":"paid","endpoint":"https://api.locus.report/api/locus-area-crime-report"}]},{"catalogId":"paid:locus-before-you-sign","canonicalId":"locus.before.you.sign","callName":"locus-before-you-sign","title":"Before-you-sign due-diligence bundle (one address)","description":"Use after locus_lane_availability says this call has substance here. Pre-decision due-diligence bundle for one street address (parcel, local-change, and bill/ordinance analysis). After x402 settlement or seller-escrow, parcelFacts may include the assessor owner-of-record name for the same exact parcel (cited, not a contact); optional context only frames the output. Not inspection, appraisal, valuation, screening, or legal advice. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"reports","tags":["data","search","real-estate","property","property-research","due-diligence","public-records","x402","property-records","property-due-diligence","buyer-agent","address","parcel-research","local-change-analysis","real-estate-bills","ordinance-analysis","category:reports"],"endpoint":"https://api.locus.report/api/locus-before-you-sign","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":200,"description":"Flexible US street address for the property under consideration, e.g. '200 Fayetteville St, Raleigh, NC 27601'. Include city/state or ZIP when possible; this bundle is address-first, not county-only."},"lookbackMonths":{"type":"integer","minimum":1,"maximum":60},"includeCrime":{"default":false,"type":"boolean"},"context":{"description":"Optional caller context used only to prioritize and frame the cited output; it never changes data access.","type":"string","minLength":1,"maxLength":600},"followUp":{"description":"Optional follow-up question answered only from the bundle's fetched evidence.","type":"string","minLength":1,"maxLength":300}},"required":["address","includeCrime"],"additionalProperties":false,"description":"Flexible US street address of the property. Optional context and followUp fields frame the cited output but never change data access. Include city/state or ZIP when possible. Coverage is checked before any charge."},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"before_you_sign_bundle"},"id":{"type":"string"},"generatedAt":{"type":"string"},"place":{"type":"object","properties":{"input":{"type":"string"},"resolved":{"type":"string"},"jurisdictionId":{"type":"string"},"coverageStatus":{"type":"string","enum":["supported","supported_partial","discovery_only","unsupported"]}},"required":["input","jurisdictionId","coverageStatus"],"additionalProperties":false},"intent":{"type":"string"},"componentStatus":{"type":"array","items":{"type":"object","properties":{"component":{"type":"string","enum":["parcel_facts","trend_brief","policy_brief"]},"status":{"type":"string","enum":["ok","unavailable","out_of_coverage"]}},"required":["component","status"],"additionalProperties":false}},"componentReadinessDetail":{"type":"array","items":{"type":"object","properties":{"component":{"type":"string","enum":["trend","parcel","policy"]},"ready":{"type":"boolean"},"state":{"type":"string"},"reason":{"type":"string"}},"required":["component","ready","state","reason"],"additionalProperties":false}},"parcelFacts":{"type":"object","properties":{"ownerOfRecord":{"type":"string","minLength":1,"maxLength":80},"ownerOfRecordCitation":{"type":"object","properties":{"sourceUrl":{"type":"string","minLength":1},"fetchedAt":{"type":"string","minLength":1},"sourceName":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceUrl","fetchedAt"],"additionalProperties":false},"parcel":{"type":"object","properties":{"ownerOfRecord":{"type":"string","minLength":1,"maxLength":80},"ownerOfRecordCitation":{"type":"object","properties":{"sourceUrl":{"type":"string","minLength":1},"fetchedAt":{"type":"string","minLength":1},"sourceName":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceUrl","fetchedAt"],"additionalProperties":false}},"additionalProperties":{}}},"additionalProperties":{}},"trendBrief":{"type":"object","properties":{"kind":{"type":"string","const":"local_trend_brief"},"id":{"type":"string"},"generatedAt":{"type":"string"},"place":{"type":"object","properties":{"input":{"type":"string"},"resolved":{"type":"string"},"jurisdictionId":{"type":"string"},"coverageStatus":{"type":"string","enum":["supported","supported_partial","discovery_only","unsupported"]}},"required":["input","jurisdictionId","coverageStatus"],"additionalProperties":false},"intent":{"type":"string"},"intentRulesetVersion":{"type":"string"},"lookbackMonths":{"type":"number"},"coverage":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string","enum":["permits","code_violations","service_requests_311","crimes"]},"datasetId":{"type":"string"},"status":{"type":"string","enum":["ok","empty","unavailable"]},"recordCount":{"type":"number"},"lookbackCovered":{"type":"boolean"},"sourceUrl":{"type":"string"}},"required":["source","datasetId","status","recordCount","lookbackCovered","sourceUrl"],"additionalProperties":false}},"series":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"source":{"type":"string","enum":["permits","code_violations","service_requests_311","crimes"]},"bucket":{"type":"string","enum":["monthly","quarterly"]},"points":{"type":"array","items":{"type":"object","properties":{"periodStart":{"type":"string"},"count":{"type":"number"}},"required":["periodStart","count"],"additionalProperties":false}},"change":{"type":"object","properties":{"direction":{"type":"string","enum":["up","down","flat"]},"absoluteDelta":{"type":"number"},"pctChange":{"anyOf":[{"type":"number"},{"type":"null"}]},"method":{"type":"string","enum":["first-half-vs-second-half","year-over-year"]}},"required":["direction","absoluteDelta","pctChange","method"],"additionalProperties":false},"confidence":{"type":"string","enum":["low","medium","high"]},"categoryBreakdown":{"type":"object","properties":{"top":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"count":{"type":"number"},"recentCount":{"type":"number"},"baselineCount":{"type":"number"},"delta":{"type":"number"}},"required":["label","count","recentCount","baselineCount","delta"],"additionalProperties":false}},"totalCategorized":{"type":"number"},"uncategorized":{"type":"number"}},"required":["top","totalCategorized","uncategorized"],"additionalProperties":false}},"required":["key","source","bucket","points","change","confidence"],"additionalProperties":{}}},"whatThisMayMean":{"type":"array","items":{"type":"string"}},"whatThisDoesNotProve":{"type":"array","items":{"type":"string"}},"questionsToAsk":{"type":"array","items":{"type":"string"}},"citations":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"datasetId":{"type":"string"}},"required":["label","sourceName","sourceUrl","datasetId"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}},"citedCards":{"type":"array","items":{"type":"object","properties":{"cardId":{"type":"string"},"jurisdictionId":{"type":"string"},"category":{"type":"string"},"sourceUrl":{"type":"string"},"biasProfile":{"type":"object","properties":{"measures":{"type":"string","minLength":1,"maxLength":1000},"doesNotMeasure":{"type":"string","minLength":1,"maxLength":1000},"knownBiases":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"string","minLength":1,"maxLength":1000}},"lagDays":{"type":"integer","minimum":0,"maximum":36500}},"required":["measures","doesNotMeasure","knownBiases"],"additionalProperties":false}},"required":["cardId","jurisdictionId","category","sourceUrl"],"additionalProperties":false}},"chargeable":{"type":"boolean"},"storage":{"type":"array","items":{"type":"object","properties":{"provider":{"type":"string"},"locator":{"type":"string"},"contentHash":{"type":"string"},"pinned":{"type":"boolean"}},"required":["provider","locator","contentHash"],"additionalProperties":false}},"refinement":{"type":"object","properties":{"context":{"type":"object","properties":{"input":{"type":"string"},"emphasizedSources":{"type":"array","items":{"type":"string","enum":["permits","code_violations","service_requests_311","crimes"]}},"rationale":{"type":"array","items":{"type":"string"}}},"required":["input","emphasizedSources","rationale"],"additionalProperties":false},"followUp":{"type":"object","properties":{"question":{"type":"string"},"status":{"type":"string","enum":["answered","gated","unsupported"]},"answer":{"type":"array","items":{"type":"string"}},"gatedReason":{"type":"string"},"gatedReasonCode":{"type":"string"},"citations":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"datasetId":{"type":"string"}},"required":["label","sourceName","sourceUrl","datasetId"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}}},"required":["question","status","answer","citations","caveats"],"additionalProperties":false}},"additionalProperties":{}},"communitySignal":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string","const":"contested"},"observationId":{"type":"string"},"jurisdictionId":{"type":"string"},"claimType":{"type":"string"},"body":{"type":"string"},"status":{"type":"string"},"placeLabel":{"type":"string"},"evidenceUrl":{"type":"string","format":"uri"}},"required":["label","observationId","jurisdictionId","claimType","body","status","placeLabel"],"additionalProperties":{}}},"verifyNext":{"type":"array","items":{"type":"object","properties":{"step":{"type":"string"},"url":{"type":"string"},"source":{"type":"string"}},"required":["step"],"additionalProperties":{}}}},"required":["kind","id","generatedAt","place","intent","intentRulesetVersion","lookbackMonths","coverage","series","whatThisMayMean","whatThisDoesNotProve","questionsToAsk","citations","caveats","citedCards","chargeable"],"additionalProperties":{}},"policyBrief":{"type":"object","properties":{"kind":{"type":"string","const":"local_policy_brief"},"id":{"type":"string"},"generatedAt":{"type":"string"},"place":{"type":"object","properties":{"input":{"type":"string"},"resolved":{"type":"string"},"jurisdictionIds":{"type":"array","items":{"type":"string"}},"displayName":{"type":"string"}},"required":["input","jurisdictionIds"],"additionalProperties":false},"intent":{"type":"string"},"policyRulesetVersion":{"type":"string"},"artifacts":{"type":"array","items":{"type":"object","properties":{"artifactId":{"type":"string"},"jurisdictionId":{"type":"string"},"jurisdictionName":{"type":"string"},"level":{"type":"string","enum":["state","county","city"]},"artifactType":{"type":"string","enum":["bill","session_law","statute","ordinance","resolution","agenda_item","code_section"]},"officialId":{"type":"string"},"title":{"type":"string"},"summary":{"type":"string"},"status":{"type":"string","enum":["introduced","in_committee","adopted","enacted","codified","repealed","failed","not_published","unknown"]},"introducedAt":{"type":"string"},"actionDate":{"type":"string"},"effectiveDate":{"type":"string"},"textVersions":{"type":"array","items":{}},"actions":{"type":"array","items":{}},"votes":{"type":"array","items":{}},"affectedDomains":{"type":"array","items":{"type":"string"}},"affectedGeographies":{"type":"array","items":{"type":"string"}},"rateChanges":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["property_tax","fee","levy","bond"]},"label":{"type":"string"},"unit":{"type":"string","enum":["cents_per_100","usd","percent"]},"fromValue":{"type":"number"},"toValue":{"type":"number"},"deltaValue":{"type":"number"},"extractedFrom":{"type":"string","enum":["title","summary","text"]},"sourceExcerpt":{"type":"string"}},"required":["kind","label","unit","toValue","extractedFrom","sourceExcerpt"],"additionalProperties":{}}},"excerpts":{"type":"array","items":{"type":"string"}},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"}},"required":["sourceName","sourceUrl","fetchedAt","recordId"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}}},"required":["artifactId","jurisdictionId","jurisdictionName","level","artifactType","officialId","title","status","textVersions","actions","votes","affectedDomains","affectedGeographies","citations","caveats"],"additionalProperties":{}}},"signals":{"type":"array","items":{"type":"object","properties":{"signalId":{"type":"string"},"artifactId":{"type":"string"},"localityMatch":{"type":"string","enum":["direct","jurisdictional","statewide","weak"]},"relevance":{"type":"array","items":{"type":"string"}},"boundedClaim":{"type":"string"},"whyRelevant":{"type":"string"},"whatItDoesNotProve":{"type":"string"},"confidence":{"type":"string","enum":["low","medium","high"]},"rateChange":{"type":"object","properties":{"kind":{"type":"string","enum":["property_tax","fee","levy","bond"]},"label":{"type":"string"},"unit":{"type":"string","enum":["cents_per_100","usd","percent"]},"fromValue":{"type":"number"},"toValue":{"type":"number"},"deltaValue":{"type":"number"},"extractedFrom":{"type":"string","enum":["title","summary","text"]},"sourceExcerpt":{"type":"string"}},"required":["kind","label","unit","toValue","extractedFrom","sourceExcerpt"],"additionalProperties":{}},"operativeProvision":{"type":"string"},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"}},"required":["sourceName","sourceUrl","fetchedAt","recordId"],"additionalProperties":false}}},"required":["signalId","artifactId","localityMatch","relevance","boundedClaim","whyRelevant","whatItDoesNotProve","confidence","citations"],"additionalProperties":{}}},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"}},"required":["sourceName","sourceUrl","fetchedAt","recordId"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}},"refinement":{"type":"object","properties":{"context":{"type":"object","properties":{"input":{"type":"string"},"emphasizedDomains":{"type":"array","items":{"type":"string","enum":["housing","zoning","taxes","permits","public_safety","transportation","environment","business","utilities","schools","other"]}},"rationale":{"type":"array","items":{"type":"string"}}},"required":["input","emphasizedDomains","rationale"],"additionalProperties":false},"followUp":{"type":"object","properties":{"question":{"type":"string"},"status":{"type":"string","enum":["answered","gated","unsupported"]},"answer":{"type":"array","items":{"type":"string"}},"gatedReason":{"type":"string"},"gatedReasonCode":{"type":"string"},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"}},"required":["sourceName","sourceUrl","fetchedAt","recordId"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}}},"required":["question","status","answer","citations","caveats"],"additionalProperties":false}},"additionalProperties":{}}},"required":["kind","id","generatedAt","place","intent","policyRulesetVersion","artifacts","signals","citations","caveats"],"additionalProperties":{}},"verifyNext":{"type":"array","items":{"type":"object","properties":{"step":{"type":"string"},"url":{"type":"string"},"source":{"type":"string"}},"required":["step"],"additionalProperties":{}}},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","id","generatedAt","place","intent","componentStatus","trendBrief","verifyNext","caveats"],"additionalProperties":{}},{"type":"object","properties":{"kind":{"type":"string","const":"coverage_diagnostic"},"place":{"type":"object","properties":{"input":{"type":"string"},"resolved":{"type":"string"},"jurisdictionId":{"type":"string"},"coverageStatus":{"type":"string","enum":["discovery_only","unsupported","insufficient_data","source_unavailable"]}},"required":["input","coverageStatus"],"additionalProperties":false},"intent":{"type":"string"},"charged":{"type":"boolean","const":false},"message":{"type":"string"},"candidateSources":{"type":"array","items":{"type":"object","properties":{"category":{"type":"string"},"sourceName":{"type":"string"},"sourceUrl":{"type":"string"}},"required":["category","sourceName","sourceUrl"],"additionalProperties":false}},"whatWeWouldNeed":{"type":"array","items":{"type":"string"}},"sourceCounts":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string"},"recordCount":{"type":"number"}},"required":["source","recordCount"],"additionalProperties":false}},"preflight":{"type":"object","properties":{"tool":{"type":"string"},"url":{"type":"string"},"note":{"type":"string"}},"required":["tool","url","note"],"additionalProperties":false},"requestCoverage":{"type":"object","properties":{"tool":{"type":"string"},"endpoint":{"type":"string"},"note":{"type":"string"}},"required":["tool","endpoint","note"],"additionalProperties":false},"componentReadiness":{"type":"object","properties":{"trend":{"type":"string","enum":["ok","partial","thin","missing","unavailable"]},"parcel":{"type":"string","enum":["ok","varies","missing","unavailable"]},"policy":{"type":"string","enum":["ok","missing","unavailable"]}},"required":["trend","parcel","policy"],"additionalProperties":false},"componentReadinessDetail":{"type":"array","items":{"type":"object","properties":{"component":{"type":"string","enum":["trend","parcel","policy"]},"ready":{"type":"boolean"},"state":{"type":"string"},"reason":{"type":"string"}},"required":["component","ready","state","reason"],"additionalProperties":false}},"suggestedAlternative":{"type":"string"},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","place","intent","charged","message","candidateSources","whatWeWouldNeed","caveats"],"additionalProperties":false}],"description":"A `kind`-discriminated union: `before_you_sign_bundle` (parcel facts + trend brief + policy brief, with per-component status) or `coverage_diagnostic` for a free pre-charge diagnostic."},"priceUsdc":"0.07","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-before-you-sign.json","naming":{"style":"hyphen-paid-route","executableName":"locus-before-you-sign","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_broadband_check","canonicalId":"locus.broadband.check","callName":"locus_broadband_check","title":"Broadband availability check (FCC National Broadband Map)","description":"Resolve a US address/point and link to the official FCC National Broadband Map to check fixed-broadband providers, technologies (fiber/cable/fixed wireless/satellite), and max advertised speeds, plus the current data vintage. FCC/ISP-reported availability — never a fast/slow/good/bad verdict, and Locus does not redistribute the FCC location dataset. National. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["broadband","internet","connectivity","fcc","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_broadband_check","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_capital_projects","canonicalId":"locus.capital.projects","callName":"locus_capital_projects","title":"Capital projects + special assessments context","description":"Return official capital-project and special-assessment context near a point from source-specific local registries. Coverage: Raleigh, NC and Chatham County, NC; plus 69 verified registry jurisdictions across AZ, CA, CO, DC, FL, GA, ID, IL, KY, MA, MI, MN, NC, NJ, NY, OH, OR, PA, SC, TN, TX, UT, VA, WA (examples: Ada County Highway District (ACHD), ID, Beaufort County, SC — Stormwater Utility, and Bergen County, NJ). Some sources are near-point project layers while others are countywide budget context; each result labels its scope. Records only, never a cost, property-value, service-capacity, or disruption prediction. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["infrastructure","assessments","ownership-loop","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 1609, max 5000.","type":"integer","minimum":100,"maximum":5000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_capital_projects","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-capital-projects","canonicalId":"locus.capital.projects","callName":"locus-capital-projects","tier":"paid","endpoint":"https://api.locus.report/api/locus-capital-projects"}]},{"catalogId":"paid:locus-capital-projects","canonicalId":"locus.capital.projects","callName":"locus-capital-projects","title":"Capital projects + special assessments context","description":"Capital improvement projects + special assessments near an address. Perfect for: 'capital projects near a property', 'planned public infrastructure nearby', 'special assessment liens for a parcel', 'CIP projects in the area'. Returns source-scoped official project/assessment records with status, dates, and links. Coverage: Raleigh, NC and Chatham County, NC; plus 69 verified registry jurisdictions across 24 states/districts. Charge-free when out of coverage or the lookup fails.","tier":"paid","rail":"promoted-free-dual","category":"policy","tags":["infrastructure","assessments","ownership-loop","read-only","paid","x402","category:policy"],"endpoint":"https://api.locus.report/api/locus-capital-projects","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 1609, max 5000.","type":"integer","minimum":100,"maximum":5000}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-capital-projects.json","naming":{"style":"hyphen-paid-route","executableName":"locus-capital-projects","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_capital_projects","canonicalId":"locus.capital.projects","callName":"locus_capital_projects","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_cleanup_sites","canonicalId":"locus.cleanup.sites","callName":"locus_cleanup_sites","title":"Cleanup sites nearby (EPA Superfund/NPL + Brownfields)","description":"EPA Cleanups in My Community and Superfund/NPL public map-service records near a point, including program/status fields and official EPA profile links. Brownfields rows are surfaced with a candidate semantics flag until status vocabulary is verified in the linked EPA record. National by lat/lng or geocoded address. Awareness only - not a contamination, exposure, liability, health, or safe/unsafe conclusion. Read-only.","tier":"free","rail":"free","category":"environmental","tags":["environment","superfund","brownfields","cleanup","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"type":"integer","minimum":500,"maximum":50000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_cleanup_sites","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-cleanup-sites","canonicalId":"locus.cleanup.sites","callName":"locus-cleanup-sites","tier":"paid","endpoint":"https://api.locus.report/api/locus-cleanup-sites"}]},{"catalogId":"paid:locus-cleanup-sites","canonicalId":"locus.cleanup.sites","callName":"locus-cleanup-sites","title":"Cleanup sites nearby (EPA Superfund/NPL + Brownfields)","description":"EPA cleanup + Superfund/NPL sites near an address. Perfect for: 'Superfund sites near a property', 'EPA cleanup sites nearby', 'NPL sites near an address', 'brownfields near a parcel', 'contaminated site lookup'. Returns EPA Cleanups in My Community + Superfund/NPL records near a point with program/status fields and EPA profile links; brownfields carry a candidate flag. National by lat/lng or address. Awareness only. Charge-free when the lookup fails.","tier":"paid","rail":"promoted-free-dual","category":"environmental","tags":["environment","superfund","brownfields","cleanup","read-only","paid","x402","category:environmental"],"endpoint":"https://api.locus.report/api/locus-cleanup-sites","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"type":"integer","minimum":500,"maximum":50000}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-cleanup-sites.json","naming":{"style":"hyphen-paid-route","executableName":"locus-cleanup-sites","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_cleanup_sites","canonicalId":"locus.cleanup.sites","callName":"locus_cleanup_sites","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_coastal_county_catalog","canonicalId":"locus.coastal.county.catalog","callName":"locus_coastal_county_catalog","title":"Coastal county source catalog","description":"Return a read-only catalog of official coastal source packs across SC (Beaufort/Hilton Head, Charleston/Folly Beach, Horry/Myrtle Beach, Georgetown/Pawleys, Jasper), NC (New Hanover/Wilmington, Carteret/Morehead City, Brunswick, Onslow, Pender), GA (Chatham/Savannah, Bryan, Glynn, Effingham), and FL Atlantic/Gulf/Panhandle (Atlantic: Miami-Dade, Broward, Palm Beach, Martin, St. Lucie, Indian River, Monroe, Nassau, Duval, Flagler, St. Johns, Brevard, Volusia; Gulf: Collier, Lee, Charlotte, Sarasota, Manatee, Hillsborough, Pinellas, Pasco, Hernando, Citrus; Panhandle/Big Bend: Levy, Dixie, Taylor, Jefferson, Wakulla, Franklin, Gulf, Bay, Walton, Okaloosa, Santa Rosa, Escambia): parcels, address points, roads, zoning, FEMA flood, wetlands/coastal-permit leads, resiliency, permits, public-safety source leads, and agenda/ordinance sources. Use to see which coastal sources exist before overlay lookup or coverage work. Metadata only, no records, owner names, scores, or conclusions.","tier":"free","rail":"free","category":"hazard","tags":["coastal","source-catalog","parcels","flood","wetlands","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"county":{"description":"Optional county/source pack id, e.g. miami-dade-fl, new-hanover-nc, carteret-nc, beaufort-sc, or chatham-ga; omit to list all packs.","type":"string","enum":["beaufort-sc","new-hanover-nc","wilmington-nc","carteret-nc","morehead-city-nc","chatham-ga","savannah-ga","bryan-ga","jasper-sc","effingham-ga","charleston-sc","horry-sc","georgetown-sc","brunswick-nc","onslow-nc","pender-nc","glynn-ga","st-johns-fl","brevard-fl","volusia-fl","miami-dade-fl","broward-fl","palm-beach-fl","martin-fl","st-lucie-fl","indian-river-fl","monroe-fl","nassau-fl","duval-fl","flagler-fl","collier-fl","lee-fl","charlotte-fl","sarasota-fl","manatee-fl","hillsborough-fl","pinellas-fl","pasco-fl","hernando-fl","citrus-fl","levy-fl","dixie-fl","taylor-fl","jefferson-fl","wakulla-fl","franklin-fl","gulf-fl","bay-fl","walton-fl","okaloosa-fl","santa-rosa-fl","escambia-fl"]}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_coastal_county_catalog","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_coastal_county_overlays","canonicalId":"locus.coastal.county.overlays","callName":"locus_coastal_county_overlays","title":"Coastal parcel overlays at a point","description":"Return point-in-polygon official ArcGIS coastal overlays across SC (Beaufort/Hilton Head, Charleston/Folly Beach, Horry/Myrtle Beach, Georgetown/Pawleys), NC (New Hanover/Wilmington, Carteret/Morehead City, Brunswick, Onslow, Pender), GA (Chatham/Savannah, Bryan, Glynn), and FL Atlantic/Gulf/Panhandle (Atlantic: Miami-Dade, Broward, Palm Beach, Martin, St. Lucie, Indian River, Monroe, Nassau, Duval, Flagler, St. Johns, Brevard, Volusia; Gulf: Collier, Lee, Charlotte, Sarasota, Manatee, Hillsborough, Pinellas, Pasco, Hernando, Citrus; Panhandle/Big Bend: Levy, Dixie, Taylor, Jefferson, Wakulla, Franklin, Gulf, Bay, Walton, Okaloosa, Santa Rosa, Escambia): PII-safe parcel/address facts, zoning, flood zones, wetlands, resiliency/coastal context, and SFHA watch items when mapped. Use for parcel overlay context in supported coastal counties. Jasper and Effingham return partial/discovery leads. Cited records only, no owner names, insurance/legal conclusions, scores, or verdicts.","tier":"free","rail":"free","category":"hazard","tags":["coastal","parcels","zoning","flood","wetlands","property-intelligence","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"county":{"description":"Optional source pack. Use auto or omit to resolve the county from the point via FCC.","type":"string","enum":["auto","beaufort-sc","new-hanover-nc","wilmington-nc","carteret-nc","morehead-city-nc","chatham-ga","savannah-ga","bryan-ga","jasper-sc","effingham-ga","charleston-sc","horry-sc","georgetown-sc","brunswick-nc","onslow-nc","pender-nc","glynn-ga","st-johns-fl","brevard-fl","volusia-fl","miami-dade-fl","broward-fl","palm-beach-fl","martin-fl","st-lucie-fl","indian-river-fl","monroe-fl","nassau-fl","duval-fl","flagler-fl","collier-fl","lee-fl","charlotte-fl","sarasota-fl","manatee-fl","hillsborough-fl","pinellas-fl","pasco-fl","hernando-fl","citrus-fl","levy-fl","dixie-fl","taylor-fl","jefferson-fl","wakulla-fl","franklin-fl","gulf-fl","bay-fl","walton-fl","okaloosa-fl","santa-rosa-fl","escambia-fl"]}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_coastal_county_overlays","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-coastal-overlays","canonicalId":"locus.coastal.overlays","callName":"locus-coastal-overlays","tier":"paid","endpoint":"https://api.locus.report/api/locus-coastal-overlays"}]},{"catalogId":"paid:locus-coastal-overlays","canonicalId":"locus.coastal.overlays","callName":"locus-coastal-overlays","title":"Coastal parcel overlays at a point","description":"Official coastal parcel overlays across SC, NC, GA, and full FL Atlantic+Gulf+Panhandle (Miami-Dade..Escambia). Point-in-polygon ArcGIS facts: parcel, zoning, flood, wetlands/coastal context from supported county packs. Free if out of coverage/fail.","tier":"paid","rail":"promoted-free-dual","category":"hazard","tags":["coastal","parcels","zoning","flood","wetlands","property-intelligence","read-only","paid","x402","category:hazard"],"endpoint":"https://api.locus.report/api/locus-coastal-overlays","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"county":{"description":"Optional source pack. Use auto or omit to resolve the county from the point via FCC.","type":"string","enum":["auto","beaufort-sc","new-hanover-nc","wilmington-nc","carteret-nc","morehead-city-nc","chatham-ga","savannah-ga","bryan-ga","jasper-sc","effingham-ga","charleston-sc","horry-sc","georgetown-sc","brunswick-nc","onslow-nc","pender-nc","glynn-ga","st-johns-fl","brevard-fl","volusia-fl","miami-dade-fl","broward-fl","palm-beach-fl","martin-fl","st-lucie-fl","indian-river-fl","monroe-fl","nassau-fl","duval-fl","flagler-fl","collier-fl","lee-fl","charlotte-fl","sarasota-fl","manatee-fl","hillsborough-fl","pinellas-fl","pasco-fl","hernando-fl","citrus-fl","levy-fl","dixie-fl","taylor-fl","jefferson-fl","wakulla-fl","franklin-fl","gulf-fl","bay-fl","walton-fl","okaloosa-fl","santa-rosa-fl","escambia-fl"]}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-coastal-overlays.json","naming":{"style":"hyphen-paid-route","executableName":"locus-coastal-overlays","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_coastal_county_overlays","canonicalId":"locus.coastal.county.overlays","callName":"locus_coastal_county_overlays","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_compare_properties","canonicalId":"locus.compare.properties","callName":"locus_compare_properties","title":"Compare properties source map","description":"Create a side-by-side public-record comparison plan for two to six properties: parcel identity, jurisdiction/policy, zoning/future land use, entitlements/permits, utility service, transportation/access, environmental constraints, tax/fees/districts, public facilities, market activity, and source gaps. Prompt-mode: it does not execute searches or Locus tool calls, rank properties, pick a winner, score sites, decide feasibility, or provide legal/engineering/survey/brokerage/valuation/permitting advice. Use when the user wants to quickly understand what is different between known properties before deeper diligence.","tier":"free","rail":"free","category":"parcels","tags":["development","property-compare","feasibility","zoning","utilities","transportation","policy","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"properties":{"minItems":2,"maxItems":6,"type":"array","items":{"type":"object","properties":{"label":{"description":"Optional short label for this property, e.g. Site A or Downtown parcel.","type":"string","minLength":1,"maxLength":80},"address":{"description":"Optional US street address for this property.","type":"string","minLength":5,"maxLength":200},"parcelId":{"description":"Optional public parcel id/PIN/APN if known.","type":"string","minLength":2,"maxLength":80},"place":{"description":"Optional place/jurisdiction label when a street address is not available.","type":"string","minLength":3,"maxLength":160},"notes":{"description":"Optional caller note about the property; lead-only until verified against official records.","type":"string","minLength":3,"maxLength":300}},"additionalProperties":false},"description":"Two to six properties to compare. Each property needs an address, parcel id/PIN, or place label."},"projectType":{"description":"Optional project/use concept to focus the comparison, e.g. multifamily, retail pad, industrial, subdivision.","type":"string","minLength":3,"maxLength":120},"comparisonFocus":{"description":"Optional natural-language focus such as utility readiness, entitlement risk, zoning differences, access, flood/soils, fees, or acquisition diligence.","type":"string","minLength":3,"maxLength":300}},"required":["properties"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_compare_properties","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"paid:locus-comps-brief","canonicalId":"locus.comps.brief","callName":"locus-comps-brief","title":"Recorded-sale comparable-sales brief","description":"Recorded-sale comparables for one US address or point: comp rows (parcel, site address, sale date, price, and price per land square foot where lot acreage is published) within 1500m over 24 months, plus median price, price range, and a coarse up/flat/down trend. From official county assessor/parcel records; arithmetic only, never owner/buyer/seller, never a valuation or AVM. A thin area returns a free charge-suppressed diagnostic. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"economics","tags":["data","search","real-estate","property","property-research","due-diligence","public-records","x402","comps","comparable-sales","sales","parcels","valuation-context","category:economics"],"endpoint":"https://api.locus.report/api/locus-comps-brief","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"state":{"description":"Optional two-letter US state code, e.g. NC, FL, TX; provide with county to geography-gate the comps lane (address/point still required to run the spatial query).","type":"string","minLength":2,"maxLength":2},"county":{"description":"Optional county name, e.g. Wake; provide with state to geography-gate the comps lane.","type":"string","minLength":3,"maxLength":60},"address":{"description":"US street address; used to derive the search point and county.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude for point mode.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude for point mode.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters; default 1500, max 1500.","type":"number","minimum":100,"maximum":1500},"monthsBack":{"description":"Optional lookback window in months; default 24, max 24.","type":"integer","minimum":1,"maximum":24}},"additionalProperties":false,"description":"US street address or latitude+longitude (optionally with state+county to gate the geography). The comps lane runs a spatial query around the point over official assessor/parcel recorded-sale sources.","anyOf":[{"required":["address"]},{"required":["latitude","longitude"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"kind":{"type":"string","const":"comps_brief"},"generatedAt":{"type":"string"},"query":{"type":"object","properties":{"mode":{"type":"string","enum":["county","address","point"]},"radiusMeters":{"type":"number"},"monthsBack":{"type":"number"}},"required":["mode","radiusMeters","monthsBack"],"additionalProperties":false},"point":{"type":"object","properties":{"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["latitude","longitude"],"additionalProperties":false},"state":{"type":"string"},"county":{"type":"string"},"comps":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"sampleSize":{"type":"number"},"medianPrice":{"type":"number"},"priceRange":{"type":"object","properties":{"min":{"type":"number"},"max":{"type":"number"}},"required":["min","max"],"additionalProperties":false},"medianPricePerLandSqft":{"type":"number"},"trendDirection":{"type":"string","enum":["up","flat","down","insufficient_data"]},"componentStatus":{"type":"array","items":{"type":"object","properties":{"component":{"type":"string"},"status":{"type":"string"}},"required":["component","status"],"additionalProperties":false}},"provenance":{"type":"object","properties":{},"additionalProperties":{}},"caveats":{"type":"array","items":{"type":"string"}},"verifyNext":{"type":"array","items":{"type":"object","properties":{"step":{"type":"string"},"url":{"type":"string"}},"required":["step","url"],"additionalProperties":false}},"charged":{"type":"boolean"}},"required":["kind","generatedAt","query","comps","sampleSize","trendDirection","componentStatus","provenance","caveats","verifyNext"],"additionalProperties":{},"description":"A cited comps-brief artifact: recorded-sale comp rows (parcel, site address, date, price, and price per LAND square foot where lot acreage is published) within 1500m / 24 months, plus median sale price, min/max range, median price per land square foot, and a coarse up/flat/down trend; provenance, per-source status, and Register-of-Deeds verify links. Arithmetic over public records - never a valuation, appraisal, AVM, or price prediction. A miss returns charged:false."},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-comps-brief.json","naming":{"style":"hyphen-paid-route","executableName":"locus-comps-brief","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_coverage_check","canonicalId":"locus.coverage.check","callName":"locus_coverage_check","title":"Coverage check","description":"Use for 'is this city, county, ZIP, or address in Locus at all' — official public records and local-government context. Every time the question is whether Locus has wired sources here, call this before assuming a civic miss means skip Locus. Returns coverage SPLIT BY DATA FAMILY: civicLaneStatus (permits/311/code), parcelStatus, nationalEndpointStatus (always available), and alwaysAvailable national tools (flood, zoning-adjacent, environmental, EPA, representatives) that still run for any geocodable US address. A civic miss is not 'uncovered.' Coverage metadata only; no records or verdicts. Then call locus_lane_availability for the per-tool map.","tier":"free","rail":"free","category":"meta","tags":["coverage","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"place":{"type":"string","minLength":1,"description":"Required ZIP, city, county, or street address; use before paid briefs or source checks to confirm Locus coverage."}},"required":["place"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_coverage_check","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_coverage_demand","canonicalId":"locus.coverage.demand","callName":"locus_coverage_demand","title":"Coverage demand (public, aggregate)","description":"Return the public, anonymized coverage-demand queue: places requested by agents and aggregate counts. Use to see how expansion is prioritized before requesting a new place with locus_request_coverage. Aggregate counts only, no requester identity, records, briefs, scores, or verdicts.","tier":"free","rail":"free","category":"meta","tags":["coverage","transparency","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_coverage_demand","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_coverage_map","canonicalId":"locus.coverage.map","callName":"locus_coverage_map","title":"Coverage map","description":"Return the full public Locus coverage map: every known jurisdiction, derived brief-tool status, verified sources, missing recommended sources, and ZIPs. Use when an agent needs a supported-area inventory or a reason to call locus_coverage_check for one place. Coverage metadata only, not records, briefs, scores, or verdicts.","tier":"free","rail":"free","category":"meta","tags":["coverage","map","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{},"additionalProperties":false,"description":"No arguments."},"naming":{"style":"underscore-free-tool","executableName":"locus_coverage_map","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_data_center_watch","canonicalId":"locus.data.center.watch","callName":"locus_data_center_watch","title":"Data-center web-search prompt + local representative discovery","description":"Build a bounded web-search prompt and query pack for data-center awareness in a US county/place. Targets official planning, GIS/open-data, agendas, utility/water, ordinances, incentives, and environmental records for data centers, crypto mining, and compute campuses; can add representative searches. Use when no direct source lane exists and a search-capable agent will cite official sources. Does not claim match/no-match. Never a risk, approval, or safe/unsafe verdict. Read-only.","tier":"free","rail":"free","category":"environmental","tags":["development","data-centers","water","grid","representatives","ownership-loop","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address; used to resolve the county when state+county is not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to resolve county when address is absent.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to resolve county when address is absent.","type":"number","minimum":-180,"maximum":180},"state":{"description":"Optional two-letter state code for an explicit county scan, e.g. NC; provide with county.","type":"string","minLength":2,"maxLength":2},"county":{"description":"Optional county name for an explicit scan, e.g. Lee County, Wake County, Maricopa County; provide with state.","type":"string","minLength":3,"maxLength":60},"municipality":{"description":"Optional city/town name to make agenda, planning-board, and city-council searches more targeted.","type":"string","minLength":2,"maxLength":80},"includeRepresentatives":{"description":"Optional boolean; default true. Include representative-discovery search prompts for official local roster/contact/agenda resources.","type":"boolean"}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_data_center_watch","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"paid:locus-data-center-watch","canonicalId":"locus.data.center.watch","callName":"locus-data-center-watch","title":"Data-center / compute-campus development watch","description":"Data-center / compute-campus / crypto-mining awareness records for one US place. Combines structured official datasets (development/permit/capital cases, keyword-filtered) with an official-source web-search backup over agendas, GIS, utility/water, and ordinance records, plus representative contacts. Every record cites a source URL; news/social are unverified leads. Awareness only; a miss returns a free charge-suppressed diagnostic. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"policy","tags":["development","data-centers","compute-campus","water","grid","government","citations","x402","category:policy"],"endpoint":"https://api.locus.report/api/locus-data-center-watch","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address; resolves the county when state+county is not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude.","type":"number","minimum":-180,"maximum":180},"state":{"description":"Optional two-letter state code for an explicit county scan, e.g. NC; provide with county.","type":"string","minLength":2,"maxLength":2},"county":{"description":"Optional county name for an explicit scan, e.g. Loudoun County; provide with state.","type":"string","minLength":3,"maxLength":60},"municipality":{"description":"Optional city/town name to target agendas, planning-board, and council searches.","type":"string","minLength":2,"maxLength":80},"includeRepresentatives":{"description":"Optional boolean; default true. Surface official roster/agenda/contact resources when a record surfaces.","type":"boolean"}},"additionalProperties":false,"description":"US street address, latitude+longitude, or two-letter state code plus county name (optionally a municipality). Resolves the county, then returns cited data-center project records."},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"data_center_watch_records"},"ok":{"type":"boolean","const":true},"searchedPlace":{"type":"string"},"resolvedCounty":{"type":"object","properties":{"stateAbbr":{"type":"string"},"countyName":{"type":"string"},"countyFips5":{"type":"string"}},"required":["stateAbbr","countyName","countyFips5"],"additionalProperties":false},"structuredRecords":{"type":"array","items":{"type":"object","properties":{"jurisdiction":{"type":"string"},"record":{"type":"object","properties":{},"additionalProperties":{}},"matchedTerms":{"type":"array","items":{"type":"string"}},"source":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"verifyUrl":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}},"required":["jurisdiction","record","matchedTerms","source"],"additionalProperties":false}},"officialRecords":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"url":{"type":"string"},"snippet":{"type":"string"},"official":{"type":"boolean"}},"required":["title","url","snippet","official"],"additionalProperties":false}},"unverifiedLeads":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"url":{"type":"string"},"snippet":{"type":"string"},"official":{"type":"boolean"}},"required":["title","url","snippet","official"],"additionalProperties":false}},"representativeResources":{"type":"array","items":{"type":"object","properties":{"officialPageUrl":{"type":"string"},"title":{"type":"string"},"official":{"type":"boolean"},"publicPhone":{"type":"string"},"publicEmail":{"type":"string"}},"required":["officialPageUrl","title","official"],"additionalProperties":false}},"provider":{"type":"string"},"fetchedAt":{"type":"string"},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","ok","searchedPlace","structuredRecords","officialRecords","unverifiedLeads","representativeResources","fetchedAt","caveats"],"additionalProperties":{}},{"type":"object","properties":{"kind":{"type":"string","const":"data_center_watch_diagnostic"},"charged":{"type":"boolean","const":false},"ok":{"type":"boolean","const":true},"reason":{"type":"string"},"note":{"type":"string"},"methodology":{"anyOf":[{"type":"object","properties":{},"additionalProperties":{}},{"type":"null"}]}},"required":["kind","charged","ok","reason","note","methodology"],"additionalProperties":{}}],"description":"A `kind`-discriminated union: `data_center_watch_records` (structured keyword-filtered official dataset rows with provenance, plus official + unverified-lead web-search records each cited to a URL, plus official representative resources) for a hit, or `data_center_watch_diagnostic` (charged:false) carrying the free web-search-prompt methodology on a miss."},"priceUsdc":"0.07","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-data-center-watch.json","naming":{"style":"hyphen-paid-route","executableName":"locus-data-center-watch","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_development_cases","canonicalId":"locus.development.cases","callName":"locus_development_cases","title":"Development & zoning-board cases near a point","description":"Return active and recent development/site-plan, subdivision, rezoning, and zoning-board cases near a point from covered official planning/GIS sources, with status, dates, source links, and permit-overhang watch items for open/expired/no-final statuses. Use when the user asks what is being built, rezoned, or developed near an address. Coverage is SOURCE-SPECIFIC: Wake County, NC, Chatham County, NC, and Iredell County, NC; plus 92 verified registry jurisdictions across AZ, CA, CO, DC, FL, GA, ID, IL, IN, MA, MI, MN, NC, NJ, NV, NY, OH, OR, PA, SC, TN, TX, UT, VA, WA (examples: Arapahoe County, CO, Beaufort County, SC — Development Review Board, and Brunswick County, NC). NYC = Board of Standards & Appeals zoning variances/special permits ONLY, not ULURP/City-Planning land-use actions; Boston = BPDA Article 80 projects). Each result names its source; see knownGaps for what a jurisdiction does NOT cover. Records only, never approval odds or value prediction.","tier":"free","rail":"free","category":"parcels","tags":["zoning","development","ownership-loop","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 1500, max 5000.","type":"integer","minimum":100,"maximum":5000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_development_cases","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-development-cases","canonicalId":"locus.development.cases","callName":"locus-development-cases","tier":"paid","endpoint":"https://api.locus.report/api/locus-development-cases"}]},{"catalogId":"paid:locus-development-cases","canonicalId":"locus.development.cases","callName":"locus-development-cases","title":"Development & zoning-board cases near a point","description":"Development and zoning-board cases near an address. Use for nearby applications, rezonings, subdivisions, site plans, and variances. Returns status, dates, and links from covered planning/GIS sources. Coverage: Wake County, NC, Chatham County, NC, and Iredell County, NC; plus 92 verified registry jurisdictions across 25 states/districts. Charge-free when out of coverage.","tier":"paid","rail":"promoted-free-dual","category":"policy","tags":["zoning","development","ownership-loop","read-only","paid","x402","category:policy"],"endpoint":"https://api.locus.report/api/locus-development-cases","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 1500, max 5000.","type":"integer","minimum":100,"maximum":5000}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-development-cases.json","naming":{"style":"hyphen-paid-route","executableName":"locus-development-cases","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_development_cases","canonicalId":"locus.development.cases","callName":"locus_development_cases","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_development_site_discovery","canonicalId":"locus.development.site.discovery","callName":"locus_development_site_discovery","title":"Development site discovery source map","description":"Turn an area plus development specification into an open-ended candidate parcel discovery plan: official parcel/GIS, zoning/future-land-use, public/surplus land, utility readiness, DOT/TIP/access, environmental constraints, entitlement pipeline, Legistar/policy/fees, and lead-only broker/listing searches that must be verified against official records. Prompt-mode: it does not execute web searches, select a parcel, rank sites, call any parcel good/bad, decide feasibility, or provide legal/engineering/survey/brokerage/valuation/permitting advice. Use when the agent has an area/spec but no specific address yet; run locus_predevelopment_feasibility on each surviving candidate.","tier":"free","rail":"free","category":"parcels","tags":["development","parcel-discovery","feasibility","zoning","utilities","transportation","policy","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"area":{"type":"string","minLength":3,"maxLength":180,"description":"Required US search area, e.g. a county, city, corridor, submarket, ZIP cluster, or 'near <place>'; used before a specific address is known."},"projectType":{"description":"Optional development concept, e.g. multifamily, mixed-use, industrial, subdivision, data center, retail pad.","type":"string","minLength":3,"maxLength":120},"criteria":{"description":"Optional natural-language hard filters or preferences: acreage, sewer, frontage, avoid floodplain, near planned road work, public land, etc.","type":"string","minLength":3,"maxLength":600},"targetZoning":{"description":"Optional zoning/future-land-use/use signal to search for, e.g. CX, industrial, mixed-use, TOD, multifamily by-right.","type":"string","minLength":2,"maxLength":80},"minAcres":{"description":"Optional minimum parcel/site acres for discovery filtering.","type":"number","minimum":0,"maximum":10000},"maxAcres":{"description":"Optional maximum parcel/site acres for discovery filtering.","type":"number","minimum":0,"maximum":10000},"maxCandidates":{"description":"Optional maximum candidate parcel leads for the search-capable agent to return; default 10, max 25.","type":"integer","minimum":1,"maximum":25}},"required":["area"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_development_site_discovery","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_drinking_water_violations","canonicalId":"locus.drinking.water.violations","callName":"locus_drinking_water_violations","title":"Drinking-water violations (EPA SDWIS/ECHO)","description":"EPA SDWIS/ECHO Safe Drinking Water Act violation and enforcement rows for explicit PWSIDs, for active public water systems found in a state+county, or for the resolved county of an address/point. National coverage where SDWIS publishes rows. Regulatory records only - not proof this property is served by a system, not a current tap-water measurement, and never a health or safety verdict. Read-only.","tier":"free","rail":"free","category":"environmental","tags":["water","environment","sdwis","violations","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Address or place to resolve to county before querying SDWIS public-water-system violations.","type":"string","minLength":5,"maxLength":200},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"state":{"description":"Two-letter state code when querying by county, e.g. NC.","type":"string","minLength":2,"maxLength":2},"county":{"description":"County name when querying by county, e.g. Wake.","type":"string","minLength":3,"maxLength":60},"pwsids":{"description":"Optional explicit public water system ids.","maxItems":10,"type":"array","items":{"type":"string","minLength":3,"maxLength":24}}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_drinking_water_violations","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-drinking-water-violations","canonicalId":"locus.drinking.water.violations","callName":"locus-drinking-water-violations","tier":"paid","endpoint":"https://api.locus.report/api/locus-drinking-water-violations"}]},{"catalogId":"paid:locus-drinking-water-violations","canonicalId":"locus.drinking.water.violations","callName":"locus-drinking-water-violations","title":"Drinking-water violations (EPA SDWIS/ECHO)","description":"EPA drinking-water violations for a water system / area. Perfect for: 'drinking water violations for an address', 'SDWIS violations near me', 'water quality violations for a county', 'has my water system had violations', 'EPA drinking water compliance lookup'. Returns EPA SDWIS health-based and monitoring violations with system, contaminant, and date context, plus ECHO fallbacks. A covered system with zero violations is the real EPA answer. Charge-free when sources are unavailable or it fails.","tier":"paid","rail":"promoted-free-dual","category":"environmental","tags":["water","environment","sdwis","violations","read-only","paid","x402","category:environmental"],"endpoint":"https://api.locus.report/api/locus-drinking-water-violations","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Address or place to resolve to county before querying SDWIS public-water-system violations.","type":"string","minLength":5,"maxLength":200},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"state":{"description":"Two-letter state code when querying by county, e.g. NC.","type":"string","minLength":2,"maxLength":2},"county":{"description":"County name when querying by county, e.g. Wake.","type":"string","minLength":3,"maxLength":60},"pwsids":{"description":"Optional explicit public water system ids.","maxItems":10,"type":"array","items":{"type":"string","minLength":3,"maxLength":24}}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-drinking-water-violations.json","naming":{"style":"hyphen-paid-route","executableName":"locus-drinking-water-violations","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_drinking_water_violations","canonicalId":"locus.drinking.water.violations","callName":"locus_drinking_water_violations","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_drought_status","canonicalId":"locus.drought.status","callName":"locus_drought_status","title":"Drought status and recent history for the county (US Drought Monitor)","description":"Weekly US Drought Monitor status for the county containing a point, plus recent weeks. Perfect for: 'is this area in drought', 'drought conditions near an address', 'how long has this county been dry', 'water restrictions context'. Returns the USDM category (D0 Abnormally Dry through D4 Exceptional Drought) with BOTH the published cumulative area percentages and non-overlapping bands, since the raw columns are cumulative and easily misread. National, weekly. USDM is an expert-blended composite indicator describing the county, not a measurement at any address, well, or parcel, and it does not set water restrictions. Awareness only. Read-only.","tier":"free","rail":"free","category":"environmental","tags":["drought","water","climate","usdm","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"weeks":{"type":"integer","minimum":1,"maximum":52}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_drought_status","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_electric_utility_resolver","canonicalId":"locus.electric.utility.resolver","callName":"locus_electric_utility_resolver","title":"Mapped electric-utility territory candidates and registered rebates","description":"Return every HIFLD electric retail service-territory polygon containing an address or point, with EIA utility ID, ownership type, source vintage, and rebates joined only by registered utility ID. Overlaps and stale boundaries remain visible. Candidate evidence only: never proof of service, capacity, tariff, interconnection, timing, reliability, or cost. National, free and read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["electricity","utility","rebates","hifld","eia","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address used to query mapped electric retail service territories.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_electric_utility_resolver","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"paid:locus-electricity-context","canonicalId":"locus.electricity.context","callName":"locus-electricity-context","title":"Transmission-line proximity + state electricity-price context","description":"Mapped HIFLD transmission-line proximity plus EIA statewide residential price context. Perfect for: data-center, industrial, energy-development, and power-sensitive site screens before utility diligence. Returns up to 10 lines and state price context; never a service, capacity, reliability, tariff, interconnection, timing, or cost finding. Charge-free when the point is unresolved and when neither source answers.","tier":"paid","rail":"paid-atomic","category":"infrastructure","tags":["electricity","transmission","power","price-context","hifld","eia","site-selection","read-only","paid","x402","category:infrastructure"],"endpoint":"https://api.locus.report/api/locus-electricity-context","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address. Provide this or latitude+longitude.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Decimal latitude; provide with longitude.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Decimal longitude; provide with latitude.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Transmission-line search radius in meters; defaults to 10,000 and is capped at 25,000.","type":"integer","minimum":1000,"maximum":25000}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-electricity-context.json","naming":{"style":"hyphen-paid-route","executableName":"locus-electricity-context","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"paid:locus-environmental-context","canonicalId":"locus.environmental.context","callName":"locus-environmental-context","title":"Address-level environmental context (EPA TRI/RCRA/SDWIS)","description":"Address-level EPA environmental public-record context (heavier call: allow 60-90s): TRI/RCRA proximity plus SDWIS water systems from address, point, or state+county. Provenance and verify links; facility context, not incident confirmation or a safety verdict. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"environmental","tags":["data","search","real-estate","property","property-research","due-diligence","public-records","x402","property-environment","environmental-due-diligence","hazardous-materials","water","air-quality","government","citations","category:environmental"],"endpoint":"https://api.locus.report/api/locus-environmental-context","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"state":{"description":"Optional two-letter US state code, e.g. NC, OH, NY; provide with county for county mode.","type":"string","minLength":2,"maxLength":2},"county":{"description":"Optional county name, e.g. Wake; provide with state for county mode.","type":"string","minLength":3,"maxLength":60},"address":{"description":"Optional US street address; used to derive county and rank EPA TRI/RCRA facility records by distance.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude for point mode.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude for point mode.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional proximity radius in meters for address/point mode; default 5000, max 25000.","type":"number","minimum":1,"maximum":25000}},"additionalProperties":false,"description":"US street address, latitude+longitude, or backward-compatible two-letter state code plus county name. Address/point mode derives the county and ranks public EPA facility rows by distance.","anyOf":[{"required":["address"]},{"required":["latitude","longitude"]},{"required":["state","county"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"kind":{"type":"string","const":"environmental_context"},"state":{"type":"string"},"county":{"type":"string"},"generatedAt":{"type":"string"},"query":{"type":"object","properties":{"mode":{"type":"string","enum":["county","address","point"]},"radiusMeters":{"type":"number"}},"required":["mode","radiusMeters"],"additionalProperties":false},"point":{"type":"object","properties":{"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["latitude","longitude"],"additionalProperties":false},"countyFips3":{"type":"string"},"componentStatus":{"type":"array","items":{"type":"object","properties":{"component":{"type":"string","enum":["toxic_releases","hazardous_waste_handlers","water_systems","address_proximity"]},"status":{"type":"string","enum":["ok","unavailable","needs_point_or_fips","needs_point"]}},"required":["component","status"],"additionalProperties":false}},"toxicReleases":{"type":"object","properties":{},"additionalProperties":{}},"hazardousWasteHandlers":{"type":"object","properties":{},"additionalProperties":{}},"waterSystems":{"type":"object","properties":{},"additionalProperties":{}},"proximity":{"type":"object","properties":{},"additionalProperties":{}},"caveats":{"type":"array","items":{"type":"string"}},"charged":{"type":"boolean"}},"required":["kind","state","county","generatedAt","query","componentStatus","caveats"],"additionalProperties":{},"description":"A cited environmental-context artifact: EPA TRI hazardous-release reporting facilities, EPA RCRA hazardous-waste handlers when a point/county FIPS is available, and EPA SDWIS drinking-water systems, with provenance, per-component status, distance-ranked address proximity where applicable, and event-history verify links (NRC, PHMSA)."},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-environmental-context.json","naming":{"style":"hyphen-paid-route","executableName":"locus-environmental-context","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_environmental_history","canonicalId":"locus.environmental.history","callName":"locus_environmental_history","title":"Environmental history: address-level proximity-ranked TRI/RCRA + county environmental composite (national)","description":"One-call environmental bundle for an address or county: EPA TRI facilities, RCRA hazardous-waste handlers, SDWIS public water systems, EPA radon zone, and NRC/PHMSA event-history verify links. The agent-facing top line is radonHeadline plus addressProximity; countyBackground and legacy county fields are broad context only and may be identical for every property in a county. Use when the user asks broadly about environmental records, contamination, or hazards near a place; prefer this over granular lanes like locus_water_systems or locus_toxic_releases. National by lat/lng or state+county; NC addresses geocode. Optional radiusMeters tunes the TRI/RCRA proximity ranking (default ~5000 m, clamped to ~24000 m). Record context only, not incident confirmation or a safety verdict. Read-only.","tier":"free","rail":"free","category":"environmental","tags":["environment","hazardous-materials","toxic","water","radon","composite","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address; used to derive county when state+county or lat/lng are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to derive county from the point.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to derive county from the point.","type":"number","minimum":-180,"maximum":180},"state":{"description":"Optional two-letter state code; provide with county to skip point resolution.","type":"string","minLength":2,"maxLength":2},"county":{"description":"Optional county name, e.g. Wake; provide with state to skip point resolution.","type":"string","minLength":3,"maxLength":60},"radiusMeters":{"description":"Optional proximity radius in meters for the TRI/RCRA address ranking; default ~5000 (3.1 mi), clamped to ~24000 (15 mi).","type":"integer","minimum":100,"maximum":24000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_environmental_history","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-environmental-history-lookup","canonicalId":"locus.environmental.history.lookup","callName":"locus-environmental-history-lookup","tier":"paid","endpoint":"https://api.locus.report/api/locus-environmental-history-lookup"}]},{"catalogId":"paid:locus-environmental-history-lookup","canonicalId":"locus.environmental.history.lookup","callName":"locus-environmental-history-lookup","title":"Environmental history: address-level proximity-ranked TRI/RCRA + county environmental composite (national)","description":"Address-level environmental record proximity. Perfect for: 'environmental hazards near an address', 'EPA TRI / RCRA sites near a property', 'is there a polluter nearby', 'radon zone for an address', 'environmental due diligence for a property'. Returns proximity-ranked EPA Toxics Release Inventory + RCRA facilities, nearest large-quantity generator, and the county radon/background composite. National. Not a contamination or safe/unsafe verdict.","tier":"paid","rail":"promoted-free-dual","category":"environmental","tags":["environment","hazardous-materials","toxic","water","radon","composite","read-only","paid","x402","category:environmental"],"endpoint":"https://api.locus.report/api/locus-environmental-history-lookup","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address; used to derive county when state+county or lat/lng are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to derive county from the point.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to derive county from the point.","type":"number","minimum":-180,"maximum":180},"state":{"description":"Optional two-letter state code; provide with county to skip point resolution.","type":"string","minLength":2,"maxLength":2},"county":{"description":"Optional county name, e.g. Wake; provide with state to skip point resolution.","type":"string","minLength":3,"maxLength":60},"radiusMeters":{"description":"Optional proximity radius in meters for the TRI/RCRA address ranking; default ~5000 (3.1 mi), clamped to ~24000 (15 mi).","type":"integer","minimum":100,"maximum":24000}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-environmental-history-lookup.json","naming":{"style":"hyphen-paid-route","executableName":"locus-environmental-history-lookup","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_environmental_history","canonicalId":"locus.environmental.history","callName":"locus_environmental_history","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_fair_market_rents","canonicalId":"locus.fair.market.rents","callName":"locus_fair_market_rents","title":"HUD Fair Market Rents by county (national, token-gated)","description":"Return HUD Fair Market Rents for a US county by fiscal year, efficiency through 4-bedroom, from the official HUD API. Use for voucher/program rent context or lease-policy questions. Accepts address, place, point, or explicit state FIPS + 3-digit county FIPS. Requires the operator HUD token and returns an unconfigured state otherwise. Program rent facts only, never market rent, affordability advice, or valuation. Read-only.","tier":"free","rail":"free","category":"economics","tags":["housing","rents","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"place":{"description":"Optional US place or address; use a street address or unambiguous place with state when FIPS are not provided.","type":"string","minLength":2,"maxLength":200},"stateFips":{"description":"Optional state FIPS code, e.g. 37 for NC; omit to resolve from address/place/point.","type":"string","minLength":1,"maxLength":2},"countyFips3":{"description":"Optional 3-digit county FIPS within state, e.g. 183 for Wake; omit to resolve from address/place/point.","type":"string","minLength":1,"maxLength":3},"year":{"description":"Optional HUD fiscal year, 2015-2030; omit for source default/latest.","type":"integer","minimum":2015,"maximum":2030}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_fair_market_rents","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-fair-market-rents","canonicalId":"locus.fair.market.rents","callName":"locus-fair-market-rents","tier":"paid","endpoint":"https://api.locus.report/api/locus-fair-market-rents"}]},{"catalogId":"paid:locus-fair-market-rents","canonicalId":"locus.fair.market.rents","callName":"locus-fair-market-rents","title":"HUD Fair Market Rents by county (national, token-gated)","description":"HUD Fair Market Rents by county. Perfect for: 'fair market rent for a county', 'HUD FMR lookup', 'voucher rent limits', 'Section 8 rent standards', 'program rent for an area'. Returns official HUD Fair Market Rents (efficiency through 4-bedroom) for a US county by fiscal year from the HUD USER API. National. Program rent context only -- not market listings or affordability advice. Charge-free when the HUD token is not configured or the HUD API is unavailable.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["housing","rents","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-fair-market-rents","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"place":{"description":"Optional US place or address; use a street address or unambiguous place with state when FIPS are not provided.","type":"string","minLength":2,"maxLength":200},"stateFips":{"description":"Optional state FIPS code, e.g. 37 for NC; omit to resolve from address/place/point.","type":"string","minLength":1,"maxLength":2},"countyFips3":{"description":"Optional 3-digit county FIPS within state, e.g. 183 for Wake; omit to resolve from address/place/point.","type":"string","minLength":1,"maxLength":3},"year":{"description":"Optional HUD fiscal year, 2015-2030; omit for source default/latest.","type":"integer","minimum":2015,"maximum":2030}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-fair-market-rents.json","naming":{"style":"hyphen-paid-route","executableName":"locus-fair-market-rents","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_fair_market_rents","canonicalId":"locus.fair.market.rents","callName":"locus_fair_market_rents","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_fema_events","canonicalId":"locus.fema.events","callName":"locus_fema_events","title":"FEMA events: declarations, flood claims, map revisions","description":"ONE-CALL FEMA bundle: disaster declarations by county, NFIP flood-claim history by ZIP, and preliminary FIRM panels at a point, from official FEMA sources. Use when the user asks about realized flood history, past flooding, disaster declarations, or paid flood-insurance claims for an address; prefer this over locus_flood_zone, which gives only the current designation. Accepts address, place, point, or explicit state + 3-digit county FIPS for declarations. NFIP claims are ZIP/area-level. National, no key. Records and map status only, never a prediction, insurance quote, or verdict.","tier":"free","rail":"free","category":"hazard","tags":["fema","flood","disasters","ownership-loop","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address; derives ZIP for NFIP claims and the point for preliminary-FIRM when geocodable. Explicit zip/lat/lng win over derived.","type":"string"},"state":{"description":"Optional two-letter state code for disaster declarations; provide with countyFips3.","type":"string","minLength":2,"maxLength":2},"countyFips3":{"description":"Optional 3-digit county FIPS within state for declarations, e.g. 183 for Wake.","type":"string","minLength":1,"maxLength":3},"zip":{"description":"Optional 5-digit or ZIP+4 code for NFIP flood-claim history; overrides address-derived ZIP.","type":"string","minLength":5,"maxLength":10},"latitude":{"description":"Optional decimal latitude for preliminary FIRM panels; provide with longitude.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude for preliminary FIRM panels; provide with latitude.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_fema_events","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-fema-events","canonicalId":"locus.fema.events","callName":"locus-fema-events","tier":"paid","endpoint":"https://api.locus.report/api/locus-fema-events"}]},{"catalogId":"paid:locus-fema-events","canonicalId":"locus.fema.events","callName":"locus-fema-events","title":"FEMA events: declarations, flood claims, map revisions","description":"FEMA disaster history for an area. Perfect for: 'FEMA disaster declarations for a county', 'disaster history for an address', 'flood / hurricane / wildfire declarations near a place', 'NFIP claims history'. Returns cited FEMA disaster declarations plus NFIP flood-insurance claim history for the resolved county. National. Historical record context, not a forecast or a risk score. Charge-free when the FEMA lookup fails.","tier":"paid","rail":"promoted-free-dual","category":"hazard","tags":["fema","flood","disasters","ownership-loop","read-only","paid","x402","category:hazard"],"endpoint":"https://api.locus.report/api/locus-fema-events","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address; derives ZIP for NFIP claims and the point for preliminary-FIRM when geocodable. Explicit zip/lat/lng win over derived.","type":"string"},"state":{"description":"Optional two-letter state code for disaster declarations; provide with countyFips3.","type":"string","minLength":2,"maxLength":2},"countyFips3":{"description":"Optional 3-digit county FIPS within state for declarations, e.g. 183 for Wake.","type":"string","minLength":1,"maxLength":3},"zip":{"description":"Optional 5-digit or ZIP+4 code for NFIP flood-claim history; overrides address-derived ZIP.","type":"string","minLength":5,"maxLength":10},"latitude":{"description":"Optional decimal latitude for preliminary FIRM panels; provide with longitude.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude for preliminary FIRM panels; provide with latitude.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-fema-events.json","naming":{"style":"hyphen-paid-route","executableName":"locus-fema-events","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_fema_events","canonicalId":"locus.fema.events","callName":"locus_fema_events","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_flood_gauges","canonicalId":"locus.flood.gauges","callName":"locus_flood_gauges","title":"Flood gauges near a point (USGS + NWS)","description":"Nearby USGS stream/river gauges with latest stage/flow observations and NOAA/NWS National Water Prediction Service threshold metadata where available. National by lat/lng or geocoded address. Hydrologic context only - not a parcel flood prediction, insurance determination, or safe/unsafe label. Read-only.","tier":"free","rail":"free","category":"environmental","tags":["flood","gauges","water","hydrology","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"type":"integer","minimum":500,"maximum":50000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_flood_gauges","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-flood-gauges","canonicalId":"locus.flood.gauges","callName":"locus-flood-gauges","tier":"paid","endpoint":"https://api.locus.report/api/locus-flood-gauges"}]},{"catalogId":"paid:locus-flood-gauges","canonicalId":"locus.flood.gauges","callName":"locus-flood-gauges","title":"Flood gauges near a point (USGS + NWS)","description":"Nearby flood gauges with stage/flow observations. Perfect for: 'flood gauges near an address', 'USGS stream gauges nearby', 'river water levels near a property', 'NWS flood thresholds for an area'. Returns USGS stream/river gauges with latest stage/flow observations and NOAA/NWS threshold metadata within the search radius. National. Hydrologic context only - not a flood prediction or insurance determination. Charge-free when the gauge lookup fails.","tier":"paid","rail":"promoted-free-dual","category":"hazard","tags":["flood","gauges","water","hydrology","read-only","paid","x402","category:hazard"],"endpoint":"https://api.locus.report/api/locus-flood-gauges","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"type":"integer","minimum":500,"maximum":50000}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-flood-gauges.json","naming":{"style":"hyphen-paid-route","executableName":"locus-flood-gauges","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_flood_gauges","canonicalId":"locus.flood.gauges","callName":"locus_flood_gauges","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_flood_zone","canonicalId":"locus.flood.zone","callName":"locus_flood_zone","title":"Flood zone designation (FEMA NFHL)","description":"Return the official FEMA NFHL flood-zone designation at a point: zone, SFHA flag, FIRM panel id, provenance, and SFHA flood-insurance overhang steps when mapped. Use when the user asks whether an address floods, is in a FEMA flood zone or SFHA, or needs flood insurance. A zone is a regulatory map fact, never a prediction, premium estimate, or safe/unsafe statement. National coverage; NC addresses geocode. Read-only.","tier":"free","rail":"free","category":"hazard","tags":["flood","property","hazard-designation","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_flood_zone","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-flood-zone","canonicalId":"locus.flood.zone","callName":"locus-flood-zone","tier":"paid","endpoint":"https://api.locus.report/api/locus-flood-zone"}]},{"catalogId":"paid:locus-flood-zone","canonicalId":"locus.flood.zone","callName":"locus-flood-zone","title":"Flood zone designation (FEMA NFHL)","description":"FEMA flood zone for an address. Perfect for: 'flood zone for an address', 'FEMA flood designation', 'is this property in a floodplain', 'is this address in a 100-year flood zone', 'flood risk lookup'. Returns the FEMA NFHL flood-zone designation, 0.2%-annual-chance and BFE/floodway flags at the geocoded point, with source provenance. National. Not a flood insurance quote or a safe/unsafe verdict. Charge-free when the flood lookup fails.","tier":"paid","rail":"promoted-free-dual","category":"hazard","tags":["flood","property","hazard-designation","read-only","paid","x402","category:hazard"],"endpoint":"https://api.locus.report/api/locus-flood-zone","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-flood-zone.json","naming":{"style":"hyphen-paid-route","executableName":"locus-flood-zone","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_flood_zone","canonicalId":"locus.flood.zone","callName":"locus_flood_zone","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_fraud_alert_pointer","canonicalId":"locus.fraud.alert.pointer","callName":"locus_fraud_alert_pointer","title":"Cited property-fraud alert and title-protection pointers","description":"Return registry-backed title-protection rows for a resolved US place in local, state, then national order. When no local row exists, append neutral search guidance for the county recorder or clerk after any state and national rows. Never claims that an unlisted county operates an alert service.","tier":"free","rail":"free","category":"infrastructure","tags":["owner-programs","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address or ZIP used to resolve state, county, and city program rows.","type":"string","minLength":1,"maxLength":200},"place":{"description":"US city, county, state, ZIP, or address used to resolve program rows.","type":"string","minLength":1,"maxLength":200}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_fraud_alert_pointer","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-fraud-alert-pointer","canonicalId":"locus.fraud.alert.pointer","callName":"locus-fraud-alert-pointer","tier":"paid","endpoint":"https://api.locus.report/api/locus-fraud-alert-pointer"}]},{"catalogId":"paid:locus-fraud-alert-pointer","canonicalId":"locus.fraud.alert.pointer","callName":"locus-fraud-alert-pointer","title":"Cited property-fraud alert and title-protection pointers","description":"Cited county recorder property-fraud alert and title-notification programs. Perfect for: 'property fraud alert for this county', 'recorded document notification'. Returns a registry row when Locus has one; otherwise the free tool gives only a generic recorder search pointer. No title or fraud determination. Charge-free unless an actual registry row returns.","tier":"paid","rail":"promoted-free-dual","category":"parcels","tags":["owner-programs","read-only","paid","x402","category:parcels"],"endpoint":"https://api.locus.report/api/locus-fraud-alert-pointer","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address or ZIP used to resolve state, county, and city program rows.","type":"string","minLength":1,"maxLength":200},"place":{"description":"US city, county, state, ZIP, or address used to resolve program rows.","type":"string","minLength":1,"maxLength":200}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-fraud-alert-pointer.json","naming":{"style":"hyphen-paid-route","executableName":"locus-fraud-alert-pointer","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_fraud_alert_pointer","canonicalId":"locus.fraud.alert.pointer","callName":"locus_fraud_alert_pointer","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_governing_districts","canonicalId":"locus.governing.districts","callName":"locus_governing_districts","title":"Who governs this address (Census TIGERweb)","description":"Return current US congressional, state senate, and state house districts containing a point from official Census TIGERweb layers, with provenance. Use when the user asks who represents or governs an address, or what voting/legislative districts it sits in. Representation facts only, never political advice, ranking, or eligibility determination. National coverage. Read-only.","tier":"free","rail":"free","category":"policy","tags":["districts","representation","policy","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_governing_districts","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-governing-districts","canonicalId":"locus.governing.districts","callName":"locus-governing-districts","tier":"paid","endpoint":"https://api.locus.report/api/locus-governing-districts"}]},{"catalogId":"paid:locus-governing-districts","canonicalId":"locus.governing.districts","callName":"locus-governing-districts","title":"Who governs this address (Census TIGERweb)","description":"Legislative districts for an address. Perfect for: 'what congressional district is this address in', 'state legislative districts for a location', 'who represents this address', 'voting districts lookup'. Returns US congressional, state senate, and state house districts from Census TIGERweb. National. Not local districts (county/municipal wards/school boards). Charge-free when geocoding fails or TIGERweb errors.","tier":"paid","rail":"promoted-free-dual","category":"infrastructure","tags":["districts","representation","policy","read-only","paid","x402","category:infrastructure"],"endpoint":"https://api.locus.report/api/locus-governing-districts","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-governing-districts.json","naming":{"style":"hyphen-paid-route","executableName":"locus-governing-districts","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_governing_districts","canonicalId":"locus.governing.districts","callName":"locus_governing_districts","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_groundwater_context","canonicalId":"locus.groundwater.context","callName":"locus_groundwater_context","title":"Groundwater and monitoring-well context (USGS Water Data)","description":"Return nearby USGS groundwater monitoring locations within a bounded radius, national/local aquifer codes and names, the reported well-construction-depth distribution with an explicit sparse-data denominator, and the most recent static water-level observation plus a conservative multi-year record assessment. Perfect for well-water buyer diligence and pre-development questions about nearby observed depths and whether a long record exists. Monitoring wells are often purpose-drilled observation wells, not domestic wells; this does not predict drilling depth, water presence, yield, potability, contamination, or cost. Monitoring-location names and exact coordinates are never returned; distance bands only. Zero nearby locations means no USGS monitoring data in the radius, not no groundwater. National, keyless, live-query, read-only.","tier":"free","rail":"free","category":"environmental","tags":["groundwater","water","wells","aquifer","septic","site","usgs","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"default":5000,"description":"Bounded radius around the subject point in meters; default 5000, minimum 500, maximum 25000.","type":"integer","minimum":500,"maximum":25000}},"required":["radiusMeters"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_groundwater_context","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-groundwater-context","canonicalId":"locus.groundwater.context","callName":"locus-groundwater-context","tier":"paid","endpoint":"https://api.locus.report/api/locus-groundwater-context"}]},{"catalogId":"paid:locus-groundwater-context","canonicalId":"locus.groundwater.context","callName":"locus-groundwater-context","title":"Groundwater and monitoring-well context (USGS Water Data)","description":"USGS groundwater monitoring-well context for an address. Perfect for: 'groundwater depth near this property', 'nearby monitoring wells', 'what aquifer is near this address', 'historical water level observations'. Returns distance-banded monitoring wells, aquifer codes/names, reported construction depths, and static water levels. Not a domestic-well depth, yield, potability, contamination, or cost prediction. Charge-free unless state is data.","tier":"paid","rail":"promoted-free-dual","category":"environmental","tags":["groundwater","water","wells","aquifer","septic","site","usgs","read-only","paid","x402","category:environmental"],"endpoint":"https://api.locus.report/api/locus-groundwater-context","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"default":5000,"description":"Bounded radius around the subject point in meters; default 5000, minimum 500, maximum 25000.","type":"integer","minimum":500,"maximum":25000}},"required":["radiusMeters"],"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-groundwater-context.json","naming":{"style":"hyphen-paid-route","executableName":"locus-groundwater-context","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_groundwater_context","canonicalId":"locus.groundwater.context","callName":"locus_groundwater_context","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_house_price_index","canonicalId":"locus.house.price.index","callName":"locus_house_price_index","title":"State house price index (FHFA via FRED)","description":"Return the latest state-level FHFA All-Transactions House Price Index and its year-over-year change (distributed via FRED) for an address/point. INDEX DATA, never an appraisal, dollar value, or hot/cold market verdict. Requires the FRED API key; fails closed when unset. Carries the required FRED attribution. National. Read-only.","tier":"free","rail":"free","category":"economics","tags":["investors","house-price-index","trend","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_house_price_index","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-house-price-index","canonicalId":"locus.house.price.index","callName":"locus-house-price-index","tier":"paid","endpoint":"https://api.locus.report/api/locus-house-price-index"}]},{"catalogId":"paid:locus-house-price-index","canonicalId":"locus.house.price.index","callName":"locus-house-price-index","title":"State house price index (FHFA via FRED)","description":"FHFA house price index trend for a state. Perfect for: 'house price index for a state', 'home price appreciation in a state', 'HPI year-over-year for an area', 'state home price trend', 'how much have home prices risen in a state'. Returns the FRED-hosted FHFA all-transactions HPI for the state of a US point: latest index, year-over-year percent change, and units. State-level. Historical index, not a forecast. Key-gated (FRED); charge-free when unkeyed, on failure, or no data.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["investors","house-price-index","trend","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-house-price-index","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-house-price-index.json","naming":{"style":"hyphen-paid-route","executableName":"locus-house-price-index","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_house_price_index","canonicalId":"locus.house.price.index","callName":"locus_house_price_index","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_housing_stock","canonicalId":"locus.housing.stock","callName":"locus_housing_stock","title":"Housing-stock facts at a point (Census ACS, national)","description":"Return Census ACS 5-year tract housing-stock facts at a US point: total units, tenure mix, median gross rent, median home value, and median year built. Use when the user asks about the housing or rental context of an area: how much is rented vs owned, typical rents or home values, age of the housing stock. Excludes demographic composition and actual listings/comps. Aggregate tract facts only, never a valuation, rent prediction, screening signal, or verdict. Read-only.","tier":"free","rail":"free","category":"economics","tags":["housing","census","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_housing_stock","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-housing-stock","canonicalId":"locus.housing.stock","callName":"locus-housing-stock","tier":"paid","endpoint":"https://api.locus.report/api/locus-housing-stock"}]},{"catalogId":"paid:locus-housing-stock","canonicalId":"locus.housing.stock","callName":"locus-housing-stock","title":"Housing-stock facts at a point (Census ACS, national)","description":"Census housing-stock context for an area. Perfect for: 'housing stock for an area', 'how old are the homes / median year built', 'owner vs renter share', 'housing units and vacancy for a place'. Returns cited ACS housing-stock characteristics (units, age, tenure, vacancy) for the resolved county/area. National. Area-level context, not a parcel record. Charge-free when the housing-stock lookup fails.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["housing","census","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-housing-stock","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-housing-stock.json","naming":{"style":"hyphen-paid-route","executableName":"locus-housing-stock","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_housing_stock","canonicalId":"locus.housing.stock","callName":"locus_housing_stock","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_landslide_context","canonicalId":"locus.landslide.context","callName":"locus_landslide_context","title":"USGS landslide inventory and source-native susceptibility context","description":"Return PII-safe USGS v3 inventory rows and the raw n10 90-meter model-cell value where published. Coverage: United States and Puerto Rico where the USGS v3 inventory and n10 model publish data. Inventory history and modeled susceptibility remain separate. No probability, risk class, parcel stability finding, engineering assessment, follow-up synthesis, or place verdict. Free, read-only.","tier":"free","rail":"free","category":"hazard","tags":["landslide","hazard","usgs","inventory","susceptibility","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address; geocoded to a point.","type":"string","minLength":5,"maxLength":240},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"searchRadiusMeters":{"default":1000,"type":"integer","minimum":100,"maximum":10000}},"required":["searchRadiusMeters"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_landslide_context","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"paid:locus-landslide-diligence","canonicalId":"locus.landslide.diligence","callName":"locus-landslide-diligence","title":"Landslide history and susceptibility diligence","description":"Resolve one US property point, keep documented USGS inventory history separate from the source-native n10 90-meter susceptibility value, and return cited unanswered questions and professional follow-up. No probability, property safety label, or engineering conclusion. Charge-free unless both national components answer. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"hazard","tags":["landslide","hazard","usgs","due-diligence","public-records","x402","category:hazard"],"endpoint":"https://api.locus.report/api/locus-landslide-diligence","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address; geocoded to a point.","type":"string","minLength":5,"maxLength":240},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"searchRadiusMeters":{"default":1000,"type":"integer","minimum":100,"maximum":10000}},"required":["searchRadiusMeters"],"additionalProperties":false},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"kind":{"type":"string","const":"landslide_diligence"},"charged":{"type":"boolean","const":false},"point":{"type":"object","properties":{"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["latitude","longitude"],"additionalProperties":false},"spatialPrecision":{"type":"string"},"searchRadiusMeters":{"type":"number"},"historyState":{"type":"string","enum":["documented_records_found","checked_no_inventory_match","inventory_out_of_coverage","inventory_source_unavailable"]},"susceptibilityState":{"type":"string","enum":["official_value_published","model_out_of_coverage","snapshot_stale","susceptibility_source_unavailable"]},"inventoryRecords":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"susceptibility":{"type":"object","properties":{"modelId":{"type":"string","const":"n10"},"value":{"type":"integer","minimum":0,"maximum":81},"resolutionMeters":{"type":"number","const":90},"sourceVersion":{"type":"string"},"sourceVintage":{"type":"string"},"interpretation":{"type":"string"}},"required":["modelId","value","resolutionMeters","sourceVersion","sourceVintage","interpretation"],"additionalProperties":false},"overlayState":{"type":"string","enum":["state_overlay_answered","state_overlay_not_available","state_overlay_source_unavailable"]},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"doi":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":{}}},"historyCitations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"doi":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":{}}},"susceptibilityCitations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"doi":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":{}}},"unansweredQuestions":{"type":"array","items":{"type":"string"}},"verifyNext":{"type":"array","items":{"type":"object","properties":{"action":{"type":"string"},"with":{"type":"string"},"url":{"type":"string","format":"uri"}},"required":["action","with","url"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}},"boundary":{"type":"string"}},"required":["kind","historyState","susceptibilityState","inventoryRecords","unansweredQuestions","verifyNext","caveats"],"additionalProperties":false},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-landslide-diligence.json","naming":{"style":"hyphen-paid-route","executableName":"locus-landslide-diligence","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_lane_availability","canonicalId":"locus.lane.availability","callName":"locus_lane_availability","title":"What works here","description":"Every time the task is a US address, parcel, or place and you need official public records or local-government context (due diligence, flood, zoning, permits, taxes, what changed, before you sign, environmental records), call this before any paid Locus route and before scraping a county GIS, FEMA, EPA, or assessor portal. Looking is free. Returns which lanes are national, local, varies, not covered, or degraded, plus paid buy signals. A wired source is not a guarantee of rows. Coverage metadata only; no records or verdicts.","tier":"free","rail":"free","category":"meta","tags":["coverage","capabilities","what-works-here","lane-availability","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"place":{"type":"string","minLength":1,"description":"ZIP or full street address; the location to profile tool/lane coverage for."},"detailLevel":{"default":"summary","description":"summary returns job plans + a compact lane matrix; full expands the complete tool catalog and all paid options.","type":"string","enum":["summary","full"]}},"required":["place","detailLevel"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_lane_availability","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_loan_limits","canonicalId":"locus.loan.limits","callName":"locus_loan_limits","title":"2026 county conforming loan limits","description":"Return the FHFA 2026 one-to-four-unit conforming limits for a resolved US county and optional arithmetic against a caller-supplied loan amount. Published eligibility ceiling context only; no qualification, approval, value, or recommendation. National, free, read-only.","tier":"free","rail":"free","category":"economics","tags":["mortgage","fhfa","loan-limits","owner-actions","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address. Provide this, latitude+longitude, or state+county.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Decimal latitude. Provide with longitude.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Decimal longitude. Provide with latitude.","type":"number","minimum":-180,"maximum":180},"state":{"description":"Two-letter code or full US state name. Provide with county.","type":"string","minLength":2,"maxLength":40},"county":{"description":"County or county-equivalent name. Provide with state.","type":"string","minLength":1,"maxLength":100},"units":{"default":1,"description":"Residential unit count used to select the published limit. Default 1.","anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3},{"type":"number","const":4}]},"proposedLoanAmountUsd":{"description":"Optional caller-supplied loan amount for arithmetic against the published limit.","type":"number","minimum":0,"maximum":1000000000}},"required":["units"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_loan_limits","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"paid:locus-local-fiscal-context","canonicalId":"locus.local.fiscal.context","callName":"locus-local-fiscal-context","title":"Local fiscal and audit context","description":"Read a reviewed, checksum-bound snapshot of local-government finances and audits. Trends and peers keep definitions and periods aligned. Parcel context appears only with a verified official action-and-geography link; proximity alone proves nothing. Do not use this tool for housing, credit, employment, insurance, tenancy, eligibility, or place selection. No score or verdict. Missing, stale, or thin data is charge-free. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"economics","tags":["fiscal","audit","budget","local-government","public-records","citations","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-local-fiscal-context","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"place":{"type":"string","minLength":2,"maxLength":200,"description":"Exact US address, ZIP, city, or county. The endpoint resolves the governing jurisdiction and never substitutes another place."},"lookbackYears":{"description":"Fiscal years to include; default 5, allowed 2-5.","type":"integer","minimum":2,"maximum":5},"includeParcelContext":{"description":"Default true. Include only parcel-linked context with one matching official action or project ID across the complete source-backed chain.","type":"boolean"},"includeParcelConsequences":{"description":"Deprecated compatibility alias for includeParcelContext.","type":"boolean"}},"required":["place"],"additionalProperties":false,"description":"Exact US address, ZIP, city, or county plus an optional 2-5 year lookback. Numeric coverage requires a fresh checksum-bound normalized snapshot; source pointers alone return a free diagnostic."},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"local_fiscal_context_brief"},"ok":{"type":"boolean","const":true},"resolved":{"type":"object","properties":{"jurisdictionId":{"type":"string"},"displayName":{"type":"string"},"resolution":{"type":"string"},"resolutionGrade":{"type":"string"}},"required":["jurisdictionId","displayName","resolution"],"additionalProperties":false},"snapshot":{"type":"object","properties":{"snapshotId":{"type":"string"},"jurisdictionId":{"type":"string"},"fiscalYearEnd":{"type":"string"},"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"sourceRecordId":{"type":"string"},"rawSha256":{"type":"string"},"projectionSha256":{"type":"string"},"ingestedAt":{"type":"string"},"artifacts":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"sourceRecordId":{"type":"string"},"rawSha256":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]},"sourceRegistryId":{"type":"string"}},"required":["sourceName","sourceUrl","sourceRecordId","rawSha256"],"additionalProperties":false}}},"required":["snapshotId","jurisdictionId","fiscalYearEnd","sourceName","sourceUrl","sourceRecordId","rawSha256","projectionSha256","ingestedAt","artifacts"],"additionalProperties":false},"brief":{"type":"object","properties":{"kind":{"type":"string","const":"local_fiscal_context"},"jurisdiction":{"type":"object","properties":{"jurisdictionId":{"type":"string"},"displayName":{"type":"string"}},"required":["jurisdictionId","displayName"],"additionalProperties":false},"generatedAt":{"type":"string"},"fiscalYears":{"type":"array","items":{"type":"string"}},"observations":{"type":"array","items":{"type":"object","properties":{"indicator":{"type":"string","enum":["operating_margin","consecutive_operating_deficit_years","unassigned_fund_balance_to_expenditures","lgc_fpic_status","lgc_ual_status","late_audit_status","material_weaknesses","repeated_findings","debt_service_to_governmental_expenditures","unsupported_costs","questioned_costs","corrective_action_status"]},"fiscalYearEnd":{"type":"string"},"label":{"type":"string"},"value":{"anyOf":[{"type":"number"},{"type":"string"}]},"unit":{"type":"string","enum":["percent","years","count","usd","status"]},"definition":{"type":"string"},"sources":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false}},"auditScope":{"type":"string","enum":["financial_statement","single_audit"]}},"required":["indicator","fiscalYearEnd","label","value","unit","definition","sources"],"additionalProperties":false}},"auditCoverage":{"type":"array","items":{"type":"object","properties":{"jurisdictionId":{"type":"string"},"fiscalYearEnd":{"type":"string"},"scope":{"type":"string","enum":["financial_statement","single_audit"]},"indicator":{"type":"string","enum":["material_weaknesses","repeated_findings"]},"status":{"type":"string","enum":["explicit_none_reported","complete_with_findings"]},"source":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false}},"required":["jurisdictionId","fiscalYearEnd","scope","indicator","status","source"],"additionalProperties":false}},"lookbackTrend":{"type":"array","items":{"type":"object","properties":{"indicator":{"type":"string","enum":["operating_margin","unassigned_fund_balance_to_expenditures","debt_service_to_governmental_expenditures"]},"fromFiscalYearEnd":{"type":"string"},"toFiscalYearEnd":{"type":"string"},"change":{"type":"number"},"unit":{"type":"string","const":"percentage_points"},"sources":{"minItems":2,"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false}}},"required":["indicator","fromFiscalYearEnd","toFiscalYearEnd","change","unit","sources"],"additionalProperties":false}},"peerComparisons":{"type":"array","items":{"type":"object","properties":{"indicator":{"type":"string","enum":["operating_margin","unassigned_fund_balance_to_expenditures","debt_service_to_governmental_expenditures"]},"fiscalYearEnd":{"type":"string"},"localValue":{"type":"number"},"peerMedian":{"type":"number"},"difference":{"type":"number"},"peerGroup":{"type":"string"},"cohortMethod":{"type":"string","enum":["official_statewide_same_class","official_population_band","census_government_type_population_band"]},"cohortId":{"type":"string"},"governmentType":{"type":"string","enum":["city","town","village","county","municipality","special_district","school_district","other_local_government"]},"populationMin":{"type":"integer","minimum":0,"maximum":9007199254740991},"populationMax":{"type":"integer","minimum":0,"maximum":9007199254740991},"subjectGovernmentId":{"type":"string"},"memberSetSha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"cohortSize":{"type":"integer","minimum":10,"maximum":9007199254740991},"sourceReleaseId":{"type":"string"},"sources":{"minItems":2,"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false}}},"required":["indicator","fiscalYearEnd","localValue","peerMedian","difference","peerGroup","cohortMethod","cohortId","governmentType","subjectGovernmentId","memberSetSha256","cohortSize","sourceReleaseId","sources"],"additionalProperties":false}},"budgetChanges":{"type":"array","items":{"type":"object","properties":{"changeId":{"type":"string"},"effectiveDate":{"type":"string"},"kind":{"type":"string","enum":["budget_amendment","tax_rate_change","fee_change"]},"officialLabel":{"type":"string"},"amountUsd":{"type":"number"},"rateChange":{"type":"string"},"source":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false}},"required":["changeId","effectiveDate","kind","officialLabel","source"],"additionalProperties":false}},"policyActions":{"type":"array","items":{"type":"object","properties":{"actionId":{"type":"string"},"actionDate":{"type":"string"},"officialLabel":{"type":"string"},"status":{"type":"string"},"source":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false}},"required":["actionId","actionDate","officialLabel","status","source"],"additionalProperties":false}},"parcelLinkedContext":{"type":"array","items":{"type":"object","properties":{"contextId":{"type":"string"},"officialFinding":{"type":"object","properties":{"officialActionId":{"type":"string"},"label":{"type":"string"},"source":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false}},"required":["officialActionId","label","source"],"additionalProperties":false},"affectedUnit":{"type":"object","properties":{"officialActionId":{"type":"string"},"kind":{"type":"string","enum":["fund","department","service","project"]},"identifier":{"type":"string"},"source":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false}},"required":["officialActionId","kind","identifier","source"],"additionalProperties":false},"datedOutcome":{"type":"object","properties":{"officialActionId":{"type":"string"},"label":{"type":"string"},"date":{"type":"string"},"source":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false}},"required":["officialActionId","label","date","source"],"additionalProperties":false},"geography":{"type":"object","properties":{"officialActionId":{"type":"string"},"kind":{"type":"string","enum":["project_point","service_area","assessment_district"]},"identifier":{"type":"string"},"source":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false}},"required":["officialActionId","kind","identifier","source"],"additionalProperties":false},"parcelRelation":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"contains"},"officialActionId":{"type":"string"},"geographyIdentifier":{"type":"string"},"parcelId":{"type":"string"},"method":{"type":"string","const":"official_boundary_intersection"},"parcelSource":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false},"geographySource":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false},"parcelGeometrySha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"geographyGeometrySha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"calculation":{"type":"object","properties":{"algorithm":{"type":"string","const":"point_in_polygon_v1"},"calculatedAt":{"type":"string"},"precisionMeters":{"type":"number","exclusiveMinimum":0}},"required":["algorithm","calculatedAt","precisionMeters"],"additionalProperties":false}},"required":["kind","officialActionId","geographyIdentifier","parcelId","method","parcelSource","geographySource","parcelGeometrySha256","geographyGeometrySha256","calculation"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"measured_proximity"},"officialActionId":{"type":"string"},"geographyIdentifier":{"type":"string"},"parcelId":{"type":"string"},"distanceMeters":{"type":"number","minimum":0},"method":{"type":"string","const":"straight_line_to_official_project_point"},"parcelSource":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false},"geographySource":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"pageLocator":{"type":"string"},"snapshotSha256":{"type":"string"},"artifactId":{"type":"string"},"sourceClass":{"type":"string","enum":["unit_acfr","state_uniform_filing","state_audit","federal_single_audit","adopted_budget","official_geography","census_aggregate","census_individual_unit"]}},"required":["sourceName","sourceUrl","fetchedAt","recordId","snapshotSha256"],"additionalProperties":false},"parcelGeometrySha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"geographyGeometrySha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"calculation":{"type":"object","properties":{"algorithm":{"type":"string","const":"haversine_point_to_point_v1"},"calculatedAt":{"type":"string"},"precisionMeters":{"type":"number","exclusiveMinimum":0}},"required":["algorithm","calculatedAt","precisionMeters"],"additionalProperties":false}},"required":["kind","officialActionId","geographyIdentifier","parcelId","distanceMeters","method","parcelSource","geographySource","parcelGeometrySha256","geographyGeometrySha256","calculation"],"additionalProperties":false}]}},"required":["contextId","officialFinding","affectedUnit","datedOutcome","geography","parcelRelation"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","jurisdiction","generatedAt","fiscalYears","observations","auditCoverage","lookbackTrend","peerComparisons","budgetChanges","policyActions","parcelLinkedContext","caveats"],"additionalProperties":false},"parcelContextStatus":{"type":"string","enum":["included","caller_disabled","no_subject_parcel_resolved","no_complete_matching_chain"]},"officialSources":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"scope":{"type":"string","enum":["national","state"]},"state":{"type":"string"},"name":{"type":"string"},"url":{"type":"string"},"provides":{"type":"array","items":{"type":"string"}},"ingestionMode":{"type":"string","enum":["machine_readable_snapshot","verified_offline_document","official_lookup"]}},"required":["id","scope","name","url","provides","ingestionMode"],"additionalProperties":false}},"verifyNext":{"type":"array","items":{"type":"object","properties":{"step":{"type":"string"},"url":{"type":"string"}},"required":["step","url"],"additionalProperties":false}}},"required":["kind","ok","resolved","snapshot","brief","parcelContextStatus","officialSources","verifyNext"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"local_fiscal_context_diagnostic"},"charged":{"type":"boolean","const":false},"ok":{"type":"boolean","const":true},"reason":{"type":"string","enum":["unresolved_place","subject_parcel_mismatch","snapshot_store_unavailable","no_active_snapshot","invalid_active_snapshot","stale_snapshot","insufficient_substance","invalid_snapshot_projection","output_policy_rejected"]},"note":{"type":"string"},"jurisdiction":{"type":"object","properties":{"jurisdictionId":{"type":"string"},"displayName":{"type":"string"},"state":{"type":"string"}},"required":["jurisdictionId","displayName"],"additionalProperties":false},"officialSources":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"scope":{"type":"string","enum":["national","state"]},"state":{"type":"string"},"name":{"type":"string"},"url":{"type":"string"},"provides":{"type":"array","items":{"type":"string"}},"ingestionMode":{"type":"string","enum":["machine_readable_snapshot","verified_offline_document","official_lookup"]}},"required":["id","scope","name","url","provides","ingestionMode"],"additionalProperties":false}},"verifyNext":{"type":"array","items":{"type":"object","properties":{"step":{"type":"string"},"url":{"type":"string"}},"required":["step","url"],"additionalProperties":false}}},"required":["kind","charged","ok","reason","note","officialSources","verifyNext"],"additionalProperties":false}],"description":"A structured multi-year fiscal/audit brief containing separate cited observations, exact-definition peer comparisons, policy/budget changes, and only complete parcel-linked context chains; or a charged:false diagnostic when data is absent, stale, or thin. Never use it to decide housing, credit, employment, insurance, tenancy, eligibility, or whether to prefer a place. Never a score, rank, prediction, or place verdict."},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-local-fiscal-context.json","naming":{"style":"hyphen-paid-route","executableName":"locus-local-fiscal-context","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_local_legislation","canonicalId":"locus.local.legislation","callName":"locus_local_legislation","title":"Local legislation (preview)","description":"Headline preview of recent property-relevant legislation for an address: the top ENACTED or high-impact bill/matter (zoning, land use, ADUs, short-term rentals, property tax, landlord-tenant, eminent domain), each with a status badge and a one-line plain-language consequence. Enacted items lead; not-yet-law items are labeled WATCH. The verbatim operative provisions, Legistar action history/attachments, full matched set, and property-class mapping are in the paid local policy brief. Cited (LegiScan + official Legistar where wired); never legal advice, a forecast, or a parcel-specific ruling. Optional owner-action and domain filters are applied before the one-headline cap.","tier":"free","rail":"free","category":"policy","tags":["policy","legislation","bills","preview","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":1,"description":"Street address or place; resolves the state/locality whose legislation is scanned."},"ownerActions":{"description":"Optional owner-action categories; the one-headline preview is selected from matching items.","type":"array","items":{"type":"string","enum":["deadline_created","exemption_changed","appeal_procedure","cap_changed","ballot_measure","sunset","fee_or_penalty","registration_required","disaster_relief"]}},"domains":{"description":"Optional property-policy domains, for example property_tax or zoning_land_use; the one-headline preview is selected from matching items.","type":"array","items":{"type":"string","minLength":1,"maxLength":80}}},"required":["address"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_local_legislation","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-local-legislation","canonicalId":"locus.local.legislation","callName":"locus-local-legislation","tier":"paid","endpoint":"https://api.locus.report/api/locus-local-legislation"}]},{"catalogId":"paid:locus-local-legislation","canonicalId":"locus.local.legislation","callName":"locus-local-legislation","title":"Local legislation (preview)","description":"Recent property-relevant local legislation preview for an address. Perfect for: recent zoning bills, local ADU / short-term rental laws, property tax bills enacted. Returns a headline enacted/watch item via LegiScan plus official Legistar where wired. Paid full output adds snippets, status history, attachments, and agent next-tool hints. Not legal advice. Charge-free when unresolved or no substantive answer.","tier":"paid","rail":"promoted-free-dual","category":"policy","tags":["policy","legislation","bills","preview","read-only","paid","x402","category:policy"],"endpoint":"https://api.locus.report/api/locus-local-legislation","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":1,"description":"Street address or place; resolves the state/locality whose legislation is scanned."},"ownerActions":{"description":"Optional owner-action categories; the one-headline preview is selected from matching items.","type":"array","items":{"type":"string","enum":["deadline_created","exemption_changed","appeal_procedure","cap_changed","ballot_measure","sunset","fee_or_penalty","registration_required","disaster_relief"]}},"domains":{"description":"Optional property-policy domains, for example property_tax or zoning_land_use; the one-headline preview is selected from matching items.","type":"array","items":{"type":"string","minLength":1,"maxLength":80}}},"required":["address"],"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-local-legislation.json","naming":{"style":"hyphen-paid-route","executableName":"locus-local-legislation","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_local_legislation","canonicalId":"locus.local.legislation","callName":"locus_local_legislation","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"paid:locus-local-policy-brief","canonicalId":"locus.local.policy.brief","callName":"locus-local-policy-brief","title":"Local property bill & ordinance brief (cited)","description":"Property bill and ordinance analysis for agents. Accepts address, ZIP, city, or county, then resolves governing jurisdictions for bills, agendas, ordinances, zoning, tax, fee, bond, housing, and permit-change artifacts. Never legal advice, political advice, or forecasts. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"policy","tags":["data","search","real-estate","property-research","legal","regulatory","government","citations","property-policy","real-estate-bills","ordinance-analysis","zoning","housing-policy","tax","due-diligence","x402","category:policy"],"endpoint":"https://api.locus.report/api/locus-local-policy-brief","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"place":{"type":"string","minLength":1,"description":"Flexible US place string: street address, ZIP, city, county, or city/state. Locus resolves governing jurisdictions before searching property bills, ordinances, agendas, and code artifacts."},"intent":{"type":"string","enum":["renter_due_diligence","homebuyer_due_diligence","small_business_siting","community_organizer_journalist"]},"maxSignals":{"default":7,"type":"integer","minimum":1,"maximum":12},"lookbackMonths":{"type":"integer","minimum":1,"maximum":60},"context":{"type":"string","minLength":1,"maxLength":600},"followUp":{"type":"string","minLength":1,"maxLength":300}},"required":["place","intent","maxSignals"],"additionalProperties":false,"description":"Flexible US place string (street address, ZIP, city, county, or city/state) plus a Locus intent. Resolves governing legal geographies before charge; cold geographies return a free diagnostic."},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","oneOf":[{"type":"object","properties":{"kind":{"type":"string","const":"local_policy_brief"},"id":{"type":"string"},"generatedAt":{"type":"string"},"place":{"type":"object","properties":{"input":{"type":"string"},"resolved":{"type":"string"},"jurisdictionIds":{"type":"array","items":{"type":"string"}},"displayName":{"type":"string"}},"required":["input","jurisdictionIds"],"additionalProperties":false},"intent":{"type":"string"},"policyRulesetVersion":{"type":"string"},"artifacts":{"type":"array","items":{"type":"object","properties":{"artifactId":{"type":"string"},"jurisdictionId":{"type":"string"},"jurisdictionName":{"type":"string"},"level":{"type":"string","enum":["state","county","city"]},"artifactType":{"type":"string","enum":["bill","session_law","statute","ordinance","resolution","agenda_item","code_section"]},"officialId":{"type":"string"},"title":{"type":"string"},"summary":{"type":"string"},"status":{"type":"string","enum":["introduced","in_committee","adopted","enacted","codified","repealed","failed","not_published","unknown"]},"introducedAt":{"type":"string"},"actionDate":{"type":"string"},"effectiveDate":{"type":"string"},"textVersions":{"type":"array","items":{}},"actions":{"type":"array","items":{}},"votes":{"type":"array","items":{}},"affectedDomains":{"type":"array","items":{"type":"string"}},"affectedGeographies":{"type":"array","items":{"type":"string"}},"rateChanges":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["property_tax","fee","levy","bond"]},"label":{"type":"string"},"unit":{"type":"string","enum":["cents_per_100","usd","percent"]},"fromValue":{"type":"number"},"toValue":{"type":"number"},"deltaValue":{"type":"number"},"extractedFrom":{"type":"string","enum":["title","summary","text"]},"sourceExcerpt":{"type":"string"}},"required":["kind","label","unit","toValue","extractedFrom","sourceExcerpt"],"additionalProperties":{}}},"excerpts":{"type":"array","items":{"type":"string"}},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"}},"required":["sourceName","sourceUrl","fetchedAt","recordId"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}}},"required":["artifactId","jurisdictionId","jurisdictionName","level","artifactType","officialId","title","status","textVersions","actions","votes","affectedDomains","affectedGeographies","citations","caveats"],"additionalProperties":{}}},"signals":{"type":"array","items":{"type":"object","properties":{"signalId":{"type":"string"},"artifactId":{"type":"string"},"localityMatch":{"type":"string","enum":["direct","jurisdictional","statewide","weak"]},"relevance":{"type":"array","items":{"type":"string"}},"boundedClaim":{"type":"string"},"whyRelevant":{"type":"string"},"whatItDoesNotProve":{"type":"string"},"confidence":{"type":"string","enum":["low","medium","high"]},"rateChange":{"type":"object","properties":{"kind":{"type":"string","enum":["property_tax","fee","levy","bond"]},"label":{"type":"string"},"unit":{"type":"string","enum":["cents_per_100","usd","percent"]},"fromValue":{"type":"number"},"toValue":{"type":"number"},"deltaValue":{"type":"number"},"extractedFrom":{"type":"string","enum":["title","summary","text"]},"sourceExcerpt":{"type":"string"}},"required":["kind","label","unit","toValue","extractedFrom","sourceExcerpt"],"additionalProperties":{}},"operativeProvision":{"type":"string"},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"}},"required":["sourceName","sourceUrl","fetchedAt","recordId"],"additionalProperties":false}}},"required":["signalId","artifactId","localityMatch","relevance","boundedClaim","whyRelevant","whatItDoesNotProve","confidence","citations"],"additionalProperties":{}}},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"}},"required":["sourceName","sourceUrl","fetchedAt","recordId"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}},"refinement":{"type":"object","properties":{"context":{"type":"object","properties":{"input":{"type":"string"},"emphasizedDomains":{"type":"array","items":{"type":"string","enum":["housing","zoning","taxes","permits","public_safety","transportation","environment","business","utilities","schools","other"]}},"rationale":{"type":"array","items":{"type":"string"}}},"required":["input","emphasizedDomains","rationale"],"additionalProperties":false},"followUp":{"type":"object","properties":{"question":{"type":"string"},"status":{"type":"string","enum":["answered","gated","unsupported"]},"answer":{"type":"array","items":{"type":"string"}},"gatedReason":{"type":"string"},"gatedReasonCode":{"type":"string"},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"}},"required":["sourceName","sourceUrl","fetchedAt","recordId"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}}},"required":["question","status","answer","citations","caveats"],"additionalProperties":false}},"additionalProperties":{}}},"required":["kind","id","generatedAt","place","intent","policyRulesetVersion","artifacts","signals","citations","caveats"],"additionalProperties":{}},{"type":"object","properties":{"kind":{"type":"string","const":"policy_coverage_diagnostic"},"place":{"type":"object","properties":{"input":{"type":"string"},"resolved":{"type":"string"},"jurisdictionIds":{"type":"array","items":{"type":"string"}},"coverageStatus":{"type":"string","enum":["unsupported","no_policy_artifacts","no_relevant_policy"]}},"required":["input","coverageStatus"],"additionalProperties":false},"intent":{"type":"string"},"charged":{"type":"boolean","const":false},"message":{"type":"string"},"candidateSources":{"type":"array","items":{"type":"object","properties":{"level":{"type":"string","enum":["state","county","city"]},"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"artifactTypes":{"type":"array","items":{"type":"string"}}},"required":["level","sourceName","sourceUrl","artifactTypes"],"additionalProperties":false}},"whatWeWouldNeed":{"type":"array","items":{"type":"string"}},"requestCoverage":{"type":"object","properties":{"tool":{"type":"string"},"endpoint":{"type":"string"},"note":{"type":"string"}},"required":["tool","endpoint","note"],"additionalProperties":false},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","place","intent","charged","message","candidateSources","whatWeWouldNeed","caveats"],"additionalProperties":false}],"description":"A `kind`-discriminated union: `local_policy_brief` for paid cited policy context, or `policy_coverage_diagnostic` for a free pre-charge diagnostic."},"priceUsdc":"0.07","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-local-policy-brief.json","naming":{"style":"hyphen-paid-route","executableName":"locus-local-policy-brief","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"paid:locus-local-trend-brief","canonicalId":"locus.local.trend.brief","callName":"locus-local-trend-brief","title":"Local-change brief: permits, 311, code cases (cited)","description":"Local-change analysis for due-diligence agents. Accepts address, ZIP, city, or county. Current coverage comes from source-card registry and lane availability; unsupported or discovery-only places return a free diagnostic, never a charge. After free lane preflight, returns permit, 311, and code-case trend series; thin places return a free diagnostic, not a charged brief. Never forecasts or safe/unsafe labels. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"policy","tags":["data","search","real-estate","property","property-research","due-diligence","public-records","x402","research","local-data","local-change-analysis","development-activity","permits","code-cases","government","citations","category:policy"],"endpoint":"https://api.locus.report/api/locus-local-trend-brief","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"place":{"type":"string","minLength":1,"description":"Flexible US place string: street address, ZIP, city, county, or city/state. Street address is best for property due diligence; broader places return jurisdiction-level coverage where supported."},"intent":{"type":"string","enum":["renter_due_diligence","homebuyer_due_diligence","small_business_siting","community_organizer_journalist"]},"lookbackMonths":{"default":24,"type":"integer","minimum":1,"maximum":60},"includeCrime":{"default":false,"type":"boolean"},"context":{"type":"string","minLength":1,"maxLength":600},"followUp":{"type":"string","minLength":1,"maxLength":300}},"required":["place","intent","lookbackMonths","includeCrime"],"additionalProperties":false,"description":"Flexible US place string (street address, ZIP, city, county, or city/state) plus a Locus intent. Street address is best for property workflows. Coverage is checked before any charge; unsupported places return a free diagnostic."},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","oneOf":[{"type":"object","properties":{"kind":{"type":"string","const":"local_trend_brief"},"id":{"type":"string"},"generatedAt":{"type":"string"},"place":{"type":"object","properties":{"input":{"type":"string"},"resolved":{"type":"string"},"jurisdictionId":{"type":"string"},"coverageStatus":{"type":"string","enum":["supported","supported_partial","discovery_only","unsupported"]}},"required":["input","jurisdictionId","coverageStatus"],"additionalProperties":false},"intent":{"type":"string"},"intentRulesetVersion":{"type":"string"},"lookbackMonths":{"type":"number"},"coverage":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string","enum":["permits","code_violations","service_requests_311","crimes"]},"datasetId":{"type":"string"},"status":{"type":"string","enum":["ok","empty","unavailable"]},"recordCount":{"type":"number"},"lookbackCovered":{"type":"boolean"},"sourceUrl":{"type":"string"}},"required":["source","datasetId","status","recordCount","lookbackCovered","sourceUrl"],"additionalProperties":false}},"series":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"source":{"type":"string","enum":["permits","code_violations","service_requests_311","crimes"]},"bucket":{"type":"string","enum":["monthly","quarterly"]},"points":{"type":"array","items":{"type":"object","properties":{"periodStart":{"type":"string"},"count":{"type":"number"}},"required":["periodStart","count"],"additionalProperties":false}},"change":{"type":"object","properties":{"direction":{"type":"string","enum":["up","down","flat"]},"absoluteDelta":{"type":"number"},"pctChange":{"anyOf":[{"type":"number"},{"type":"null"}]},"method":{"type":"string","enum":["first-half-vs-second-half","year-over-year"]}},"required":["direction","absoluteDelta","pctChange","method"],"additionalProperties":false},"confidence":{"type":"string","enum":["low","medium","high"]},"categoryBreakdown":{"type":"object","properties":{"top":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"count":{"type":"number"},"recentCount":{"type":"number"},"baselineCount":{"type":"number"},"delta":{"type":"number"}},"required":["label","count","recentCount","baselineCount","delta"],"additionalProperties":false}},"totalCategorized":{"type":"number"},"uncategorized":{"type":"number"}},"required":["top","totalCategorized","uncategorized"],"additionalProperties":false}},"required":["key","source","bucket","points","change","confidence"],"additionalProperties":{}}},"whatThisMayMean":{"type":"array","items":{"type":"string"}},"whatThisDoesNotProve":{"type":"array","items":{"type":"string"}},"questionsToAsk":{"type":"array","items":{"type":"string"}},"citations":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"datasetId":{"type":"string"}},"required":["label","sourceName","sourceUrl","datasetId"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}},"citedCards":{"type":"array","items":{"type":"object","properties":{"cardId":{"type":"string"},"jurisdictionId":{"type":"string"},"category":{"type":"string"},"sourceUrl":{"type":"string"},"biasProfile":{"type":"object","properties":{"measures":{"type":"string","minLength":1,"maxLength":1000},"doesNotMeasure":{"type":"string","minLength":1,"maxLength":1000},"knownBiases":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"string","minLength":1,"maxLength":1000}},"lagDays":{"type":"integer","minimum":0,"maximum":36500}},"required":["measures","doesNotMeasure","knownBiases"],"additionalProperties":false}},"required":["cardId","jurisdictionId","category","sourceUrl"],"additionalProperties":false}},"chargeable":{"type":"boolean"},"storage":{"type":"array","items":{"type":"object","properties":{"provider":{"type":"string"},"locator":{"type":"string"},"contentHash":{"type":"string"},"pinned":{"type":"boolean"}},"required":["provider","locator","contentHash"],"additionalProperties":false}},"refinement":{"type":"object","properties":{"context":{"type":"object","properties":{"input":{"type":"string"},"emphasizedSources":{"type":"array","items":{"type":"string","enum":["permits","code_violations","service_requests_311","crimes"]}},"rationale":{"type":"array","items":{"type":"string"}}},"required":["input","emphasizedSources","rationale"],"additionalProperties":false},"followUp":{"type":"object","properties":{"question":{"type":"string"},"status":{"type":"string","enum":["answered","gated","unsupported"]},"answer":{"type":"array","items":{"type":"string"}},"gatedReason":{"type":"string"},"gatedReasonCode":{"type":"string"},"citations":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"datasetId":{"type":"string"}},"required":["label","sourceName","sourceUrl","datasetId"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}}},"required":["question","status","answer","citations","caveats"],"additionalProperties":false}},"additionalProperties":{}},"communitySignal":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string","const":"contested"},"observationId":{"type":"string"},"jurisdictionId":{"type":"string"},"claimType":{"type":"string"},"body":{"type":"string"},"status":{"type":"string"},"placeLabel":{"type":"string"},"evidenceUrl":{"type":"string","format":"uri"}},"required":["label","observationId","jurisdictionId","claimType","body","status","placeLabel"],"additionalProperties":{}}},"verifyNext":{"type":"array","items":{"type":"object","properties":{"step":{"type":"string"},"url":{"type":"string"},"source":{"type":"string"}},"required":["step"],"additionalProperties":{}}}},"required":["kind","id","generatedAt","place","intent","intentRulesetVersion","lookbackMonths","coverage","series","whatThisMayMean","whatThisDoesNotProve","questionsToAsk","citations","caveats","citedCards","chargeable"],"additionalProperties":{}},{"type":"object","properties":{"kind":{"type":"string","const":"coverage_diagnostic"},"place":{"type":"object","properties":{"input":{"type":"string"},"resolved":{"type":"string"},"jurisdictionId":{"type":"string"},"coverageStatus":{"type":"string","enum":["discovery_only","unsupported","insufficient_data","source_unavailable"]}},"required":["input","coverageStatus"],"additionalProperties":false},"intent":{"type":"string"},"charged":{"type":"boolean","const":false},"message":{"type":"string"},"candidateSources":{"type":"array","items":{"type":"object","properties":{"category":{"type":"string"},"sourceName":{"type":"string"},"sourceUrl":{"type":"string"}},"required":["category","sourceName","sourceUrl"],"additionalProperties":false}},"whatWeWouldNeed":{"type":"array","items":{"type":"string"}},"sourceCounts":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string"},"recordCount":{"type":"number"}},"required":["source","recordCount"],"additionalProperties":false}},"preflight":{"type":"object","properties":{"tool":{"type":"string"},"url":{"type":"string"},"note":{"type":"string"}},"required":["tool","url","note"],"additionalProperties":false},"requestCoverage":{"type":"object","properties":{"tool":{"type":"string"},"endpoint":{"type":"string"},"note":{"type":"string"}},"required":["tool","endpoint","note"],"additionalProperties":false},"componentReadiness":{"type":"object","properties":{"trend":{"type":"string","enum":["ok","partial","thin","missing","unavailable"]},"parcel":{"type":"string","enum":["ok","varies","missing","unavailable"]},"policy":{"type":"string","enum":["ok","missing","unavailable"]}},"required":["trend","parcel","policy"],"additionalProperties":false},"componentReadinessDetail":{"type":"array","items":{"type":"object","properties":{"component":{"type":"string","enum":["trend","parcel","policy"]},"ready":{"type":"boolean"},"state":{"type":"string"},"reason":{"type":"string"}},"required":["component","ready","state","reason"],"additionalProperties":false}},"suggestedAlternative":{"type":"string"},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","place","intent","charged","message","candidateSources","whatWeWouldNeed","caveats"],"additionalProperties":false}],"description":"A `kind`-discriminated union: `local_trend_brief` for paid cited trend context, or `coverage_diagnostic` for a free pre-charge coverage diagnostic."},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-local-trend-brief.json","naming":{"style":"hyphen-paid-route","executableName":"locus-local-trend-brief","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_medicare_spending","canonicalId":"locus.medicare.spending","callName":"locus_medicare_spending","title":"County Medicare fee-for-service spending context","description":"Return the latest two CMS county-level Medicare Geographic Variation rows for a US address/point: Original Medicare fee-for-service beneficiary count, actual per-capita payment, standardized per-capita payment, and the standardized year-over-year change. Aggregate context only — not an individual bill, local provider price, care-quality/access measure, health-status inference, property-value signal, score, ranking, or hot/cold label. National, free, read-only.","tier":"free","rail":"free","category":"economics","tags":["healthcare","medicare","county","cost-context","cms","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address. Provide this or latitude+longitude.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Decimal latitude; provide with longitude.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Decimal longitude; provide with latitude.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_medicare_spending","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_metro_permits","canonicalId":"locus.metro.permits","callName":"locus_metro_permits","title":"Building permits for an exact parcel set or near a point","description":"Building-permit activity for a street address, exact parcel id/set, or point. Exact subjects resolve parcel-first so the parcel's legal municipality or county selects the source. Unincorporated Wake County uses its Tyler EnerGov public portal; verified point-radius metros are chicago, austin, seattle, san francisco, los angeles, new york, mesa, miami, nashville, washington, san antonio, phoenix, denver, fort worth, buffalo, detroit, raleigh, cumming, durham. Exact-subject requests never fall back to the Census residential county trend. Point-only requests outside a wired permit portal may receive that clearly labeled aggregate trend. Returns published permit, plan, status, application, issue, expiration, completion, final, and inspection dates where the source exposes them. Records only, never a construction, compliance, occupancy, value, or safety verdict.","tier":"free","rail":"free","category":"parcels","tags":["permits","parcel","metro","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"place":{"description":"Street address to resolve parcel-first before selecting the legal permitting authority.","type":"string","minLength":3,"maxLength":240},"city":{"description":"Supported metro key for point mode (registry-verified: chicago, austin, seattle, san francisco, los angeles, new york, mesa, miami, nashville, washington, san antonio, phoenix, denver, fort worth, buffalo, detroit, raleigh, cumming, durham). Prefer place or parcelIds when checking an exact subject.","type":"string","minLength":3,"maxLength":40},"latitude":{"description":"Decimal latitude for point-radius mode; provide with longitude.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Decimal longitude for point-radius mode; provide with latitude.","type":"number","minimum":-180,"maximum":180},"parcelId":{"description":"One exact public parcel identifier. Provide state and county.","type":"string","minLength":1,"maxLength":80},"parcelIds":{"description":"Up to 25 exact public parcel identifiers for one project. Provide state and county.","minItems":1,"maxItems":25,"type":"array","items":{"type":"string","minLength":1,"maxLength":80}},"state":{"description":"Two-letter state code required with parcelId or parcelIds.","type":"string","minLength":2,"maxLength":2},"county":{"description":"County name required with parcelId or parcelIds.","type":"string","minLength":2,"maxLength":80},"radiusMeters":{"description":"Optional search radius in meters for point mode; max 3000.","type":"integer","minimum":50,"maximum":3000},"sinceDate":{"description":"Optional ISO date YYYY-MM-DD for point-mode sources; default is 1 year back.","type":"string"}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_metro_permits","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-metro-permits","canonicalId":"locus.metro.permits","callName":"locus-metro-permits","tier":"paid","endpoint":"https://api.locus.report/api/locus-metro-permits"}]},{"catalogId":"paid:locus-metro-permits","canonicalId":"locus.metro.permits","callName":"locus-metro-permits","title":"Building permits for an exact parcel set or near a point","description":"Permit records for an address, exact parcel set, or point. Perfect for: 'check permits for these parcels' or 'nearby permit activity'. Exact subjects resolve parcel-first to the legal authority, including unincorporated Wake County Tyler EnerGov. Exact parcel requests never fall back to Census residential trends. Charged only when an official record source answers. Permit and inspection workflow fields are not construction, compliance, or occupancy conclusions.","tier":"paid","rail":"promoted-free-dual","category":"policy","tags":["permits","parcel","metro","read-only","paid","x402","category:policy"],"endpoint":"https://api.locus.report/api/locus-metro-permits","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"place":{"description":"Street address to resolve parcel-first before selecting the legal permitting authority.","type":"string","minLength":3,"maxLength":240},"city":{"description":"Supported metro key for point mode (registry-verified: chicago, austin, seattle, san francisco, los angeles, new york, mesa, miami, nashville, washington, san antonio, phoenix, denver, fort worth, buffalo, detroit, raleigh, cumming, durham). Prefer place or parcelIds when checking an exact subject.","type":"string","minLength":3,"maxLength":40},"latitude":{"description":"Decimal latitude for point-radius mode; provide with longitude.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Decimal longitude for point-radius mode; provide with latitude.","type":"number","minimum":-180,"maximum":180},"parcelId":{"description":"One exact public parcel identifier. Provide state and county.","type":"string","minLength":1,"maxLength":80},"parcelIds":{"description":"Up to 25 exact public parcel identifiers for one project. Provide state and county.","minItems":1,"maxItems":25,"type":"array","items":{"type":"string","minLength":1,"maxLength":80}},"state":{"description":"Two-letter state code required with parcelId or parcelIds.","type":"string","minLength":2,"maxLength":2},"county":{"description":"County name required with parcelId or parcelIds.","type":"string","minLength":2,"maxLength":80},"radiusMeters":{"description":"Optional search radius in meters for point mode; max 3000.","type":"integer","minimum":50,"maximum":3000},"sinceDate":{"description":"Optional ISO date YYYY-MM-DD for point-mode sources; default is 1 year back.","type":"string"}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-metro-permits.json","naming":{"style":"hyphen-paid-route","executableName":"locus-metro-permits","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_metro_permits","canonicalId":"locus.metro.permits","callName":"locus_metro_permits","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_mitigation_incentives","canonicalId":"locus.mitigation.incentives","callName":"locus_mitigation_incentives","title":"Cited mitigation grants and insurance discount rules","description":"Return registry-backed mitigation grants, insurance discount rules and programs, disaster-assistance windows, flood-map correction, and flood-protection rebate rows for a resolved US place, optionally filtered by wind, wildfire, flood, or earthquake. Includes cited windows and printed money notes only. No individual determination, recommendation, premium estimate, or savings estimate.","tier":"free","rail":"free","category":"infrastructure","tags":["owner-programs","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address or ZIP used to resolve state, county, and city program rows.","type":"string","minLength":1,"maxLength":200},"place":{"description":"US city, county, state, ZIP, or address used to resolve program rows.","type":"string","minLength":1,"maxLength":200},"hazard":{"description":"Optional hazard filter.","type":"string","enum":["wind","wildfire","flood","earthquake"]}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_mitigation_incentives","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-mitigation-incentives","canonicalId":"locus.mitigation.incentives","callName":"locus-mitigation-incentives","tier":"paid","endpoint":"https://api.locus.report/api/locus-mitigation-incentives"}]},{"catalogId":"paid:locus-mitigation-incentives","canonicalId":"locus.mitigation.incentives","callName":"locus-mitigation-incentives","title":"Cited mitigation grants and insurance discount rules","description":"Cited mitigation grants, insurance-discount mandates, flood-map correction, and flood-protection rebate rows for a US place. Perfect for: 'home hardening grants', 'wind mitigation credits', 'flood mitigation incentives'. Optional hazard filter. Facts and money notes come from cited program rows only. No eligibility, savings, or premium estimate. Charge-free when no registry row returns.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["owner-programs","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-mitigation-incentives","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address or ZIP used to resolve state, county, and city program rows.","type":"string","minLength":1,"maxLength":200},"place":{"description":"US city, county, state, ZIP, or address used to resolve program rows.","type":"string","minLength":1,"maxLength":200},"hazard":{"description":"Optional hazard filter.","type":"string","enum":["wind","wildfire","flood","earthquake"]}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-mitigation-incentives.json","naming":{"style":"hyphen-paid-route","executableName":"locus-mitigation-incentives","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_mitigation_incentives","canonicalId":"locus.mitigation.incentives","callName":"locus_mitigation_incentives","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_nearby_places","canonicalId":"locus.nearby.places","callName":"locus_nearby_places","title":"What's around a place (OpenStreetMap, national)","description":"Return nearby OpenStreetMap points of interest around a US address or point: food, groceries, schools, healthcare, parks, transit stops, civic buildings, worship, banks, fuel/EV, with category, distance, and OSM verify link. Use when the user asks what is nearby, what amenities or places surround an address. National, NC via AddressNC and elsewhere via OSM geocoding. Mapped amenities only, not a complete inventory, endorsement, accessibility claim, or area judgment. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["places","amenities","neighborhood","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 800, max 3000.","type":"integer","minimum":100,"maximum":3000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_nearby_places","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-nearby-places","canonicalId":"locus.nearby.places","callName":"locus-nearby-places","tier":"paid","endpoint":"https://api.locus.report/api/locus-nearby-places"}]},{"catalogId":"paid:locus-nearby-places","canonicalId":"locus.nearby.places","callName":"locus-nearby-places","title":"What's around a place (OpenStreetMap, national)","description":"Nearby places of interest for an address. Perfect for: 'what is near this address', 'nearby schools / parks / grocery / transit', 'points of interest around a property', 'amenities near an address'. Returns categorized nearby features from OpenStreetMap with distance and direction from the point. National. Not a walkability score or a quality rating. Charge-free when nothing maps near the address.","tier":"paid","rail":"promoted-free-dual","category":"infrastructure","tags":["places","amenities","neighborhood","read-only","paid","x402","category:infrastructure"],"endpoint":"https://api.locus.report/api/locus-nearby-places","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 800, max 3000.","type":"integer","minimum":100,"maximum":3000}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-nearby-places.json","naming":{"style":"hyphen-paid-route","executableName":"locus-nearby-places","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_nearby_places","canonicalId":"locus.nearby.places","callName":"locus_nearby_places","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"paid:locus-nei-emissions-nearby","canonicalId":"locus.nei.emissions.nearby","callName":"locus-nei-emissions-nearby","title":"National Emissions Inventory facility-pollutant records nearby","description":"EPA National Emissions Inventory facility and pollutant rows near an address. Perfect for: environmental diligence, facility emissions research, per-pollutant tonnage, and distance-ranked industrial context. Summary is bounded; detailLevel=full returns the large facility-pollutant matrix. Periodic inventory estimates only, not monitoring, ambient concentration, exposure, health evidence, or a burden score. Charge-free when no facility rows resolve.","tier":"paid","rail":"paid-atomic","category":"environmental","tags":["environment","air","emissions","nei","epa","ehs","read-only","paid","x402","category:environmental"],"endpoint":"https://api.locus.report/api/locus-nei-emissions-nearby","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Straight-line search radius in meters; default 5000.","type":"integer","minimum":500,"maximum":25000},"reportingYear":{"description":"Optional NEI inventory year; the active mirror currently supports 2023.","type":"number","const":2023},"detailLevel":{"default":"summary","description":"summary returns nearest facilities with a capped pollutant rollup plus counts of every facility/pollutant row it leaves out; full expands the complete per-facility per-pollutant matrix (large: a 5 km industrial-metro query can exceed 140 KB).","type":"string","enum":["summary","full"]}},"required":["detailLevel"],"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-nei-emissions-nearby.json","naming":{"style":"hyphen-paid-route","executableName":"locus-nei-emissions-nearby","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_nfip_claims","canonicalId":"locus.nfip.claims","callName":"locus_nfip_claims","title":"FEMA NFIP flood-insurance claims, aggregated to the county","description":"Return FEMA OpenFEMA NFIP redacted flood-insurance claim history aggregated to the COUNTY at a US point: total claim count, total paid (building + contents), the year range, and the top rated flood zones by claim count. Use when the user asks about realized flood-insurance claims, paid flood losses, or NFIP history for an area. National, no key. Records are redacted (no address/PII) and county-level only; a count or total is historical fact, never a prediction, risk score, or statement about any specific property. Read-only.","tier":"free","rail":"free","category":"hazard","tags":["flood","insurance","fema","nfip","claims","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_nfip_claims","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-nfip-claims","canonicalId":"locus.nfip.claims","callName":"locus-nfip-claims","tier":"paid","endpoint":"https://api.locus.report/api/locus-nfip-claims"}]},{"catalogId":"paid:locus-nfip-claims","canonicalId":"locus.nfip.claims","callName":"locus-nfip-claims","title":"FEMA NFIP flood-insurance claims, aggregated to the county","description":"FEMA NFIP flood-insurance claims for a county. Perfect for: 'NFIP claims for a county', 'flood insurance paid claims history', 'FEMA flood loss data for an area', 'flood claim totals for a place'. Returns OpenFEMA NFIP redacted claim history aggregated to the county: total claim count, total paid, year range, and top rated flood zones by claim count. National, no key. County aggregates only, no PII. Historical fact, not a prediction. Charge-free when the lookup fails.","tier":"paid","rail":"promoted-free-dual","category":"hazard","tags":["flood","insurance","fema","nfip","claims","read-only","paid","x402","category:hazard"],"endpoint":"https://api.locus.report/api/locus-nfip-claims","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-nfip-claims.json","naming":{"style":"hyphen-paid-route","executableName":"locus-nfip-claims","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_nfip_claims","canonicalId":"locus.nfip.claims","callName":"locus_nfip_claims","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_noise_proximity","canonicalId":"locus.noise.proximity","callName":"locus_noise_proximity","title":"Transportation-noise proximity facts","description":"Return factual straight-line proximity to the nearest FAA public-use airport within 100 km plus nearest mapped motorway/trunk and railway centerlines within about 3 km. Distances only: no noise scores, no dB estimate, no quiet/loud or safe/unsafe verdict. National by address/point. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["noise","transportation","airport","highway","rail","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_noise_proximity","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-noise-proximity","canonicalId":"locus.noise.proximity","callName":"locus-noise-proximity","tier":"paid","endpoint":"https://api.locus.report/api/locus-noise-proximity"}]},{"catalogId":"paid:locus-noise-proximity","canonicalId":"locus.noise.proximity","callName":"locus-noise-proximity","title":"Transportation-noise proximity facts","description":"Airport, major-road, and railway proximity facts for an address. Perfect for: 'airport highway or rail near this property', 'transportation noise sources nearby', 'nearest motorway or railway'. Returns straight-line mapped distances and component health, not decibels or a quiet/loud/safe/unsafe label. Charge-free when all sources are unavailable or the only OSM evidence is a truncated best-effort nearest scan.","tier":"paid","rail":"promoted-free-dual","category":"infrastructure","tags":["noise","transportation","airport","highway","rail","read-only","paid","x402","category:infrastructure"],"endpoint":"https://api.locus.report/api/locus-noise-proximity","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-noise-proximity.json","naming":{"style":"hyphen-paid-route","executableName":"locus-noise-proximity","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_noise_proximity","canonicalId":"locus.noise.proximity","callName":"locus_noise_proximity","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_open_disaster_assistance","canonicalId":"locus.open.disaster.assistance","callName":"locus_open_disaster_assistance","title":"Open FEMA individual-assistance windows","description":"Return recent OpenFEMA county declarations, identify published Individuals and Households Program filing dates that have not passed, and attach cited FEMA, DisasterAssistance.gov, IRS, and matching registry pointers. Declaration facts only; FEMA decides eligibility. National, free, read-only.","tier":"free","rail":"free","category":"hazard","tags":["disaster","fema","deadlines","owner-actions","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address. Provide this, latitude+longitude, or state+county.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Decimal latitude. Provide with longitude.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Decimal longitude. Provide with latitude.","type":"number","minimum":-180,"maximum":180},"state":{"description":"Two-letter code or full US state name. Provide with county.","type":"string","minLength":2,"maxLength":40},"county":{"description":"County or county-equivalent name. Provide with state.","type":"string","minLength":1,"maxLength":100},"monthsBack":{"default":36,"description":"Calendar months of declarations to request. Default 36, maximum 120.","type":"integer","minimum":1,"maximum":120}},"required":["monthsBack"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_open_disaster_assistance","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_opportunity_zone","canonicalId":"locus.opportunity.zone","callName":"locus_opportunity_zone","title":"Qualified Opportunity Zone designation","description":"Return whether a US address/point is within a designated Qualified Opportunity Zone (Treasury/IRS 2018 census-tract designation), cited to HUD. A DESIGNATION fact only — never tax, investment, or eligibility advice, and never a good/bad characterization. National. Read-only.","tier":"free","rail":"free","category":"economics","tags":["investors","opportunity-zone","designation","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_opportunity_zone","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-opportunity-zone","canonicalId":"locus.opportunity.zone","callName":"locus-opportunity-zone","tier":"paid","endpoint":"https://api.locus.report/api/locus-opportunity-zone"}]},{"catalogId":"paid:locus-opportunity-zone","canonicalId":"locus.opportunity.zone","callName":"locus-opportunity-zone","title":"Qualified Opportunity Zone designation","description":"Qualified Opportunity Zone status for an address. Perfect for: 'is this address in an Opportunity Zone', 'is this property in a QOZ', 'Opportunity Zone for an address', 'is this parcel in a qualified opportunity zone', 'OZ tract lookup'. Returns the QOZ designation at a US point: designated true/false, designation status, census tract GEOID, state, and a rural flag. National, no key. A 'not designated' result is the real covered answer. Charge-free only when the lookup fails.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["investors","opportunity-zone","designation","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-opportunity-zone","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-opportunity-zone.json","naming":{"style":"hyphen-paid-route","executableName":"locus-opportunity-zone","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_opportunity_zone","canonicalId":"locus.opportunity.zone","callName":"locus_opportunity_zone","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_ordinance_leads","canonicalId":"locus.ordinance.leads","callName":"locus_ordinance_leads","title":"Local ordinance lead-finder (jurisdiction-locked web-search prompt)","description":"Resolve a US address to its governing jurisdiction (the right city vs unincorporated county, not a same-named place), then return a bounded, jurisdiction-locked web-search prompt + query pack + official-source targets for finding the LOCAL ordinance/code sections relevant to a topic (setbacks, ADU, short-term rental, fences, home occupation, animal keeping, etc.). A search-capable agent runs the searches and cites official sources. STARTING-PLACE LEADS for your model to review — not legal advice, not the official record, never a determination of what is permitted. Right jurisdiction is guaranteed when a place resolves; right section is not. Read-only; Locus serves no ordinance text.","tier":"free","rail":"free","category":"parcels","tags":["policy","ordinances","zoning","local-code","web-search-prompt","leads","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address; resolves the governing jurisdiction (city vs unincorporated county) whose local code is targeted.","type":"string","minLength":5,"maxLength":200},"place":{"description":"Alternative to address: a place/ZIP to resolve the governing jurisdiction.","type":"string","minLength":3,"maxLength":120},"topics":{"description":"Optional subset of ordinance topics to focus the query pack (e.g. short_term_rental, accessory_dwelling, setbacks).","type":"array","items":{"type":"string","enum":["zoning_district","setbacks","accessory_dwelling","permitted_uses","short_term_rental","home_occupation","fences_walls","signage","occupancy","inspection_process","fee_schedule","business_license","outdoor_sales","sidewalk_cafe","published_review_timeline","accessory_structures","animal_keeping","noise","tree_landscape"]}}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_ordinance_leads","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"paid:locus-owner-action-brief","canonicalId":"locus.owner.action.brief","callName":"locus-owner-action-brief","title":"Cited owner programs, deadlines, tax calendar, and parcel screens","description":"Six cited owner-action lanes for one US address: curated and derived programs, exact program dates, the state appeal rule, state tax framing plus county source pointer, FEMA LOMA point-elevation screen when applicable, and the parcel special-valuation screen. Returns charged:false unless at least two sections are substantive. Lists programs and rules only; no eligibility or action recommendation. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"economics","tags":["data","search","real-estate","property","property-research","due-diligence","public-records","x402","owner-programs","property-tax","appeal-window","deadlines","mitigation","special-valuation","category:economics"],"endpoint":"https://api.locus.report/api/locus-owner-action-brief","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":200,"description":"Required exact US street address or ZIP/place string."},"noticeDate":{"description":"Optional date printed or delivered on the assessment notice, YYYY-MM-DD.","type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"withinDays":{"default":180,"description":"Days after today to include in program windows; default 180, maximum 400.","type":"integer","minimum":1,"maximum":400}},"required":["address","withinDays"],"additionalProperties":false},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"address":{"type":"string"},"place":{"type":"string"},"jurisdictionIds":{"type":"array","items":{"type":"string"}},"sections":{"type":"object","properties":{"programs":{"type":"object","properties":{"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}}},"required":["status","citations"],"additionalProperties":{}},"programWindows":{"type":"object","properties":{"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}}},"required":["status","citations"],"additionalProperties":{}},"appealWindow":{"type":"object","properties":{"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}}},"required":["status","citations"],"additionalProperties":{}},"taxCalendar":{"type":"object","properties":{"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}}},"required":["status","citations"],"additionalProperties":{}},"lomaScreen":{"type":"object","properties":{"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}}},"required":["status","citations"],"additionalProperties":{}},"specialValuation":{"type":"object","properties":{"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}}},"required":["status","citations"],"additionalProperties":{}}},"required":["programs","programWindows","appealWindow","taxCalendar","lomaScreen","specialValuation"],"additionalProperties":false},"componentStatus":{"minItems":6,"maxItems":6,"type":"array","items":{"type":"object","properties":{"component":{"type":"string","enum":["programs","programWindows","appealWindow","taxCalendar","lomaScreen","specialValuation"]},"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"substantive":{"type":"boolean"},"detail":{"type":"string"}},"required":["component","status","substantive"],"additionalProperties":false}},"substantiveSectionCount":{"type":"integer","minimum":0,"maximum":6},"caveats":{"type":"array","items":{"type":"string"}},"verifyNext":{"type":"array","items":{"type":"object","properties":{"step":{"type":"string"},"url":{"type":"string","format":"uri"},"source":{"type":"string"}},"required":["step"],"additionalProperties":{}}},"kind":{"type":"string","const":"owner_action_brief"}},"required":["generatedAt","address","jurisdictionIds","sections","componentStatus","substantiveSectionCount","caveats","verifyNext","kind"],"additionalProperties":false},{"type":"object","properties":{"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"address":{"type":"string"},"place":{"type":"string"},"jurisdictionIds":{"type":"array","items":{"type":"string"}},"sections":{"type":"object","properties":{"programs":{"type":"object","properties":{"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}}},"required":["status","citations"],"additionalProperties":{}},"programWindows":{"type":"object","properties":{"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}}},"required":["status","citations"],"additionalProperties":{}},"appealWindow":{"type":"object","properties":{"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}}},"required":["status","citations"],"additionalProperties":{}},"taxCalendar":{"type":"object","properties":{"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}}},"required":["status","citations"],"additionalProperties":{}},"lomaScreen":{"type":"object","properties":{"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}}},"required":["status","citations"],"additionalProperties":{}},"specialValuation":{"type":"object","properties":{"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}}},"required":["status","citations"],"additionalProperties":{}}},"required":["programs","programWindows","appealWindow","taxCalendar","lomaScreen","specialValuation"],"additionalProperties":false},"componentStatus":{"minItems":6,"maxItems":6,"type":"array","items":{"type":"object","properties":{"component":{"type":"string","enum":["programs","programWindows","appealWindow","taxCalendar","lomaScreen","specialValuation"]},"status":{"type":"string","enum":["ok","partial","not_applicable","not_covered","not_substantive","unavailable"]},"substantive":{"type":"boolean"},"detail":{"type":"string"}},"required":["component","status","substantive"],"additionalProperties":false}},"substantiveSectionCount":{"type":"integer","minimum":0,"maximum":6},"caveats":{"type":"array","items":{"type":"string"}},"verifyNext":{"type":"array","items":{"type":"object","properties":{"step":{"type":"string"},"url":{"type":"string","format":"uri"},"source":{"type":"string"}},"required":["step"],"additionalProperties":{}}},"kind":{"type":"string","const":"owner_action_brief_diagnostic"},"charged":{"type":"boolean","const":false}},"required":["generatedAt","address","jurisdictionIds","sections","componentStatus","substantiveSectionCount","caveats","verifyNext","kind","charged"],"additionalProperties":false}]},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-owner-action-brief.json","naming":{"style":"hyphen-paid-route","executableName":"locus-owner-action-brief","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_owner_mortgage_calendar","canonicalId":"locus.owner.mortgage.calendar","callName":"locus_owner_mortgage_calendar","title":"Cited owner mortgage calendar","description":"Return twelve cited mortgage statute and agency fact cards, plus deterministic dates only for caller-supplied loan, notice, sale, escrow, and appraisal inputs. No legal advice, qualification, approval odds, value opinion, or recommendation. National, free, read-only.","tier":"free","rail":"free","category":"economics","tags":["mortgage","calendar","owner-actions","deadlines","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"originationDate":{"description":"Loan origination date in YYYY-MM-DD format.","type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"originalValueUsd":{"description":"Caller-supplied original property value used only for scheduled 80% and 78% balance arithmetic.","type":"number","exclusiveMinimum":0,"maximum":1000000000},"originalLoanAmountUsd":{"description":"Caller-supplied original principal balance.","type":"number","exclusiveMinimum":0,"maximum":1000000000},"annualRatePercent":{"description":"Caller-supplied nominal annual interest rate percent.","type":"number","minimum":0,"maximum":100},"termMonths":{"default":360,"description":"Amortization term in months. Default 360.","type":"integer","minimum":1,"maximum":600},"loanType":{"type":"string","enum":["conventional","fha","va","usda"]},"escrowComputationYearEnd":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"forcePlacedNoticeDate":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"floodForcePlacementNoticeDate":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"foreclosureSaleDate":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"txDefaultNoticeDate":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"appraisalReceivedDate":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"}},"required":["termMonths"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_owner_mortgage_calendar","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_owner_programs","canonicalId":"locus.owner.programs","callName":"locus_owner_programs","title":"Owner programs and cited filing windows","description":"Return registry-backed owner program, credit, mitigation, valuation, amnesty, registration, transfer, and title-protection facts for a resolved US place, including nationwide rows and a jurisdiction-locked official-source query pack. Facts and printed dollar figures come only from cited registry rows. No individual determination, recommendation, or savings estimate.","tier":"free","rail":"free","category":"infrastructure","tags":["owner-programs","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address or ZIP used to resolve state, county, and city program rows.","type":"string","minLength":1,"maxLength":200},"place":{"description":"US city, county, state, ZIP, or address used to resolve program rows.","type":"string","minLength":1,"maxLength":200},"classes":{"description":"Optional owner-program classes to return.","type":"array","items":{"type":"string","enum":["mitigation_grant","insurance_discount_mandate","flood_map_correction","utility_credit","lead_service_line","sidewalk_cost_share","flood_protection_rebate","abatement","special_valuation","historic_incentive","solar_exemption","lien_amnesty","penalty_waiver","installment_plan","assessment_deferral","registration_obligation","transfer_tax_relief","title_protection","energy_rebate","association_rule","tax_relief_local","home_repair","exemption_relief","appeal_window","payment_deadline","early_payment_discount","insurance_discount_program","disaster_assistance_window","permit_fee_waiver","tax_sale_redemption"]}},"includeDerived":{"default":true,"description":"Include cited statewide rows derived from the tax-framing and appeal-rule registries; default true.","type":"boolean"}},"required":["includeDerived"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_owner_programs","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-owner-programs","canonicalId":"locus.owner.programs","callName":"locus-owner-programs","tier":"paid","endpoint":"https://api.locus.report/api/locus-owner-programs"}]},{"catalogId":"paid:locus-owner-programs","canonicalId":"locus.owner.programs","callName":"locus-owner-programs","title":"Owner programs and cited filing windows","description":"Cited owner programs and statewide property-tax rules for a US place. Perfect for: 'owner programs near this property', 'homestead or exemption rules', 'property-tax appeal and payment windows'. Returns curated local/state/national rows plus cited statewide rows derived from Locus tax and appeal registries. No eligibility decision or recommendation. Charge-free when no registry or derived row returns.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["owner-programs","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-owner-programs","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address or ZIP used to resolve state, county, and city program rows.","type":"string","minLength":1,"maxLength":200},"place":{"description":"US city, county, state, ZIP, or address used to resolve program rows.","type":"string","minLength":1,"maxLength":200},"classes":{"description":"Optional owner-program classes to return.","type":"array","items":{"type":"string","enum":["mitigation_grant","insurance_discount_mandate","flood_map_correction","utility_credit","lead_service_line","sidewalk_cost_share","flood_protection_rebate","abatement","special_valuation","historic_incentive","solar_exemption","lien_amnesty","penalty_waiver","installment_plan","assessment_deferral","registration_obligation","transfer_tax_relief","title_protection","energy_rebate","association_rule","tax_relief_local","home_repair","exemption_relief","appeal_window","payment_deadline","early_payment_discount","insurance_discount_program","disaster_assistance_window","permit_fee_waiver","tax_sale_redemption"]}},"includeDerived":{"default":true,"description":"Include cited statewide rows derived from the tax-framing and appeal-rule registries; default true.","type":"boolean"}},"required":["includeDerived"],"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-owner-programs.json","naming":{"style":"hyphen-paid-route","executableName":"locus-owner-programs","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_owner_programs","canonicalId":"locus.owner.programs","callName":"locus_owner_programs","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_ownership_loop","canonicalId":"locus.ownership.loop","callName":"locus_ownership_loop","title":"Ownership-loop composite: dated changes around one place","description":"ONE-CALL ownership-loop bundle for dated changes around one place: development cases, capital projects and assessments, recent parcel sales, FEMA map revisions/declarations/claims when inputs support them, and county tax calendar. Use when the user (owner or manager) asks what has changed or is happening around an address; prefer this over granular lanes like locus_development_cases. Per-component status, every lane cited. NC addresses geocode. Never a value or risk verdict.","tier":"free","rail":"free","category":"infrastructure","tags":["ownership-loop","composite","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters for nearby ownership-loop lanes; default 1500, max 5000.","type":"integer","minimum":100,"maximum":5000},"county":{"description":"Optional covered county name for the tax calendar, e.g. Wake.","type":"string","minLength":3,"maxLength":60},"state":{"description":"Optional two-letter state code for FEMA declarations; provide with countyFips3.","type":"string","minLength":2,"maxLength":2},"countyFips3":{"description":"Optional 3-digit county FIPS for FEMA declarations, e.g. 183 for Wake.","type":"string","minLength":1,"maxLength":3},"zip":{"description":"Optional 5-digit or ZIP+4 code for NFIP flood-claim history.","type":"string","minLength":5,"maxLength":10}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_ownership_loop","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-ownership-loop","canonicalId":"locus.ownership.loop","callName":"locus-ownership-loop","tier":"paid","endpoint":"https://api.locus.report/api/locus-ownership-loop"}]},{"catalogId":"paid:locus-ownership-loop","canonicalId":"locus.ownership.loop","callName":"locus-ownership-loop","title":"Ownership-loop composite: dated changes around one place","description":"Cheap dated-change dual (also free at /tools/call): nearby development cases, capital projects, recent sales, FEMA events, and tax calendar. Perfect for a quick NC-area change scan. For topology-aware surrounding parcels plus multi-lane neighbors in one stored packet, prefer locus-surrounding-area-analysis ($0.10). Not a verdict. Charge-free when no component has substance.","tier":"paid","rail":"promoted-free-dual","category":"parcels","tags":["ownership-loop","composite","read-only","paid","x402","category:parcels"],"endpoint":"https://api.locus.report/api/locus-ownership-loop","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters for nearby ownership-loop lanes; default 1500, max 5000.","type":"integer","minimum":100,"maximum":5000},"county":{"description":"Optional covered county name for the tax calendar, e.g. Wake.","type":"string","minLength":3,"maxLength":60},"state":{"description":"Optional two-letter state code for FEMA declarations; provide with countyFips3.","type":"string","minLength":2,"maxLength":2},"countyFips3":{"description":"Optional 3-digit county FIPS for FEMA declarations, e.g. 183 for Wake.","type":"string","minLength":1,"maxLength":3},"zip":{"description":"Optional 5-digit or ZIP+4 code for NFIP flood-claim history.","type":"string","minLength":5,"maxLength":10}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-ownership-loop.json","naming":{"style":"hyphen-paid-route","executableName":"locus-ownership-loop","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_ownership_loop","canonicalId":"locus.ownership.loop","callName":"locus_ownership_loop","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_parcel_lookup","canonicalId":"locus.parcel.lookup","callName":"locus_parcel_lookup","title":"Official parcel record: lot, land use, acreage, year built (verified counties; no owner/value on the free rail)","description":"Resolve a street address to cited, PII-safe parcel/place facts from wired official parcel sources (Suffolk County, Newport County, New York County, Kings County, Queens County, Bronx County, Richmond County, Westchester County, Albany County, Erie County, Rockland County, Suffolk County, Onondaga County, Orange County, Oneida County, Broome County, Bergen County, Hudson County, Essex County, Middlesex County, Monmouth County, Morris County, Union County, Passaic County, Dallas County, Dallas County, Tarrant County, Harris County, Bexar County, Travis County, Williamson County, Hays County, Comal County, Guadalupe County, Montgomery County, Kendall County, Fort Bend County, Brazoria County, Los Angeles County, Orange County, Sacramento County, Broward County, Miami-Dade County, Duval County, Hillsborough County, Lee County, Orange County, Osceola County, Palm Beach County, Pasco County, Polk County, Seminole County, Denver County, Denver, El Paso County, El Paso, Marion County, Beaufort, Chatham County, Bryan County, Effingham County, Cook County, San Francisco County, Alameda County, Maricopa County, Gwinnett County, Clark County, Salt Lake County, San Diego County, Santa Clara County, Hennepin County, Fulton County, Shelby County, Multnomah County, Ada County, Philadelphia County, Jasper County, Dutchess County, Putnam County, Ulster County, Wake County, Chatham County, Iredell County, Orange County, Gaston County, Orange County, Tulsa County, San Mateo County, Barnstable County, Berkshire County, Bristol County, Dukes County, Essex County, Franklin County, Hampden County, Hampshire County, Middlesex County, Nantucket County, Norfolk County, Plymouth County, Suffolk County, Worcester County, Barnstable County, Berkshire County, Bristol County, Dukes County, Essex County, Franklin County, Hampden County, Hampshire County, Middlesex County, Nantucket County, Norfolk County, Plymouth County, Worcester County, and Davidson): land use, acreage/lot size, year built, and derived county/municipality. Use when the user asks about the parcel itself: lot size, year built, or land use for an address. Financial facts (assessed value, last sale, annual tax) are part of the paid Locus place report, not this free lookup. Optional incident counts default off. Owner and mailing fields are never returned.","tier":"free","rail":"free","category":"infrastructure","tags":["parcels","place-facts","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Street address to resolve to a parcel, e.g. '123 Oak Park Dr, Cary, NC 27519'. Provide this or parcelId with state and county.","type":"string","minLength":3},"parcelId":{"description":"Exact public parcel identifier. Provide state and county with parcelId.","type":"string","minLength":1,"maxLength":80},"state":{"description":"Two-letter state code required with parcelId.","type":"string","minLength":2,"maxLength":2},"county":{"description":"County name required with parcelId.","type":"string","minLength":2,"maxLength":80},"includeIncidents":{"description":"Optional boolean; include bounded proximity incident counts when available. Default false. Counts only, never a safety verdict.","type":"boolean"},"radiusMeters":{"description":"Optional incident search radius in meters; default 1000, max 5000.","type":"number"},"lookbackDays":{"description":"Optional incident lookback window in days; default 365, max 1825.","type":"number"}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_parcel_lookup","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-parcel-lookup","canonicalId":"locus.parcel.lookup","callName":"locus-parcel-lookup","tier":"paid","endpoint":"https://api.locus.report/api/locus-parcel-lookup"},{"catalogId":"paid:locus-parcel-value","canonicalId":"locus.parcel.value","callName":"locus-parcel-value","tier":"paid","endpoint":"https://api.locus.report/api/locus-parcel-value"}]},{"catalogId":"paid:locus-parcel-lookup","canonicalId":"locus.parcel.lookup","callName":"locus-parcel-lookup","title":"Official parcel record: lot, land use, acreage, year built (verified counties; no owner/value on the free rail)","description":"Parcel facts for an address or jurisdiction-scoped parcel id. Perfect for: 'what is the lot size / acreage of this property', 'year built for an address', 'land use / zoning class of a parcel', 'look up parcel details'. Returns cited, PII-safe land use, acreage, year built, and legal jurisdiction from wired official sources. Owner/mailing never returned; assessed value, last sale, and tax are in paid reports. Charge-free when no parcel resolves.","tier":"paid","rail":"promoted-free-dual","category":"parcels","tags":["parcels","place-facts","read-only","paid","x402","category:parcels"],"endpoint":"https://api.locus.report/api/locus-parcel-lookup","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Street address to resolve to a parcel, e.g. '123 Oak Park Dr, Cary, NC 27519'. Provide this or parcelId with state and county.","type":"string","minLength":3},"parcelId":{"description":"Exact public parcel identifier. Provide state and county with parcelId.","type":"string","minLength":1,"maxLength":80},"state":{"description":"Two-letter state code required with parcelId.","type":"string","minLength":2,"maxLength":2},"county":{"description":"County name required with parcelId.","type":"string","minLength":2,"maxLength":80},"includeIncidents":{"description":"Optional boolean; include bounded proximity incident counts when available. Default false. Counts only, never a safety verdict.","type":"boolean"},"radiusMeters":{"description":"Optional incident search radius in meters; default 1000, max 5000.","type":"number"},"lookbackDays":{"description":"Optional incident lookback window in days; default 365, max 1825.","type":"number"}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-parcel-lookup.json","naming":{"style":"hyphen-paid-route","executableName":"locus-parcel-lookup","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_parcel_lookup","canonicalId":"locus.parcel.lookup","callName":"locus_parcel_lookup","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_parcel_set","canonicalId":"locus.parcel.set","callName":"locus_parcel_set","title":"Parcel set: multiple parcels by proximity or boundary — lot, land use, acreage, aggregate (verified counties)","description":"Analyzes a caller-supplied SET of parcels (a development/assemblage) as one asset. Lists per-parcel land use, acreage, year built, and zoning, plus summed acreage, a land-use mix, and the distinct jurisdictions. Financial aggregates (summed assessed value) are part of the paid Locus report, not this free tool. Does NOT compute FAR/buildability/entitlement and does NOT assert a common owner.","tier":"free","rail":"free","category":"infrastructure","tags":["parcels","commercial","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"addresses":{"description":"Up to 25 street addresses, one per parcel in the assemblage/development.","minItems":1,"maxItems":25,"type":"array","items":{"type":"string","minLength":3}},"parcelIds":{"description":"Up to 25 exact public parcel identifiers in one state and county.","minItems":1,"maxItems":25,"type":"array","items":{"type":"string","minLength":1,"maxLength":80}},"state":{"description":"Two-letter state code required with parcelIds.","type":"string","minLength":2,"maxLength":2},"county":{"description":"County name required with parcelIds.","type":"string","minLength":2,"maxLength":80}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_parcel_set","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-parcel-set","canonicalId":"locus.parcel.set","callName":"locus-parcel-set","tier":"paid","endpoint":"https://api.locus.report/api/locus-parcel-set"}]},{"catalogId":"paid:locus-parcel-set","canonicalId":"locus.parcel.set","callName":"locus-parcel-set","title":"Parcel set: multiple parcels by proximity or boundary — lot, land use, acreage, aggregate (verified counties)","description":"Multi-parcel facts for caller-supplied addresses or jurisdiction-scoped parcel ids. Perfect for: 'look up a parcel set', 'total acreage of these parcels', 'land-use mix across a development'. Resolves up to 25 references to PII-safe parcel facts, summed acreage, land-use mix, and legal jurisdictions. It does not infer common ownership. Charge-free when no parcel resolves.","tier":"paid","rail":"promoted-free-dual","category":"parcels","tags":["parcels","commercial","read-only","paid","x402","category:parcels"],"endpoint":"https://api.locus.report/api/locus-parcel-set","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"addresses":{"description":"Up to 25 street addresses, one per parcel in the assemblage/development.","minItems":1,"maxItems":25,"type":"array","items":{"type":"string","minLength":3}},"parcelIds":{"description":"Up to 25 exact public parcel identifiers in one state and county.","minItems":1,"maxItems":25,"type":"array","items":{"type":"string","minLength":1,"maxLength":80}},"state":{"description":"Two-letter state code required with parcelIds.","type":"string","minLength":2,"maxLength":2},"county":{"description":"County name required with parcelIds.","type":"string","minLength":2,"maxLength":80}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-parcel-set.json","naming":{"style":"hyphen-paid-route","executableName":"locus-parcel-set","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_parcel_set","canonicalId":"locus.parcel.set","callName":"locus_parcel_set","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_parcel_transfers","canonicalId":"locus.parcel.transfers","callName":"locus_parcel_transfers","title":"Recent parcel sales near a point (Barnstable County, Beaufort, Bergen County, Berkshire County, Bristol County, Broward County, Chatham County, Chatham County, NC (COMPER), CO statewide, CT statewide, Davidson County, DC statewide, Denver, Denver County, Dukes County, Duval County, Essex County, Franklin County, Hampden County, Hampshire County, Hennepin County, Hillsborough County, Hudson County, Iredell County, Lee County, Maricopa County, MD statewide, Miami-Dade County, Middlesex County, Monmouth County, Morris County, Multnomah County, Nantucket County, Norfolk County, Orange County, Osceola County, Palm Beach County, Pasco County, Passaic County, Philadelphia County, Plymouth County, Polk County, Seminole County, Union County, Wake County, and Worcester County)","description":"Return recent recorded parcel sales near a point from official assessor/parcel sources that publish sale data (Barnstable County, Beaufort, Bergen County, Berkshire County, Bristol County, Broward County, Chatham County, Chatham County, NC (COMPER), CO statewide, CT statewide, Davidson County, DC statewide, Denver, Denver County, Dukes County, Duval County, Essex County, Franklin County, Hampden County, Hampshire County, Hennepin County, Hillsborough County, Hudson County, Iredell County, Lee County, Maricopa County, MD statewide, Miami-Dade County, Middlesex County, Monmouth County, Morris County, Multnomah County, Nantucket County, Norfolk County, Orange County, Osceola County, Palm Beach County, Pasco County, Passaic County, Philadelphia County, Plymouth County, Polk County, Seminole County, Union County, Wake County, and Worcester County), plus the Chatham County COMPER comparable-sales app: site address, recorded sale date, price, and verify links. Use when the user asks what nearby homes sold for, or about recent recorded sales near an address. Owner, mailing, buyer, and seller fields are stripped. Not a valuation, appraisal, AVM, or price prediction. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["parcels","sales","ownership-loop","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 500, max 500 on the free tool. The paid locus-comps-brief tool searches up to 1500m.","type":"integer","minimum":100,"maximum":500},"monthsBack":{"description":"Optional lookback window in months for recorded sales; default 3, max 3 on the free tool. The paid locus-comps-brief tool looks back up to 24 months and adds median + price/area + trend.","type":"integer","minimum":1,"maximum":3}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_parcel_transfers","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-parcel-transfers","canonicalId":"locus.parcel.transfers","callName":"locus-parcel-transfers","tier":"paid","endpoint":"https://api.locus.report/api/locus-parcel-transfers"}]},{"catalogId":"paid:locus-parcel-transfers","canonicalId":"locus.parcel.transfers","callName":"locus-parcel-transfers","title":"Recent parcel sales near a point (Barnstable County, Beaufort, Bergen County, Berkshire County, Bristol County, Broward County, Chatham County, Chatham County, NC (COMPER), CO statewide, CT statewide, Davidson County, DC statewide, Denver, Denver County, Dukes County, Duval County, Essex County, Franklin County, Hampden County, Hampshire County, Hennepin County, Hillsborough County, Hudson County, Iredell County, Lee County, Maricopa County, MD statewide, Miami-Dade County, Middlesex County, Monmouth County, Morris County, Multnomah County, Nantucket County, Norfolk County, Orange County, Osceola County, Palm Beach County, Pasco County, Passaic County, Philadelphia County, Plymouth County, Polk County, Seminole County, Union County, Wake County, and Worcester County)","description":"Recent recorded parcel sales near an address. Perfect for: 'what did nearby homes sell for', 'recent sales near an address', 'recorded parcel transfers nearby', 'comparable sales near a property'. Returns recent recorded sales near a point from sale-capable assessor sources plus Chatham COMPER: site address, recorded date, and price (90-day / 500m). Not a valuation or AVM. For 24-month / 1500m analytics with median + trend, use locus-comps-brief. Charge-free when no priced sale resolves.","tier":"paid","rail":"promoted-free-dual","category":"parcels","tags":["parcels","sales","ownership-loop","read-only","paid","x402","category:parcels"],"endpoint":"https://api.locus.report/api/locus-parcel-transfers","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 500, max 500 on the free tool. The paid locus-comps-brief tool searches up to 1500m.","type":"integer","minimum":100,"maximum":500},"monthsBack":{"description":"Optional lookback window in months for recorded sales; default 3, max 3 on the free tool. The paid locus-comps-brief tool looks back up to 24 months and adds median + price/area + trend.","type":"integer","minimum":1,"maximum":3}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-parcel-transfers.json","naming":{"style":"hyphen-paid-route","executableName":"locus-parcel-transfers","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_parcel_transfers","canonicalId":"locus.parcel.transfers","callName":"locus_parcel_transfers","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"paid:locus-parcel-value","canonicalId":"locus.parcel.value","callName":"locus-parcel-value","title":"Official parcel record: lot, land use, acreage, year built (verified counties; no owner/value on the free rail)","description":"Recorded sale price + assessed value for a specific parcel, cited to the county source. Perfect for: 'last sale price for this address', 'assessed value for a parcel', 'parcel value record'. Returns third-party public assessor facts only; Locus does not appraise, estimate market value, rank, or score. Charge-free unless a verified source returns sale price or assessed value.","tier":"paid","rail":"promoted-free-dual","category":"parcels","tags":["parcels","place-facts","read-only","paid","x402","category:parcels"],"endpoint":"https://api.locus.report/api/locus-parcel-value","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Street address to resolve to a parcel, e.g. '123 Oak Park Dr, Cary, NC 27519'. Provide this or parcelId with state and county.","type":"string","minLength":3},"parcelId":{"description":"Exact public parcel identifier. Provide state and county with parcelId.","type":"string","minLength":1,"maxLength":80},"state":{"description":"Two-letter state code required with parcelId.","type":"string","minLength":2,"maxLength":2},"county":{"description":"County name required with parcelId.","type":"string","minLength":2,"maxLength":80},"includeIncidents":{"description":"Optional boolean; include bounded proximity incident counts when available. Default false. Counts only, never a safety verdict.","type":"boolean"},"radiusMeters":{"description":"Optional incident search radius in meters; default 1000, max 5000.","type":"number"},"lookbackDays":{"description":"Optional incident lookback window in days; default 365, max 1825.","type":"number"}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-parcel-value.json","naming":{"style":"hyphen-paid-route","executableName":"locus-parcel-value","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_parcel_lookup","canonicalId":"locus.parcel.lookup","callName":"locus_parcel_lookup","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"paid:locus-permit-closeout-check","canonicalId":"locus.permit.closeout.check","callName":"locus-permit-closeout-check","title":"Exact-subject permit closeout evidence check","description":"Check exact-parcel permit status and published closeout fields. Coverage: Raleigh, Durham, Wake County, Austin, Seattle, Chicago, Los Angeles, New York City. When enabled, recheckTargets supply exact arguments for this paid endpoint; rechecks return changed, unchanged, or unavailable. Caller-scheduled only. Not an inspection, compliance, occupancy, or closing approval. Uncertain or unavailable evidence is charge-free. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"parcels","tags":["permits","closeout","occupancy","parcel","due-diligence","public-records","x402","category:parcels"],"endpoint":"https://api.locus.report/api/locus-permit-closeout-check","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"delivery":{"description":"Optional REST x402 purchase-completion webhook. Requires an approved HTTPS origin. MCP/A2A and MPP do not support this pilot option. Keep both secrets private; statusToken authenticates delivery polling.","type":"object","properties":{"url":{"type":"string","maxLength":2048,"format":"uri"},"verificationSecret":{"type":"string","pattern":"^[A-Za-z0-9_-]{43,128}$"},"statusToken":{"type":"string","pattern":"^[A-Za-z0-9_-]{43,128}$"}},"required":["url","verificationSecret","statusToken"],"additionalProperties":false},"address":{"description":"Full street address. Provide this or jurisdiction-scoped parcelIds.","type":"string","minLength":5,"maxLength":240},"parcelIds":{"description":"One to 25 exact parcel identifiers for one project. Provide state and county.","minItems":1,"maxItems":25,"type":"array","items":{"type":"string","minLength":1,"maxLength":80}},"state":{"description":"Two-letter state code required with parcelId or parcelIds.","type":"string","minLength":2,"maxLength":2},"county":{"description":"County name required with parcelId or parcelIds.","type":"string","minLength":2,"maxLength":80},"municipality":{"description":"Optional caller hint. The resolved parcel jurisdiction remains authoritative.","type":"string","minLength":2,"maxLength":80},"permitId":{"description":"Optional exact permit identifier to select before reducing the official response.","type":"string","minLength":1,"maxLength":160},"priorSnapshotId":{"description":"Optional prior Locus permit snapshot identifier for deterministic field comparison.","type":"string","minLength":1,"maxLength":200}},"additionalProperties":false},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"delivery":{"type":"object","properties":{"eventId":{"type":"string"},"statusUrl":{"type":"string"},"statusAuthHeader":{"type":"string","const":"x-locus-delivery-token"},"retryMode":{"type":"string","const":"manual"},"retryMethod":{"type":"string","const":"POST"},"retryUrl":{"type":"string"},"cancelMethod":{"type":"string","const":"DELETE"}},"required":["eventId","statusUrl","statusAuthHeader","retryMode","retryMethod","retryUrl","cancelMethod"],"additionalProperties":false},"kind":{"type":"string","const":"permit_closeout_check"},"charged":{"type":"boolean","const":false},"subject":{"type":"object","properties":{"address":{"type":"string"},"parcelId":{"type":"string"},"parcelIds":{"type":"array","items":{"type":"string"}},"matchedAddress":{"type":"string"},"state":{"type":"string","enum":["parcel_resolved","unresolved"]}},"required":["address","state"],"additionalProperties":false},"coverage":{"type":"object","properties":{},"additionalProperties":{}},"laneState":{"type":"string","enum":["follow_up_records_found","published_closeout_records_found","checked_no_open_closeout_records","no_matching_record","parcel_match_uncertain","status_not_published","out_of_coverage","source_unavailable"]},"matchBasis":{"type":"string","enum":["parcel_id","normalized_address","nearby_only","none"]},"records":{"type":"array","items":{"type":"object","properties":{"permitId":{"type":"string"},"rawStatus":{"type":"string"},"recordState":{"type":"string","enum":["open_or_pending","expired_or_lapsed","no_final_published","closed_or_final_published","status_unclassified"]},"permitType":{"type":"string"},"recordType":{"type":"string","enum":["permit","plan","inspection"]},"applicationDate":{"type":"string"},"issueDate":{"type":"string"},"statusDate":{"type":"string"},"expiryDate":{"type":"string"},"completionPublished":{"type":"string"},"coPublishedDates":{"type":"array","items":{"type":"string"}},"coNumber":{"type":"string"},"recordNote":{"type":"string"},"finalDate":{"type":"string"},"inspectionRequestDate":{"type":"string"},"inspectionScheduleDate":{"type":"string"},"matchedParcelIds":{"type":"array","items":{"type":"string"}},"inspectionEvidenceState":{"type":"string","enum":["source_published_final_or_passed","source_published_open_or_failed","inspection_status_not_published","no_matching_inspection_record","professional_document_required"]},"source":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"recordId":{"type":"string"},"fetchedAt":{"type":"string"}},"required":["sourceName","sourceUrl","recordId","fetchedAt"],"additionalProperties":false}},"required":["permitId","recordState","coPublishedDates","inspectionEvidenceState","source"],"additionalProperties":false}},"followUpItems":{"type":"array","items":{"type":"object","properties":{"factualBasis":{"type":"string"},"recordIds":{"type":"array","items":{"type":"string"}},"verifyNext":{"type":"object","properties":{"action":{"type":"string"},"url":{"type":"string","format":"uri"}},"required":["action","url"],"additionalProperties":false}},"required":["factualBasis","recordIds","verifyNext"],"additionalProperties":false}},"unansweredQuestions":{"type":"array","items":{"type":"string"}},"caveats":{"type":"array","items":{"type":"string"}},"boundary":{"type":"string"},"sourceCheck":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string","enum":["2026-09-02","2026-09-03"]},"queryUrl":{"type":"string","format":"uri"},"queryUrls":{"type":"array","items":{"type":"string","format":"uri"}},"fetchedAt":{"type":"string"},"status":{"type":"string","enum":["ok","source_unavailable","parcel_match_uncertain"]},"error":{"type":"string"}},"required":["sourceName","sourceUrl","verifiedAt","queryUrl","queryUrls","fetchedAt","status"],"additionalProperties":false},"snapshotId":{"type":"string"},"observedAt":{"type":"string"},"accessMethod":{"type":"string","enum":["official_api","official_download","approved_public_browser"]},"changes":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string"},"prior":{},"current":{},"changedAt":{"type":"string"}},"required":["field","prior","current"],"additionalProperties":false}},"evidenceState":{"type":"string","enum":["confirmed","ambiguous_match","not_found","not_covered","source_unavailable","manual_check_required"]},"priorSnapshotId":{"type":"string"},"snapshotPersistence":{"type":"string","enum":["persisted","not_requested","disabled","unavailable","not_applicable"]},"recheckTargets":{"maxItems":25,"type":"array","items":{"type":"object","properties":{"endpoint":{"type":"string","const":"/api/locus-permit-closeout-check"},"method":{"type":"string","const":"POST"},"arguments":{"type":"object","properties":{"state":{"type":"string"},"county":{"type":"string"},"parcelIds":{"minItems":1,"maxItems":1,"type":"array","items":{"type":"string"}},"permitId":{"type":"string"},"priorSnapshotId":{"type":"string"}},"required":["state","county","parcelIds","permitId","priorSnapshotId"],"additionalProperties":false},"sourceNamespace":{"type":"string"},"recordType":{"type":"string","enum":["permit","plan","inspection"]},"matchBasis":{"type":"string","const":"parcel_id"},"checkedFields":{"type":"array","items":{"type":"string"}},"observedAt":{"type":"string"},"baselineVersion":{"type":"string"},"boundary":{"type":"string"}},"required":["endpoint","method","arguments","sourceNamespace","recordType","matchBasis","checkedFields","observedAt","baselineVersion","boundary"],"additionalProperties":false}},"recheckTargetsTruncated":{"type":"boolean"},"recheckTargetLimit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"recheckTargetsUnavailableReason":{"type":"string"},"recheck":{"type":"object","properties":{"state":{"type":"string","enum":["changed","unchanged","unavailable"]},"baselineSnapshotId":{"type":"string"},"reason":{"type":"string"},"deltas":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string"},"previousValue":{},"newValue":{},"sourceNamespace":{"type":"string"},"recordId":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"eventDate":{"anyOf":[{"type":"string"},{"type":"null"}]},"firstObservedAt":{"type":"string"},"priorObservedAt":{"type":"string"}},"required":["field","previousValue","newValue","sourceNamespace","recordId","sourceUrl","eventDate","firstObservedAt","priorObservedAt"],"additionalProperties":false}},"boundary":{"type":"string"}},"required":["state","baselineSnapshotId","deltas","boundary"],"additionalProperties":false}},"required":["kind","subject","coverage","laneState","matchBasis","records","followUpItems","unansweredQuestions","caveats","boundary","snapshotId","observedAt","accessMethod","changes","evidenceState","snapshotPersistence"],"additionalProperties":false},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-permit-closeout-check.json","naming":{"style":"hyphen-paid-route","executableName":"locus-permit-closeout-check","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_permit_rules","canonicalId":"locus.permit.rules","callName":"locus_permit_rules","title":"Cited owner-facing permit rules","description":"Return field-level, cited work-exemption, fee-source, expiration, extension, and waiver-or-amnesty research for the exact resolved jurisdiction. Version 1 covers Seattle, Austin, and verified Chicago fields. Missing fields stay not_verified, never none. Public policy context only: not legal advice or a property-specific permit determination. Free and read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["permits","owner-programs","local-policy","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address used to resolve the governing jurisdiction.","type":"string","minLength":1,"maxLength":200},"place":{"description":"Optional unambiguous US city or place with state.","type":"string","minLength":1,"maxLength":200},"includeNotVerified":{"default":true,"description":"Include registry fields that remain explicitly not_verified; default true.","type":"boolean"}},"required":["includeNotVerified"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_permit_rules","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_pfas_multimedia_nearby","canonicalId":"locus.pfas.multimedia.nearby","callName":"locus_pfas_multimedia_nearby","title":"Non-UCMR PFAS environmental and facility records nearby","description":"Return a bounded projection of EPA PFAS Analytic Tools records outside the UCMR 5 drinking-water lane: environmental-media samples, wastewater monitoring, TRI reporting, Superfund/federal-site detections, and manufacturing or industry records where loaded. Measured/reported evidence is always separated from potential-handling flags. More testing can create more records; proximity never establishes source, migration, exposure, parcel contamination, tap-water quality, or a safe/unsafe verdict. National, free, read-only.","tier":"free","rail":"free","category":"environmental","tags":["environment","pfas","multimedia","epa","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Straight-line search radius in meters; default 10000.","type":"integer","minimum":500,"maximum":50000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_pfas_multimedia_nearby","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"paid:locus-pfas-occurrence","canonicalId":"locus.pfas.occurrence","callName":"locus-pfas-occurrence","title":"PFAS occurrence in EPA UCMR 5 by public water system","description":"EPA UCMR 5 PFAS results for an address or explicit PWSIDs. Perfect for: 'PFAS results for this address', 'was this utility tested for PFAS'. Addresses resolve via EPA service-area boundaries (point-in-polygon) with per-boundary provenance and confidence (provider vs machine-modeled); containment is evidence, not proof. Detection and non-detect counts stay distinct; lithium excluded. Entry-point samples, not a tap; no safe/unsafe verdict. Charge-free when out of coverage or unresolved.","tier":"paid","rail":"paid-atomic","category":"environmental","tags":["water","environment","pfas","ucmr5","epa","ehs","read-only","paid","x402","category:environmental"],"endpoint":"https://api.locus.report/api/locus-pfas-occurrence","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"pwsids":{"description":"Public water system IDs from locus_water_systems, e.g. [\"NC0201010\"]. County membership does not prove that a system serves a specific address. When set, address/point inputs are ignored.","minItems":1,"maxItems":10,"type":"array","items":{"type":"string","pattern":"^[A-Z0-9]{4,24}$"}},"address":{"description":"US street address. Resolved to a point and matched against EPA's community water system service-area boundary layer to find the serving system(s), each with boundary provenance and confidence.","type":"string","minLength":5,"maxLength":200},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-pfas-occurrence.json","naming":{"style":"hyphen-paid-route","executableName":"locus-pfas-occurrence","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_place_facts","canonicalId":"locus.place.facts","callName":"locus_place_facts","title":"Pre-sign place facts: one address, five official lanes","description":"ONE-CALL pre-sign place-facts bundle for one address: parcel facts, FEMA flood designation, governing districts, state DOT projects/traffic where wired, and NC property-tax rates where available, each cited with per-component status. Use for a broad pre-sign first look at an address, not a single-topic or prioritization ask; prefer this one call over granular lanes like locus_flood_zone or locus_parcel_lookup, which answer a single question. US addresses geocode through NC AddressNC or national fallback. Facts only, never a verdict, score, forecast, or valuation.","tier":"free","rail":"free","category":"infrastructure","tags":["composite","property","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":200,"description":"Required US street address; geocodes once and fans out to parcel, flood, district, transport, and tax lanes where wired."}},"required":["address"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_place_facts","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-place-facts","canonicalId":"locus.place.facts","callName":"locus-place-facts","tier":"paid","endpoint":"https://api.locus.report/api/locus-place-facts"}]},{"catalogId":"paid:locus-place-facts","canonicalId":"locus.place.facts","callName":"locus-place-facts","title":"Pre-sign place facts: one address, five official lanes","description":"One-call free/paid dual address snapshot (prefer free /tools/call first): parcel, flood, districts, transportation, tax rates where wired. Perfect for 'basic facts about this property'. For pre-sign trend+policy use locus-before-you-sign; for neighbor topology and multi-lane surrounding evidence use locus-surrounding-area-analysis. Facts only, not a verdict. Charge-free when no component returns data.","tier":"paid","rail":"promoted-free-dual","category":"reports","tags":["composite","property","read-only","paid","x402","category:reports"],"endpoint":"https://api.locus.report/api/locus-place-facts","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":200,"description":"Required US street address; geocodes once and fans out to parcel, flood, district, transport, and tax lanes where wired."}},"required":["address"],"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-place-facts.json","naming":{"style":"hyphen-paid-route","executableName":"locus-place-facts","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_place_facts","canonicalId":"locus.place.facts","callName":"locus_place_facts","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"paid:locus-place-report","canonicalId":"locus.place.report","callName":"locus-place-report","title":"Full cited public-record property report","description":"Official-record property context for agents. Accepts street address or ZIP; street address is best after free lane preflight. Returns a structured public-record artifact. After x402 settlement or seller-escrow, locus_parcel_financials may include the assessor owner-of-record name for the same exact parcel (cited, not a contact); canonical storage stays owner-free. Never valuation, screening, forecasts, or safe/unsafe labels. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"reports","tags":["data","search","real-estate","property","property-research","due-diligence","public-records","x402","property-records","parcel-research","address","zoning","flood","property-tax","government","citations","category:reports"],"endpoint":"https://api.locus.report/api/locus-place-report","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":1,"description":"Flexible US location string: full street address preferred for parcel-level reports, e.g. '200 Fayetteville St, Raleigh, NC 27601'."},"zip":{"type":"string","minLength":1,"description":"US ZIP code when a street address is not available, e.g. '27601'."},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"jurisdiction":{"type":"string","enum":["chicago","raleigh"]},"radiusMeters":{"type":"number","exclusiveMinimum":0,"maximum":50000},"lookbackDays":{"type":"integer","exclusiveMinimum":0,"maximum":3650},"records":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"category":{"type":"string","enum":["incident","arrest","court","parcel","rental_registry","code_enforcement_request","code_violation","permit","service_request"]},"title":{"type":"string","minLength":1,"maxLength":500},"occurredAt":{"type":"string"},"distanceMeters":{"type":"number","minimum":0},"distanceBucket":{"type":"string"},"locationPrecision":{"type":"string","enum":["exact","block","area","unknown"]},"status":{"type":"string"},"description":{"type":"string","maxLength":2000},"tags":{"type":"array","items":{"type":"string"}},"categories":{"type":"array","items":{"type":"string"}},"source":{"type":"object","properties":{"sourceName":{"type":"string","minLength":1},"sourceUrl":{"type":"string","format":"uri"},"recordId":{"type":"string"},"recordUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"licenseNote":{"type":"string"}},"required":["sourceName"],"additionalProperties":false}},"required":["id","category","title","locationPrecision","tags","source"],"additionalProperties":false}},"sourceAdapters":{"type":"array","items":{"type":"string","enum":["chicago-crimes","raleigh-permits","raleigh-ask","raleigh-nibrs"]}},"mode":{"type":"string","enum":["reasoning","adapters-only"]},"reportPrefs":{"type":"object","properties":{"goal":{"type":"string","minLength":1,"maxLength":160},"projectType":{"type":"string","minLength":1,"maxLength":160},"decisionStage":{"type":"string","minLength":1,"maxLength":120},"focusAreas":{"maxItems":8,"type":"array","items":{"type":"string","minLength":1,"maxLength":120}},"questions":{"maxItems":3,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}}},"additionalProperties":false,"description":"Reader-selected goal, project, decision stage, focus areas, and questions. Preserved with the cited report as its investigation brief."},"reportType":{"type":"string","enum":["site_feasibility","property_due_diligence","pre_development_analysis"],"description":"Job-first framing for the human report. Changes presentation and priorities, not the underlying cited facts."}},"additionalProperties":false,"description":"Street address or ZIP to analyze. Either address or zip is required; radius defaults to 800 meters.","anyOf":[{"required":["address"]},{"required":["zip"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"id":{"type":"string"},"generatedAt":{"type":"string"},"query":{"type":"object","properties":{"address":{"type":"string"},"zip":{"type":"string"},"radiusMeters":{"type":"number"},"lookbackDays":{"type":"number"},"requestedAt":{"type":"string"},"focus":{"type":"array","items":{"type":"string"}}},"required":["radiusMeters","lookbackDays","requestedAt"],"additionalProperties":false},"summary":{"type":"string"},"recordCounts":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"number"}},"signals":{"type":"array","items":{}},"sections":{"type":"array","items":{}},"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"category":{"type":"string","enum":["incident","arrest","court","parcel","rental_registry","code_enforcement_request","code_violation","permit","service_request"]},"title":{"type":"string","minLength":1,"maxLength":500},"occurredAt":{"type":"string"},"distanceMeters":{"type":"number","minimum":0},"distanceBucket":{"type":"string"},"locationPrecision":{"type":"string","enum":["exact","block","area","unknown"]},"status":{"type":"string"},"description":{"type":"string","maxLength":2000},"tags":{"type":"array","items":{"type":"string"}},"categories":{"type":"array","items":{"type":"string"}},"source":{"type":"object","properties":{"sourceName":{"type":"string","minLength":1},"sourceUrl":{"type":"string","format":"uri"},"recordId":{"type":"string"},"recordUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"licenseNote":{"type":"string"},"biasProfile":{"type":"object","properties":{"measures":{"type":"string","minLength":1,"maxLength":1000},"doesNotMeasure":{"type":"string","minLength":1,"maxLength":1000},"knownBiases":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"string","minLength":1,"maxLength":1000}},"lagDays":{"type":"integer","minimum":0,"maximum":36500}},"required":["measures","doesNotMeasure","knownBiases"],"additionalProperties":false}},"required":["sourceName"],"additionalProperties":false}},"required":["id","category","title","locationPrecision","tags","source"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}},"composeStatus":{"type":"string","enum":["ok","degraded"]},"storage":{"type":"array","items":{"type":"object","properties":{"provider":{"type":"string"},"locator":{"type":"string"},"contentHash":{"type":"string"},"pinned":{"type":"boolean"}},"required":["provider","locator","contentHash"],"additionalProperties":false}},"visual":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"annotated_aerial"},"image":{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"objectKey":{"type":"string"},"mediaType":{"type":"string","const":"image/svg+xml"},"width":{"type":"number","const":960},"height":{"type":"number","const":540},"contentHash":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["provider","objectKey","mediaType","width","height","contentHash"],"additionalProperties":false},"aerial":{"type":"object","properties":{"sourceName":{"type":"string","const":"USGS The National Map - USGSNAIPPlus"},"sourceUrl":{"type":"string","format":"uri"},"serviceUrl":{"type":"string","format":"uri"},"rasterObjectId":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"contributingRasterObjectIds":{"minItems":1,"maxItems":200,"type":"array","items":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"rasterId":{"type":"string"},"acquiredAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"resolutionMeters":{"type":"number","exclusiveMinimum":0},"fetchedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"licenseNote":{"type":"string","const":"Public domain USGS/USDA NAIP orthoimagery"}},"required":["sourceName","sourceUrl","serviceUrl","rasterId","acquiredAt","resolutionMeters","fetchedAt","licenseNote"],"additionalProperties":false},"scope":{"type":"string","const":"parcel"},"parcel":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"sourceRecordId":{"type":"string"},"fetchedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"matchedSourceId":{"type":"string"},"boundaryKind":{"type":"string","const":"tax_parcel_non_survey"},"geometryHash":{"type":"string","pattern":"^[a-f0-9]{64}$"},"vertexCount":{"type":"integer","minimum":4,"maximum":320}},"required":["sourceName","sourceUrl","fetchedAt","matchedSourceId","boundaryKind","geometryHash","vertexCount"],"additionalProperties":false},"annotations":{"minItems":1,"maxItems":5,"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["parcel_outline","flood_context","wetland_context"]},"label":{"type":"string"},"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"sourceRecordId":{"type":"string"}},"required":["kind","label","sourceName","sourceUrl","fetchedAt"],"additionalProperties":false}},"caveats":{"type":"array","prefixItems":[{"type":"string","const":"Tax parcel outline - not a survey or legal boundary."},{"type":"string","const":"Aerial imagery is dated location context, not proof of current property condition."}]}},"required":["kind","image","aerial","parcel","annotations","caveats"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"annotated_aerial"},"image":{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"objectKey":{"type":"string"},"mediaType":{"type":"string","const":"image/svg+xml"},"width":{"type":"number","const":960},"height":{"type":"number","const":540},"contentHash":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["provider","objectKey","mediaType","width","height","contentHash"],"additionalProperties":false},"aerial":{"type":"object","properties":{"sourceName":{"type":"string","const":"USGS The National Map - USGSNAIPPlus"},"sourceUrl":{"type":"string","format":"uri"},"serviceUrl":{"type":"string","format":"uri"},"rasterObjectId":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"contributingRasterObjectIds":{"minItems":1,"maxItems":200,"type":"array","items":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"rasterId":{"type":"string"},"acquiredAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"resolutionMeters":{"type":"number","exclusiveMinimum":0},"fetchedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"licenseNote":{"type":"string","const":"Public domain USGS/USDA NAIP orthoimagery"}},"required":["sourceName","sourceUrl","serviceUrl","rasterId","acquiredAt","resolutionMeters","fetchedAt","licenseNote"],"additionalProperties":false},"scope":{"type":"string","const":"analysis_area"},"analysisArea":{"type":"object","properties":{"centerSource":{"type":"string","enum":["parcel_centroid","server_resolved_point","place_facts_point","approximate_geocode"]},"centerPrecision":{"type":"string","enum":["parcel","address","area"]},"centerSourceRef":{"type":"string","enum":["paid_access_preflight","locus_parcel_financials","locus_place_facts","locus_place_facts.parcel"]},"centerRecordedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"radiusMeters":{"type":"number","exclusiveMinimum":0,"maximum":1000},"requestedRadiusMeters":{"type":"number","exclusiveMinimum":0,"maximum":50000},"boundaryKind":{"type":"string","const":"analysis_radius_non_parcel"}},"required":["centerSource","centerPrecision","centerSourceRef","centerRecordedAt","radiusMeters","requestedRadiusMeters","boundaryKind"],"additionalProperties":false},"annotations":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["flood_context","wetland_context"]},"label":{"type":"string"},"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"sourceRecordId":{"type":"string"}},"required":["kind","label","sourceName","sourceUrl","fetchedAt"],"additionalProperties":false}},"caveats":{"type":"array","prefixItems":[{"type":"string","const":"Analysis-area ring - not a parcel or survey boundary."},{"type":"string","const":"Aerial imagery is dated location context, not proof of current property condition."}]}},"required":["kind","image","aerial","scope","analysisArea","annotations","caveats"],"additionalProperties":false}]},"visualStatus":{"oneOf":[{"type":"object","properties":{"status":{"type":"string","const":"available"}},"required":["status"],"additionalProperties":false},{"type":"object","properties":{"status":{"type":"string","const":"unavailable"},"reason":{"type":"string","enum":["parcel_unavailable","parcel_geometry_unavailable","analysis_point_unavailable","imagery_unavailable","artifact_storage_unavailable"]}},"required":["status","reason"],"additionalProperties":false}]},"liveAerialView":{"type":"object","properties":{"provider":{"type":"string","const":"google_aerial_view"},"videoId":{"type":"string","minLength":1,"maxLength":512},"state":{"type":"string","enum":["ACTIVE","PROCESSING"]},"captureDate":{"type":"object","properties":{"year":{"type":"integer","minimum":1,"maximum":9999},"month":{"type":"integer","minimum":1,"maximum":12},"day":{"type":"integer","minimum":1,"maximum":31}},"required":["year"],"additionalProperties":false},"durationSeconds":{"type":"number","minimum":0},"checkedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"displayMode":{"type":"string","const":"live_only"},"playbackPolicy":{"type":"string","const":"lookup_per_view_no_storage"},"attribution":{"type":"string","const":"Google Maps"},"policyUrl":{"type":"string","const":"https://developers.google.com/maps/documentation/aerial-view/policies"},"termsUrl":{"type":"string","format":"uri"},"privacyUrl":{"type":"string","format":"uri"}},"required":["provider","videoId","state","checkedAt","displayMode","playbackPolicy","attribution","policyUrl","termsUrl","privacyUrl"],"additionalProperties":false},"supportingContext":{"type":"object","properties":{"schemaVersion":{"type":"string","const":"1"},"researchedAt":{"type":"string"},"facts":{"type":"array","items":{"oneOf":[{"type":"object","properties":{"id":{"type":"string"},"state":{"type":"string","enum":["candidate","verified","conflict","rejected"]},"source":{"type":"object","properties":{"authority":{"type":"string","enum":["official","secondary","vendor"]},"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"},"snapshotHash":{"type":"string"}},"required":["authority","sourceName","sourceUrl","fetchedAt"],"additionalProperties":false},"verifierVersion":{"type":"string"},"supersedesFactIds":{"type":"array","items":{"type":"string"}},"conflictsWithFactIds":{"type":"array","items":{"type":"string"}},"kind":{"type":"string","const":"property_physical_comparison"},"subject":{"type":"object","properties":{"addressLabel":{"type":"string"},"grossAreaSqft":{"type":"number","exclusiveMinimum":0},"yearBuilt":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"acreage":{"type":"number","exclusiveMinimum":0},"source":{"type":"object","properties":{"authority":{"type":"string","enum":["official","secondary","vendor"]},"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"},"snapshotHash":{"type":"string"}},"required":["authority","sourceName","sourceUrl","fetchedAt"],"additionalProperties":false}},"required":["addressLabel","source"],"additionalProperties":false},"nearby":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"addressLabel":{"type":"string"},"recordId":{"type":"string"},"saleDate":{"type":"string"},"salePriceUsd":{"type":"number","minimum":0},"grossAreaSqft":{"type":"number","exclusiveMinimum":0},"yearBuilt":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"acreage":{"type":"number","exclusiveMinimum":0},"source":{"type":"object","properties":{"authority":{"type":"string","enum":["official","secondary","vendor"]},"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"},"snapshotHash":{"type":"string"}},"required":["authority","sourceName","sourceUrl","fetchedAt"],"additionalProperties":false}},"required":["addressLabel","source"],"additionalProperties":false}}},"required":["id","state","source","verifierVersion","kind","subject","nearby"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"state":{"type":"string","enum":["candidate","verified","conflict","rejected"]},"source":{"type":"object","properties":{"authority":{"type":"string","enum":["official","secondary","vendor"]},"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"},"snapshotHash":{"type":"string"}},"required":["authority","sourceName","sourceUrl","fetchedAt"],"additionalProperties":false},"verifierVersion":{"type":"string"},"supersedesFactIds":{"type":"array","items":{"type":"string"}},"conflictsWithFactIds":{"type":"array","items":{"type":"string"}},"kind":{"type":"string","const":"property_sale_market_timeline"},"addressLabel":{"type":"string"},"recordId":{"type":"string"},"listedDate":{"type":"string"},"listPriceUsd":{"type":"number","minimum":0},"pendingDate":{"type":"string"},"saleDate":{"type":"string"},"salePriceUsd":{"type":"number","minimum":0},"mlsId":{"type":"string"},"marketSources":{"minItems":2,"maxItems":4,"type":"array","items":{"type":"object","properties":{"authority":{"type":"string","enum":["official","secondary","vendor"]},"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"},"snapshotHash":{"type":"string"}},"required":["authority","sourceName","sourceUrl","fetchedAt"],"additionalProperties":false}}},"required":["id","state","source","verifierVersion","kind","addressLabel","listedDate","listPriceUsd","saleDate","salePriceUsd","marketSources"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"state":{"type":"string","enum":["candidate","verified","conflict","rejected"]},"source":{"type":"object","properties":{"authority":{"type":"string","enum":["official","secondary","vendor"]},"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"},"snapshotHash":{"type":"string"}},"required":["authority","sourceName","sourceUrl","fetchedAt"],"additionalProperties":false},"verifierVersion":{"type":"string"},"supersedesFactIds":{"type":"array","items":{"type":"string"}},"conflictsWithFactIds":{"type":"array","items":{"type":"string"}},"kind":{"type":"string","const":"transportation_project_status"},"projectId":{"type":"string"},"edition":{"type":"string"},"currentStatus":{"type":"string"},"scopeMiles":{"type":"number","exclusiveMinimum":0},"totalEstimateUsd":{"type":"number","minimum":0},"earlierSchedule":{"type":"object","properties":{"rightOfWayYear":{"type":"string"},"constructionYear":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"}},"required":["sourceUrl"],"additionalProperties":false}},"required":["id","state","source","verifierVersion","kind","projectId","currentStatus"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"state":{"type":"string","enum":["candidate","verified","conflict","rejected"]},"source":{"type":"object","properties":{"authority":{"type":"string","enum":["official","secondary","vendor"]},"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"locator":{"type":"string"},"snapshotHash":{"type":"string"}},"required":["authority","sourceName","sourceUrl","fetchedAt"],"additionalProperties":false},"verifierVersion":{"type":"string"},"supersedesFactIds":{"type":"array","items":{"type":"string"}},"conflictsWithFactIds":{"type":"array","items":{"type":"string"}},"kind":{"type":"string","const":"development_case_milestone"},"caseId":{"type":"string"},"projectName":{"type":"string"},"parcelCount":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"hearingDates":{"type":"array","items":{"type":"string"}},"continuedTo":{"type":"string"},"roads":{"type":"array","items":{"type":"string"}}},"required":["id","state","source","verifierVersion","kind","caseId","projectName"],"additionalProperties":false}]}},"excluded":{"type":"array","items":{"type":"string"}}},"required":["schemaVersion","researchedAt","facts","excluded"],"additionalProperties":false},"highlights":{"type":"array","items":{}},"queriedAddress":{"type":"string"},"index":{},"access":{},"reportType":{"type":"string"},"reportPrefs":{},"placeFacts":{"type":"array","items":{"type":"object","properties":{"tool":{"type":"string"},"result":{"type":"object","properties":{"ownerOfRecord":{"type":"string","minLength":1,"maxLength":80},"ownerOfRecordCitation":{"type":"object","properties":{"sourceUrl":{"type":"string","minLength":1},"fetchedAt":{"type":"string","minLength":1},"sourceName":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceUrl","fetchedAt"],"additionalProperties":false},"parcel":{"type":"object","properties":{"ownerOfRecord":{"type":"string","minLength":1,"maxLength":80},"ownerOfRecordCitation":{"type":"object","properties":{"sourceUrl":{"type":"string","minLength":1},"fetchedAt":{"type":"string","minLength":1},"sourceName":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceUrl","fetchedAt"],"additionalProperties":false}},"additionalProperties":{}},"summary":{"type":"string"}},"additionalProperties":{}}},"required":["tool","result"],"additionalProperties":{}}}},"required":["id","generatedAt","query","summary","recordCounts","signals","sections","records","caveats"],"additionalProperties":{}},{"type":"object","properties":{"kind":{"type":"string","const":"place_report_coverage_diagnostic"},"place":{"type":"object","properties":{"input":{"type":"string"},"resolved":{"type":"string"},"jurisdictionId":{"type":"string"},"coverageStatus":{"type":"string","enum":["unsupported","discovery_only"]}},"required":["input","coverageStatus"],"additionalProperties":false},"charged":{"type":"boolean","const":false},"message":{"type":"string"},"candidateSources":{"type":"array","items":{"type":"object","properties":{"category":{"type":"string"},"sourceName":{"type":"string"},"sourceUrl":{"type":"string"},"status":{"type":"string"}},"required":["category","sourceName","sourceUrl","status"],"additionalProperties":{}}},"whatWeWouldNeed":{"type":"array","items":{"type":"string"}},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","place","charged","message","candidateSources","whatWeWouldNeed","caveats"],"additionalProperties":{}}],"description":"A `kind`-discriminated union: a cited public-record LocusReport (no kind field; has id/records/caveats) for paid coverage, or `place_report_coverage_diagnostic` for the free pre-charge diagnostic."},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-place-report.json","naming":{"style":"hyphen-paid-route","executableName":"locus-place-report","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"paid:locus-place-report-batch","canonicalId":"locus.place.report.batch","callName":"locus-place-report-batch","title":"Async portfolio property-report batch (3-50 addresses)","description":"Async portfolio place-report job for agents. Preflights 3 to 50 addresses, charges one batch price only when at least one item is supported, then returns a pollable job with per-item report ids. Unsupported items remain free diagnostics. No hidden per-item charges, valuation, screening, forecasts, or safe/unsafe labels. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"reports","tags":["data","search","real-estate","property","property-research","due-diligence","public-records","x402","batch","portfolio","async","property-records","parcel-research","address","citations","category:reports"],"endpoint":"https://api.locus.report/api/locus-place-report-batch","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"addresses":{"minItems":3,"maxItems":50,"type":"array","items":{"type":"string","minLength":5,"maxLength":240},"description":"US street addresses or ZIP/place strings to preflight and process as one settled async job. Intended for portfolio batches; min 3, max 50."},"radiusMeters":{"type":"number","exclusiveMinimum":0,"maximum":50000},"lookbackDays":{"type":"integer","exclusiveMinimum":0,"maximum":3650},"webhookUrl":{"type":"string","maxLength":500,"format":"uri"}},"required":["addresses"],"additionalProperties":false,"description":"One async settled job for 3-50 US addresses. Each item is preflighted before payment; unsupported items stay charge-free diagnostics."},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","oneOf":[{"type":"object","properties":{"kind":{"type":"string","const":"place_report_batch_job"},"jobId":{"type":"string"},"status":{"type":"string","enum":["payment_pending","queued","processing","completed","completed_with_errors","failed"]},"statusUrl":{"type":"string","format":"uri"},"pollAfterSeconds":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"counts":{"type":"object","properties":{"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"chargeable":{"type":"integer","minimum":0,"maximum":9007199254740991},"unsupported":{"type":"integer","minimum":0,"maximum":9007199254740991},"queued":{"type":"integer","minimum":0,"maximum":9007199254740991},"completed":{"type":"integer","minimum":0,"maximum":9007199254740991},"failed":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["total","chargeable","unsupported","queued"],"additionalProperties":false},"items":{"type":"array","items":{"type":"object","properties":{"idx":{"type":"integer","minimum":0,"maximum":9007199254740991},"address":{"type":"string"},"status":{"type":"string","enum":["payment_pending","unsupported","queued","processing","completed","failed"]},"reportId":{"type":"string"},"reportUrl":{"type":"string","format":"uri"},"errorCode":{"type":"string"},"diagnostic":{}},"required":["idx","address","status"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","jobId","status","statusUrl","pollAfterSeconds","counts","caveats"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"place_report_batch_diagnostic"},"charged":{"type":"boolean","const":false},"status":{"type":"string","const":"no_chargeable_items"},"counts":{"type":"object","properties":{"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"chargeable":{"type":"integer","minimum":0,"maximum":9007199254740991},"unsupported":{"type":"integer","minimum":0,"maximum":9007199254740991},"queued":{"type":"integer","minimum":0,"maximum":9007199254740991},"completed":{"type":"integer","minimum":0,"maximum":9007199254740991},"failed":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["total","chargeable","unsupported","queued"],"additionalProperties":false},"items":{"type":"array","items":{"type":"object","properties":{"idx":{"type":"integer","minimum":0,"maximum":9007199254740991},"address":{"type":"string"},"status":{"type":"string","enum":["payment_pending","unsupported","queued","processing","completed","failed"]},"reportId":{"type":"string"},"reportUrl":{"type":"string","format":"uri"},"errorCode":{"type":"string"},"diagnostic":{}},"required":["idx","address","status"],"additionalProperties":false}},"message":{"type":"string"},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","charged","status","counts","items","message","caveats"],"additionalProperties":false}],"description":"A `kind`-discriminated union: `place_report_batch_job` for a settled async job, or `place_report_batch_diagnostic` when no item is chargeable."},"priceUsdc":"0.25","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-place-report-batch.json","naming":{"style":"hyphen-paid-route","executableName":"locus-place-report-batch","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"paid:locus-plan-research","canonicalId":"locus.plan.research","callName":"locus-plan-research","title":"Research-plan tool selector","description":"LLM-assisted research planner for one goal. Selects and ranks only from the closed Locus catalog; Locus server joins rail, price, scope, and availability. Returns a deterministic fallback and charged:false on no key, model failure, or too few validated selections. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"reports","tags":["planning","research","workflow","tool-selection","reports","x402","category:reports"],"endpoint":"https://api.locus.report/api/locus-plan-research","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"goal":{"description":"Natural-language research goal. The model selects and ranks only from the closed Locus catalog; it does not author coverage, cost, or availability claims. When omitted, the server synthesizes a goal from intent + place/address.","type":"string","minLength":10,"maxLength":500},"intent":{"description":"Short research intent (e.g. 'homebuyer', 'renter due diligence', 'small business siting', 'community organizer'). Used to synthesize a goal when `goal` is omitted.","type":"string","minLength":1,"maxLength":120},"address":{"description":"Optional street address. Used for deterministic coverage-profile availability joins and to supply the place when `place` is omitted.","type":"string","minLength":1,"maxLength":200},"place":{"description":"Optional ZIP, city, county, or street address used only for deterministic coverage-profile availability joins.","type":"string","minLength":1,"maxLength":200},"maxSuggestions":{"description":"Maximum number of selected tools to return. Defaults to 10 and caps at 15.","default":10,"type":"integer","minimum":1,"maximum":15}},"additionalProperties":false,"description":"Flat JSON body: { goal, place?, maxSuggestions? }. The model selects and orders only from the closed Locus catalog; price, rail, scope, and availability are server-joined."},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"kind":{"type":"string","const":"plan_research"},"goal":{"type":"string"},"place":{"type":"string"},"charged":{"type":"boolean"},"suggestions":{"type":"array","items":{"type":"object","properties":{"tool":{"type":"string"},"why":{"type":"string"},"title":{"type":"string"},"rail":{"type":"string","enum":["free","paid"]},"priceUsdc":{"type":"string"},"scope":{"type":"string"},"availableForPlace":{"anyOf":[{"type":"boolean"},{"type":"string","const":"varies"}]}},"required":["tool","why","title","rail","scope"],"additionalProperties":false}},"deterministicFallback":{"type":"object","properties":{},"additionalProperties":{}},"diagnostics":{"type":"object","properties":{"modelUsed":{"type":"string"},"modelAttempted":{"type":"boolean"},"modelSucceeded":{"type":"boolean"},"charged":{"type":"boolean"},"reason":{"type":"string"},"hallucinatedDropped":{"type":"integer","minimum":0,"maximum":9007199254740991},"validatedSuggestions":{"type":"integer","minimum":0,"maximum":9007199254740991},"deterministicFallbackOnly":{"type":"boolean"}},"required":["modelAttempted","modelSucceeded","charged","hallucinatedDropped","validatedSuggestions"],"additionalProperties":{}},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","goal","charged","suggestions","deterministicFallback","diagnostics","caveats"],"additionalProperties":{},"description":"Closed-catalog research plan: validated model-selected tools plus deterministic fallback. charged:false when OpenRouter is unkeyed, the model fails, or fewer than three validated suggestions survive."},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-plan-research.json","naming":{"style":"hyphen-paid-route","executableName":"locus-plan-research","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_policy_sources","canonicalId":"locus.policy.sources","callName":"locus_policy_sources","title":"Policy sources","description":"List official policy sources for a place: state/county/city legislatures, Legistar, code libraries, resolved legal geographies, live legislative fallback status, and ingested artifact count. Use before a paid policy brief, or to enumerate which legislatures and code libraries govern a place. Source listing only, no legal advice, scores, or briefs.","tier":"free","rail":"free","category":"policy","tags":["policy","legislation","sources","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"place":{"type":"string","minLength":1,"description":"Required ZIP, address, city, or county to resolve to state/county/city legal geographies."}},"required":["place"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_policy_sources","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"paid:locus-power-water-evidence-pack","canonicalId":"locus.power.water.evidence.pack","callName":"locus-power-water-evidence-pack","title":"Power, water and broadband evidence pack","description":"Pre-development evidence for one US address or point: HIFLD mapped transmission lines, EIA-reported power plants, county public-water-system context, and the official FCC broadband map. Use for a site power/water evidence pass before a utility call. Never grid capacity, substation location, interconnection, service availability, timing, cost, or performance claims. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"infrastructure","tags":["power","transmission","electricity","water","broadband","infrastructure","site-feasibility","pre-development","public-records","x402","category:infrastructure"],"endpoint":"https://api.locus.report/api/locus-power-water-evidence-pack","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address; geocoded to a point. Either address or latitude+longitude is required.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude for point mode.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude for point mode.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional proximity radius in meters; default 10,000, clamped to 1,000-25,000.","type":"integer","minimum":1000,"maximum":25000}},"additionalProperties":false,"description":"US street address or latitude+longitude. Returns HIFLD transmission-line and EIA reported-plant proximity, county SDWIS public-water-system context, and FCC broadband-map context. Never capacity, interconnection, service-availability, or substation-location claims.","anyOf":[{"required":["address"]},{"required":["latitude","longitude"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"power_water_evidence_pack"},"charged":{"type":"boolean","const":true},"point":{"type":"object","properties":{"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["latitude","longitude"],"additionalProperties":false},"radiusMeters":{"type":"number"},"electricityEvidence":{"type":"object","properties":{},"additionalProperties":{}},"waterSystemContext":{"type":"object","properties":{},"additionalProperties":{}},"broadbandContext":{"type":"object","properties":{},"additionalProperties":{}},"localServiceSourceGaps":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"provenance":{"type":"object","properties":{},"additionalProperties":{}},"caveats":{"type":"array","items":{"type":"string"}},"verifyNext":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}}},"required":["kind","charged","point","radiusMeters","electricityEvidence","waterSystemContext","broadbandContext","localServiceSourceGaps","provenance","caveats","verifyNext"],"additionalProperties":{}},{"type":"object","properties":{"kind":{"type":"string","const":"power_water_evidence_pack_diagnostic"},"charged":{"type":"boolean","const":false},"reason":{"type":"string","enum":["address_unresolved","electricity_sources_unavailable"]},"point":{"type":"object","properties":{"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["latitude","longitude"],"additionalProperties":false},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","charged","reason","caveats"],"additionalProperties":{}}]},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-power-water-evidence-pack.json","naming":{"style":"hyphen-paid-route","executableName":"locus-power-water-evidence-pack","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_predevelopment_feasibility","canonicalId":"locus.predevelopment.feasibility","callName":"locus_predevelopment_feasibility","title":"Pre-development feasibility source map","description":"Build a developer-grade pre-development diligence source map for a parcel/place: ordered Locus tools plus official-source query packs for parcel/zoning, active entitlements, Legistar/council policy, water/sewer availability, DOT/TIP/access, stormwater/buffers/environmental constraints, school/public-facility capacity, fees/assessments, and permit/transfer velocity. Prompt-mode: it does not execute web searches, claim a project is feasible, or provide legal/engineering/survey/valuation/permitting advice. Use when a real feasibility study asks what public-record checks are missing before LOI, rezoning, subdivision, or site-plan diligence.","tier":"free","rail":"free","category":"parcels","tags":["development","feasibility","policy","legislation","zoning","utilities","transportation","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address; resolves the governing jurisdiction when provided.","type":"string","minLength":5,"maxLength":200},"place":{"description":"Optional place/ZIP/jurisdiction label when a street address is not available.","type":"string","minLength":3,"maxLength":160},"state":{"description":"Optional two-letter state code; useful with county when no address is available.","type":"string","minLength":2,"maxLength":2},"county":{"description":"Optional county name; useful with state when no address is available.","type":"string","minLength":3,"maxLength":80},"municipality":{"description":"Optional city/town name to target municipal planning, council, and utility sources.","type":"string","minLength":2,"maxLength":80},"projectType":{"description":"Optional project concept, e.g. multifamily, mixed-use, industrial, subdivision, data center.","type":"string","minLength":3,"maxLength":120}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_predevelopment_feasibility","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_program_windows","canonicalId":"locus.program.windows","callName":"locus_program_windows","title":"Cited owner-program dates within a bounded window","description":"Filter exact dates printed in matching owner-program registry rows. Returns upcoming dates within a caller-selected 1-to-400-day window and dates that passed in the prior 60 days. The tool does not infer or calculate program dates beyond deterministic window filtering.","tier":"free","rail":"free","category":"infrastructure","tags":["owner-programs","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address or ZIP used to resolve state, county, and city program rows.","type":"string","minLength":1,"maxLength":200},"place":{"description":"US city, county, state, ZIP, or address used to resolve program rows.","type":"string","minLength":1,"maxLength":200},"withinDays":{"default":120,"description":"Days after asOf to include; default 120, maximum 400.","type":"integer","minimum":1,"maximum":400},"asOf":{"description":"Optional ISO date YYYY-MM-DD; defaults to today's UTC date.","type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"}},"required":["withinDays"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_program_windows","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-program-windows","canonicalId":"locus.program.windows","callName":"locus-program-windows","tier":"paid","endpoint":"https://api.locus.report/api/locus-program-windows"}]},{"catalogId":"paid:locus-program-windows","canonicalId":"locus.program.windows","callName":"locus-program-windows","title":"Cited owner-program dates within a bounded window","description":"Exact dated owner-program windows for a US place. Perfect for: 'program deadlines in the next 180 days', 'which property program dates recently passed'. Deterministically filters exact ISO dates printed in cited registry rows; it does not infer dates from narrative rules. Charge-free when no upcoming or recently passed item returns.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["owner-programs","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-program-windows","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address or ZIP used to resolve state, county, and city program rows.","type":"string","minLength":1,"maxLength":200},"place":{"description":"US city, county, state, ZIP, or address used to resolve program rows.","type":"string","minLength":1,"maxLength":200},"withinDays":{"default":120,"description":"Days after asOf to include; default 120, maximum 400.","type":"integer","minimum":1,"maximum":400},"asOf":{"description":"Optional ISO date YYYY-MM-DD; defaults to today's UTC date.","type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"}},"required":["withinDays"],"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-program-windows.json","naming":{"style":"hyphen-paid-route","executableName":"locus-program-windows","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_program_windows","canonicalId":"locus.program.windows","callName":"locus_program_windows","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"paid:locus-property-flyer","canonicalId":"locus.property.flyer","callName":"locus-property-flyer","title":"Location-aware property flyer","description":"Creates a 4:5 property shareable with evidence-backed facts, location-aware design, and a top-right QR to its full PDF report. With no licensed subject photo, Locus builds an aerial hero and draws an official parcel outline when available. The model supplies only the decorative skin; Locus renders the hero, QR, and exact text without fetching the handoff URL. Never valuation, ranking, screening, or safe/unsafe claims. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"marketing","tags":["data","search","real-estate","property","property-research","due-diligence","public-records","x402","property-marketing","flyer","image-generation","social-shareable","replicate","location-research","category:marketing"],"endpoint":"https://api.locus.report/api/locus-property-flyer","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":240,"pattern":"^(?:(?:\\d{1,8}[A-Za-z]?(?:[-/]\\d{1,8}[A-Za-z]?)?)\\s+[A-Za-z0-9][A-Za-z0-9 .,'#&()/-]*|(?:lot|parcel|tract|unit)\\s+[A-Za-z0-9-]+(?:\\s+[A-Za-z0-9][A-Za-z0-9 .,'#&()/-]*)?),\\s*[A-Za-z][A-Za-z .'-]{1,79},\\s*[A-Z]{2}(?:\\s+\\d{5}(?:-\\d{4})?)?$","description":"Exact US street address or identified lot/parcel used for location research and the flyer subject."},"headline":{"default":"PROPERTY OVERVIEW","type":"string","enum":["PROPERTY OVERVIEW","PROPERTY HIGHLIGHTS","PROPERTY CONTEXT","WATERFRONT PROPERTY OVERVIEW","LAND OVERVIEW"]},"subjectEvidence":{"description":"Optional caller attestation for the displayed subject identity. Address-only requests may omit it; Locus attaches official parcel provenance when available.","type":"object","properties":{"authority":{"type":"string","const":"seller_attested","description":"The requester attests this marketing fact. A supplied public-record link remains caller evidence, not independent Locus verification."},"sourceName":{"type":"string","minLength":2,"maxLength":120},"sourceUrl":{"type":"string","maxLength":2048,"format":"uri"},"recordId":{"type":"string","minLength":1,"maxLength":160},"observedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$","description":"Timestamp when the official record was fetched or the seller assertion was made."}},"required":["authority","sourceName","observedAt"],"additionalProperties":false},"reportHandoff":{"description":"Optional flyer-specific PDF handoff. When omitted, the flyer renders without a report QR or report CTA.","type":"object","properties":{"pdfUrl":{"type":"string","maxLength":2048,"pattern":"^https:\\/\\/[^/?#]+\\/api\\/reports\\/[A-Za-z0-9_-]{8,160}\\/pdf\\?proof=share_[A-Za-z0-9_-]{43}$","description":"Proof-gated PDF URL produced by a property-update job. Before payment, the server requires its exact origin to appear in LOCUS_PROPERTY_FLYER_HANDOFF_ORIGINS and verifies the capability, PDF-ready state, expiry, and subject against D1."},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$","description":"Expiry of the proof-gated PDF link, shown beside the QR as useful availability metadata."}},"required":["pdfUrl","expiresAt"],"additionalProperties":false},"cta":{"default":"OPEN THE FULL PROPERTY REPORT","type":"string","enum":["OPEN THE FULL PROPERTY REPORT","REVIEW THE PROPERTY REPORT","SCAN FOR THE FULL PROPERTY REPORT"]},"features":{"default":[],"description":"Optional seller-attested feature copy. When omitted, Locus derives up to three bounded facts from official parcel/aerial results and omits unavailable slots.","maxItems":10,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":3,"maxLength":88,"description":"One concise, factual property benefit or condition. Describe the property only; no audiences, communities, demographics, predictions, rankings, or safe/unsafe claims."},"evidence":{"type":"object","properties":{"authority":{"type":"string","const":"seller_attested","description":"The requester attests this marketing fact. A supplied public-record link remains caller evidence, not independent Locus verification."},"sourceName":{"type":"string","minLength":2,"maxLength":120},"sourceUrl":{"type":"string","maxLength":2048,"format":"uri"},"recordId":{"type":"string","minLength":1,"maxLength":160},"observedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$","description":"Timestamp when the official record was fetched or the seller assertion was made."}},"required":["authority","sourceName","observedAt"],"additionalProperties":false}},"required":["text","evidence"],"additionalProperties":false}},"propertyImage":{"description":"Optional licensed subject image. When omitted, Locus generates the hero itself: an upscaled public aerial with the official parcel outline when the address resolves to a discrete parcel, or a tight clean crop otherwise.","type":"object","properties":{"role":{"type":"string","const":"subject_property_media","description":"Declares that this is raw subject-property media, never a finished flyer, poster, listing screenshot, or style reference."},"url":{"type":"string","maxLength":2048,"format":"uri","description":"HTTPS URL for the licensed subject-property image. It is composited unchanged after generation and is never sent through the image model."},"sourceName":{"type":"string","minLength":2,"maxLength":120},"kind":{"type":"string","enum":["licensed_property_photo","locus_report_visual"]},"rightsConfirmed":{"type":"boolean","const":true,"description":"Required caller attestation that Locus may render this image into the paid flyer."},"rightsBasis":{"type":"string","enum":["owned_by_requester","licensed_for_marketing","public_domain","locus_generated"]},"rightsHolder":{"type":"string","minLength":2,"maxLength":160},"permittedUse":{"type":"string","const":"commercial_marketing"},"attestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"privacyReviewed":{"type":"boolean","const":true,"description":"Requester confirms the image was reviewed for faces, license plates, and other unnecessary personal information."}},"required":["role","url","sourceName","kind","rightsConfirmed","rightsBasis","rightsHolder","permittedUse","attestedAt","privacyReviewed"],"additionalProperties":false},"brand":{"default":{"primaryColor":"#081F35","accentColor":"#D8B25C","highlightColor":"#79D7D0"},"type":"object","properties":{"primaryColor":{"default":"#081F35","type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"accentColor":{"default":"#D8B25C","type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"highlightColor":{"default":"#79D7D0","type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"logo":{"description":"Optional caller-authorized raster logo that replaces the visible Locus wordmark.","type":"object","properties":{"role":{"type":"string","const":"brand_logo","description":"Declares a raster brand mark that replaces visible Locus branding in the requested flyer or video."},"url":{"type":"string","maxLength":2048,"pattern":"^https:\\/\\/","description":"HTTPS URL for a caller-authorized PNG, JPEG, or WebP logo. The API fetches and embeds it; renderers never fetch this URL."},"sourceName":{"type":"string","minLength":2,"maxLength":120},"rightsConfirmed":{"type":"boolean","const":true},"rightsBasis":{"type":"string","enum":["owned_by_requester","licensed_for_marketing","public_domain"]},"rightsHolder":{"type":"string","minLength":2,"maxLength":160},"permittedUse":{"type":"string","const":"commercial_marketing"},"attestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"privacyReviewed":{"type":"boolean","const":true,"description":"Requester confirms the logo contains no unnecessary personal information."}},"required":["role","url","sourceName","rightsConfirmed","rightsBasis","rightsHolder","permittedUse","attestedAt","privacyReviewed"],"additionalProperties":false}},"required":["primaryColor","accentColor","highlightColor"],"additionalProperties":false},"style":{"default":"local_editorial","type":"string","enum":["local_editorial","coastal","land","luxury","modern"]},"creativeBrief":{"description":"Optional design direction and grounded-fact emphasis only. It cannot add, alter, or override factual claims and is reduced to a closed token set before the model prompt.","type":"string","minLength":1,"maxLength":500,"pattern":"^[^\\u0000-\\u001F\\u007F]*$"}},"required":["address","headline","cta","features","brand","style"],"additionalProperties":false,"description":"One exact property address, a proof-gated PDF handoff, exact shareable copy, and a provenance ledger for every displayed feature. A licensed subject-image URL is optional: when omitted, Locus generates the hero aerial itself."},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"property_flyer"},"flyerId":{"type":"string"},"generatedAt":{"type":"string"},"expiresAt":{"type":"string"},"address":{"type":"string"},"imageUrl":{"type":"string","format":"uri"},"width":{"type":"number","const":1600},"height":{"type":"number","const":2000},"mediaType":{"type":"string","const":"image/png"},"model":{"type":"string","const":"google/nano-banana-pro"},"prompt":{"type":"string"},"contentHash":{"type":"string","pattern":"^[a-f0-9]{64}$"},"composition":{"type":"object","properties":{"designSystemVersion":{"type":"string","enum":["editorial-evidence-v2","editorial-evidence-v3","editorial-evidence-v4"]},"generatedDesignSkin":{"type":"boolean"},"designSkinPromptConstrained":{"type":"boolean","const":true},"designSkinComposited":{"type":"boolean"},"designSkinHash":{"type":"string","pattern":"^[a-f0-9]{64}$"},"heroSource":{"type":"string","enum":["caller","locus_generated"]},"propertyImagePreserved":{"type":"boolean"},"heroUpscaled":{"type":"boolean"},"exactCopyRenderedDeterministically":{"type":"boolean","const":true},"callerLogoComposited":{"type":"boolean"},"creativeBriefConstrained":{"type":"boolean","const":true},"creativeBriefApplied":{"type":"boolean"},"reportQrRendered":{"type":"boolean"}},"required":["designSystemVersion","generatedDesignSkin","designSkinPromptConstrained","designSkinComposited","designSkinHash","heroSource","propertyImagePreserved","heroUpscaled","exactCopyRenderedDeterministically","callerLogoComposited","creativeBriefConstrained","creativeBriefApplied"],"additionalProperties":false},"subjectEvidence":{"anyOf":[{"type":"object","properties":{"authority":{"type":"string","const":"seller_attested","description":"The requester attests this marketing fact. A supplied public-record link remains caller evidence, not independent Locus verification."},"sourceName":{"type":"string","minLength":2,"maxLength":120},"sourceUrl":{"type":"string","maxLength":2048,"format":"uri"},"recordId":{"type":"string","minLength":1,"maxLength":160},"observedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$","description":"Timestamp when the official record was fetched or the seller assertion was made."}},"required":["authority","sourceName","observedAt"],"additionalProperties":false},{"type":"object","properties":{"authority":{"type":"string","const":"locus_official"},"sourceName":{"type":"string","minLength":2,"maxLength":120},"sourceUrl":{"type":"string","maxLength":2048,"format":"uri"},"recordId":{"type":"string","minLength":1,"maxLength":160},"observedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["authority","sourceName","observedAt"],"additionalProperties":false}]},"priceEvidence":{"anyOf":[{"type":"object","properties":{"authority":{"type":"string","const":"seller_attested","description":"The requester attests this marketing fact. A supplied public-record link remains caller evidence, not independent Locus verification."},"sourceName":{"type":"string","minLength":2,"maxLength":120},"sourceUrl":{"type":"string","maxLength":2048,"format":"uri"},"recordId":{"type":"string","minLength":1,"maxLength":160},"observedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$","description":"Timestamp when the official record was fetched or the seller assertion was made."}},"required":["authority","sourceName","observedAt"],"additionalProperties":false},{"type":"object","properties":{"authority":{"type":"string","const":"locus_official"},"sourceName":{"type":"string","minLength":2,"maxLength":120},"sourceUrl":{"type":"string","maxLength":2048,"format":"uri"},"recordId":{"type":"string","minLength":1,"maxLength":160},"observedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["authority","sourceName","observedAt"],"additionalProperties":false}]},"reportHandoff":{"type":"object","properties":{"pdfUrl":{"type":"string","format":"uri"},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["pdfUrl","expiresAt"],"additionalProperties":false},"propertyImageEvidence":{"type":"object","properties":{"role":{"type":"string","const":"subject_property_media"},"sourceName":{"type":"string"},"kind":{"type":"string","enum":["licensed_property_photo","locus_report_visual"]},"rightsConfirmed":{"type":"boolean","const":true},"rightsBasis":{"type":"string","enum":["owned_by_requester","licensed_for_marketing","public_domain","locus_generated"]},"rightsHolder":{"type":"string"},"permittedUse":{"type":"string","const":"commercial_marketing"},"attestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"privacyReviewed":{"type":"boolean","const":true}},"required":["role","sourceName","kind","rightsConfirmed","rightsBasis","rightsHolder","permittedUse","attestedAt","privacyReviewed"],"additionalProperties":false},"brandLogoEvidence":{"type":"object","properties":{"role":{"type":"string","const":"brand_logo","description":"Declares a raster brand mark that replaces visible Locus branding in the requested flyer or video."},"sourceName":{"type":"string","minLength":2,"maxLength":120},"rightsConfirmed":{"type":"boolean","const":true},"rightsBasis":{"type":"string","enum":["owned_by_requester","licensed_for_marketing","public_domain"]},"rightsHolder":{"type":"string","minLength":2,"maxLength":160},"permittedUse":{"type":"string","const":"commercial_marketing"},"attestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"privacyReviewed":{"type":"boolean","const":true,"description":"Requester confirms the logo contains no unnecessary personal information."},"contentHash":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["role","sourceName","rightsConfirmed","rightsBasis","rightsHolder","permittedUse","attestedAt","privacyReviewed","contentHash"],"additionalProperties":false},"generatedHero":{"type":"object","properties":{"source":{"type":"string","const":"usda_naip_via_usgs"},"precision":{"type":"string","enum":["parcel","address","area"]},"parcelOutline":{"type":"boolean"},"naipDate":{"type":"string"},"heroUpscaled":{"type":"boolean"},"upscaleModel":{"type":"string","const":"google/upscaler"},"displayEnhanced":{"type":"boolean"}},"required":["source","precision","parcelOutline","heroUpscaled","displayEnhanced"],"additionalProperties":false},"features":{"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":3,"maxLength":88,"description":"One concise, factual property benefit or condition. Describe the property only; no audiences, communities, demographics, predictions, rankings, or safe/unsafe claims."},"evidence":{"anyOf":[{"type":"object","properties":{"authority":{"type":"string","const":"seller_attested","description":"The requester attests this marketing fact. A supplied public-record link remains caller evidence, not independent Locus verification."},"sourceName":{"type":"string","minLength":2,"maxLength":120},"sourceUrl":{"type":"string","maxLength":2048,"format":"uri"},"recordId":{"type":"string","minLength":1,"maxLength":160},"observedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$","description":"Timestamp when the official record was fetched or the seller assertion was made."}},"required":["authority","sourceName","observedAt"],"additionalProperties":false},{"type":"object","properties":{"authority":{"type":"string","const":"locus_official"},"sourceName":{"type":"string","minLength":2,"maxLength":120},"sourceUrl":{"type":"string","maxLength":2048,"format":"uri"},"recordId":{"type":"string","minLength":1,"maxLength":160},"observedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["authority","sourceName","observedAt"],"additionalProperties":false}]}},"required":["text","evidence"],"additionalProperties":false}},"referenceResearch":{"type":"object","properties":{"provider":{"type":"string","enum":["exa","tavily","stableenrich-x402"]},"cached":{"type":"boolean"},"sources":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"url":{"type":"string","format":"uri"}},"required":["title","url"],"additionalProperties":false}},"imageCandidates":{"maxItems":15,"type":"array","items":{"type":"object","properties":{"imageUrl":{"type":"string","format":"uri"},"sourcePageUrl":{"type":"string","format":"uri"},"sourceTitle":{"type":"string"},"usage":{"type":"string","const":"inspection_only_unlicensed"},"licenseStatus":{"type":"string","const":"unknown"}},"required":["imageUrl","sourcePageUrl","sourceTitle","usage","licenseStatus"],"additionalProperties":false}}},"required":["provider","cached","sources","imageCandidates"],"additionalProperties":false},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","flyerId","generatedAt","expiresAt","address","imageUrl","width","height","mediaType","model","prompt","contentHash","composition","features","referenceResearch","caveats"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"property_flyer_diagnostic"},"charged":{"type":"boolean","const":false},"status":{"type":"string","enum":["not_configured","reference_research_unavailable","imagery_unavailable","design_generation_unavailable"]},"message":{"type":"string"},"recommendedAction":{"type":"string","enum":["configure_flyer_runtime","retry_reference_research","repair_reference_research_runtime","supply_property_image_or_retry","separate_property_media_and_style_reference","retry_design_generation"]},"provider":{"type":"string","enum":["exa","tavily","stableenrich-x402"]},"failureCode":{"type":"string","enum":["reference_runtime_not_configured","reference_budget_unavailable","reference_signer_policy_denied","reference_upstream_unavailable","reference_no_results","hero_analysis_point_unavailable","hero_imagery_unavailable","hero_input_role_mismatch","design_model_unavailable"]}},"required":["kind","charged","status","message","recommendedAction"],"additionalProperties":false}],"description":"A temporary 4:5 PNG flyer plus the location-art-direction prompt and source ledger, or a charged:false runtime/research diagnostic."},"priceUsdc":"0.49","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-property-flyer.json","naming":{"style":"hyphen-paid-route","executableName":"locus-property-flyer","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"paid:locus-property-tax","canonicalId":"locus.property.tax","callName":"locus-property-tax","title":"Residential property-tax record (assessed value, annual tax, history)","description":"Verified residential US property record for one street address: assessed value, actual annual property tax, 5yr tax history, effective rate, deed/transfer history, and an owner-occupied (homestead-proxy) signal. Sourced from RentCast (county assessor + recorder records); not an official bill or valuation; never owner names/mailing. Commercial/uncovered addresses return a free charge-free diagnostic. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"economics","tags":["taxes","property","residential","real-estate","public-records","property-tax","assessed-value","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-property-tax","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":200,"description":"US RESIDENTIAL street address. Returns RentCast assessed value + actual annual property tax + tax history + effective rate."}},"required":["address"],"additionalProperties":false,"description":"US RESIDENTIAL street address. Returns RentCast assessed value + actual annual property tax + tax history + effective rate + deed/transfer history + owner-occupied signal; commercial/uncovered addresses return a free charge-suppressed diagnostic."},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"property_tax"},"source":{"type":"string","const":"RentCast"},"situsAddress":{"type":"string"},"jurisdiction":{"type":"object","properties":{"county":{"type":"string"},"state":{"type":"string"}},"additionalProperties":false},"taxYear":{"type":"number"},"assessedValueUsd":{"type":"number"},"annualTaxUsd":{"type":"number"},"effectiveRatePct":{"type":"number"},"taxHistory":{"type":"array","items":{"type":"object","properties":{"year":{"type":"number"},"assessedValueUsd":{"type":"number"},"annualTaxUsd":{"type":"number"}},"required":["year"],"additionalProperties":false}},"property":{"type":"object","properties":{},"additionalProperties":{}},"transfer":{"type":"object","properties":{"lastSaleDate":{"type":"string"},"lastSalePriceUsd":{"type":"number"},"history":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string"},"event":{"type":"string","enum":["sale","deed_transfer","refinance_or_lien","assessment","unknown_public_record_event"]},"priceUsd":{"type":"number"}},"required":["date"],"additionalProperties":false}},"ownerOccupiedIndicator":{"type":"boolean"}},"additionalProperties":{}},"citation":{"type":"string"},"fetchedAt":{"type":"string"},"servedFromCache":{"type":"boolean"},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","source","jurisdiction","citation","servedFromCache","caveats"],"additionalProperties":{}},{"type":"object","properties":{"kind":{"type":"string","const":"property_tax_diagnostic"},"charged":{"type":"boolean","const":false},"ok":{"type":"boolean","const":true},"residentialOnly":{"type":"boolean","const":true},"reason":{"type":"string"},"note":{"type":"string"}},"required":["kind","charged","ok","residentialOnly","reason","note"],"additionalProperties":{}}],"description":"A `kind`-discriminated union: `property_tax` (assessed value + actual annual tax + history + effective rate + PII-free deed/transfer history + owner-occupied homestead-proxy signal, cited to RentCast) for a residential hit, or `property_tax_diagnostic` (charged:false) for a miss/commercial/uncovered address."},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-property-tax.json","naming":{"style":"hyphen-paid-route","executableName":"locus-property-tax","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_property_tax_estimate","canonicalId":"locus.property.tax.estimate","callName":"locus_property_tax_estimate","title":"Property tax rate context for an address (NC)","description":"Resolve the official NCDOR county/municipal property-tax RATE (combined + component rates) that applies to an NC address. Use when the user asks what the property-tax rate is for an address, or which county/municipal rate applies. Returns cited rate context only — NOT a dollar estimate, bill, appraisal, valuation, or advice. For the verified actual annual tax amount + assessed value + history, use the paid locus-property-tax. Excludes special districts, exemptions, deferrals, and appeals. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["taxes","property","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":200,"description":"Required NC street address; geocodes to the parcel and taxing county/municipality."}},"required":["address"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_property_tax_estimate","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-property-tax-estimate","canonicalId":"locus.property.tax.estimate","callName":"locus-property-tax-estimate","tier":"paid","endpoint":"https://api.locus.report/api/locus-property-tax-estimate"}]},{"catalogId":"paid:locus-property-tax-estimate","canonicalId":"locus.property.tax.estimate","callName":"locus-property-tax-estimate","title":"Property tax rate context for an address (NC)","description":"Official NCDOR property-tax RATE context for an NC address. Perfect for: 'property tax rate for an NC address', 'what rate applies to this parcel', 'county/municipal tax rate lookup'. Resolves the geocoded address to published rate components (combined + county + municipal per $100 value) from the NCDOR table. Rate context only -- NOT a bill or valuation. NC-only. For the actual annual bill use the paid locus-property-tax. Charge-free when out of state or no NC rate matches.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["taxes","property","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-property-tax-estimate","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":200,"description":"Required NC street address; geocodes to the parcel and taxing county/municipality."}},"required":["address"],"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-property-tax-estimate.json","naming":{"style":"hyphen-paid-route","executableName":"locus-property-tax-estimate","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_property_tax_estimate","canonicalId":"locus.property.tax.estimate","callName":"locus_property_tax_estimate","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_property_tax_rates","canonicalId":"locus.property.tax.rates","callName":"locus_property_tax_rates","title":"Property tax rate components (official tables)","description":"Return official adopted property-tax rate components where wired: NC statewide via NCDOR plus selected exact-rate market adapters such as Nashville/Davidson TN, Austin/Travis TX, and Tampa/Hillsborough FL. Use when the user asks what current adopted tax-rate component applies to a municipality, county, ZIP, or address (not a dollar bill). Rate context only, never a tax bill, forecast, estimate, valuation, or advice. For proposals, use official budget/agenda/video source cards. Read-only.","tier":"free","rail":"free","category":"policy","tags":["taxes","property","policy","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"place":{"description":"Municipality, county, ZIP, or address to match to official taxing jurisdictions; interchangeable with `address`. NC statewide plus selected market adapters.","type":"string","minLength":2,"maxLength":160},"address":{"description":"Street address or place string to match to official taxing jurisdictions; interchangeable with `place`. NC statewide plus selected market adapters.","type":"string","minLength":2,"maxLength":160}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_property_tax_rates","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-property-tax-rates","canonicalId":"locus.property.tax.rates","callName":"locus-property-tax-rates","tier":"paid","endpoint":"https://api.locus.report/api/locus-property-tax-rates"}]},{"catalogId":"paid:locus-property-tax-rates","canonicalId":"locus.property.tax.rates","callName":"locus-property-tax-rates","title":"Property tax rate components (official tables)","description":"Official adopted property-tax RATE components for a place. Perfect for: 'property tax rate for a city/county/ZIP/address', 'what is the millage / mill rate', 'adopted county tax rate'. Returns cited rate components where wired (NC statewide via NCDOR plus selected TN/TX/FL market adapters). Rate context only -- NOT a tax bill, estimate, valuation, or advice. Charge-free when no wired rate table matches the place.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["taxes","property","policy","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-property-tax-rates","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"place":{"description":"Municipality, county, ZIP, or address to match to official taxing jurisdictions; interchangeable with `address`. NC statewide plus selected market adapters.","type":"string","minLength":2,"maxLength":160},"address":{"description":"Street address or place string to match to official taxing jurisdictions; interchangeable with `place`. NC statewide plus selected market adapters.","type":"string","minLength":2,"maxLength":160}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-property-tax-rates.json","naming":{"style":"hyphen-paid-route","executableName":"locus-property-tax-rates","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_property_tax_rates","canonicalId":"locus.property.tax.rates","callName":"locus_property_tax_rates","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"paid:locus-property-update","canonicalId":"locus.property.update","callName":"locus-property-update","title":"Property Decision Check: Recent & Scheduled Changes","description":"Surfaces recent and scheduled official-record changes, nearby activity, and physical comparability for one US address so a buyer, owner, or advisor can decide what deserves attention before spending more time or money. One paid call starts a pollable job; its shareable decision report and animated map expire together. Thin or unsupported results return charged:false. Never valuation, screening, forecasting, or safe/unsafe labels. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"reports","tags":["data","search","real-estate","property","property-research","due-diligence","public-records","x402","async","current-records","pdf","video","cloudflare-r2","category:reports"],"endpoint":"https://api.locus.report/api/locus-property-update","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":240,"description":"One US street address. Locus preflights official-record coverage before payment."},"radiusMeters":{"default":1500,"type":"number","exclusiveMinimum":0,"maximum":10000},"lookbackDays":{"default":365,"type":"integer","exclusiveMinimum":0,"maximum":3650},"focus":{"description":"Emphasize these finding families in the video scene ordering. The aerial subject opening and report/QR closing scenes are unaffected.","maxItems":3,"type":"array","items":{"type":"string","enum":["development","zoning","environment","market","infrastructure"]}},"brand":{"description":"Optional caller-authorized logo that replaces the visible Locus lockup in the property-update video, proof-gated HTML view, and PDF. It does not change the canonical JSON report or its hash.","type":"object","properties":{"logo":{"type":"object","properties":{"role":{"type":"string","const":"brand_logo","description":"Declares a raster brand mark that replaces visible Locus branding in the requested flyer or video."},"url":{"type":"string","maxLength":2048,"pattern":"^https:\\/\\/","description":"HTTPS URL for a caller-authorized PNG, JPEG, or WebP logo. The API fetches and embeds it; renderers never fetch this URL."},"sourceName":{"type":"string","minLength":2,"maxLength":120},"rightsConfirmed":{"type":"boolean","const":true},"rightsBasis":{"type":"string","enum":["owned_by_requester","licensed_for_marketing","public_domain"]},"rightsHolder":{"type":"string","minLength":2,"maxLength":160},"permittedUse":{"type":"string","const":"commercial_marketing"},"attestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"privacyReviewed":{"type":"boolean","const":true,"description":"Requester confirms the logo contains no unnecessary personal information."}},"required":["role","url","sourceName","rightsConfirmed","rightsBasis","rightsHolder","permittedUse","attestedAt","privacyReviewed"],"additionalProperties":false}},"required":["logo"],"additionalProperties":false}},"required":["address","radiusMeters","lookbackDays"],"additionalProperties":false,"description":"One US street address. Returns quickly with a private, pollable async job only when the preflight finds enough time-sensitive official-record context to justify payment."},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"property_update_job"},"jobId":{"type":"string"},"status":{"type":"string","enum":["payment_pending","queued","processing","ready","partial","failed"]},"stage":{"type":"string","enum":["request_received","locating_property","checking_recent_records","researching_supporting_context","building_report","rendering_pdf","rendering_video","ready"]},"statusUrl":{"type":"string","format":"uri"},"expiresAt":{"type":"string"},"pollAfterSeconds":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"estimatedTotalSeconds":{"type":"object","properties":{"min":{"type":"integer","minimum":0,"maximum":9007199254740991},"max":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["min","max"],"additionalProperties":false},"flyerReady":{"type":"boolean","const":false,"description":"The flyer handoff becomes ready on the polled job response as soon as the PDF is complete."},"deliverables":{"type":"object","properties":{"report":{"type":"string","const":"pending"},"pdf":{"type":"string","const":"pending"},"video":{"type":"string","const":"pending"}},"required":["report","pdf","video"],"additionalProperties":false}},"required":["kind","jobId","status","stage","statusUrl","expiresAt","pollAfterSeconds","estimatedTotalSeconds","flyerReady","deliverables"],"additionalProperties":false},{"type":"object","properties":{"kind":{"type":"string","const":"property_update_diagnostic"},"charged":{"type":"boolean","const":false},"status":{"type":"string","enum":["insufficient_current_context","clarification_required"]},"message":{"type":"string"},"findingCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"recommendedRadiusMeters":{"type":"number","exclusiveMinimum":0},"requestedAddress":{"type":"string"},"matchedAddress":{"type":"string"},"matchedParcelId":{"type":"string"},"recommendedAction":{"type":"string","enum":["retry_with_larger_radius_or_choose_another_workflow","confirm_subject_before_payment"]},"retryInput":{"type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":240,"description":"One US street address. Locus preflights official-record coverage before payment."},"radiusMeters":{"default":1500,"type":"number","exclusiveMinimum":0,"maximum":10000},"lookbackDays":{"default":365,"type":"integer","exclusiveMinimum":0,"maximum":3650},"focus":{"description":"Emphasize these finding families in the video scene ordering. The aerial subject opening and report/QR closing scenes are unaffected.","maxItems":3,"type":"array","items":{"type":"string","enum":["development","zoning","environment","market","infrastructure"]}},"brand":{"description":"Optional caller-authorized logo that replaces the visible Locus lockup in the property-update video, proof-gated HTML view, and PDF. It does not change the canonical JSON report or its hash.","type":"object","properties":{"logo":{"type":"object","properties":{"role":{"type":"string","const":"brand_logo","description":"Declares a raster brand mark that replaces visible Locus branding in the requested flyer or video."},"url":{"type":"string","maxLength":2048,"pattern":"^https:\\/\\/","description":"HTTPS URL for a caller-authorized PNG, JPEG, or WebP logo. The API fetches and embeds it; renderers never fetch this URL."},"sourceName":{"type":"string","minLength":2,"maxLength":120},"rightsConfirmed":{"type":"boolean","const":true},"rightsBasis":{"type":"string","enum":["owned_by_requester","licensed_for_marketing","public_domain"]},"rightsHolder":{"type":"string","minLength":2,"maxLength":160},"permittedUse":{"type":"string","const":"commercial_marketing"},"attestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"privacyReviewed":{"type":"boolean","const":true,"description":"Requester confirms the logo contains no unnecessary personal information."}},"required":["role","url","sourceName","rightsConfirmed","rightsBasis","rightsHolder","permittedUse","attestedAt","privacyReviewed"],"additionalProperties":false}},"required":["logo"],"additionalProperties":false}},"required":["address","radiusMeters","lookbackDays"],"additionalProperties":false},"alternativeTools":{"type":"array","items":{"type":"object","properties":{"tool":{"type":"string","enum":["locus-local-trend-brief","locus-place-report"]},"endpoint":{"type":"string","enum":["/api/locus-local-trend-brief","/api/locus-place-report"]},"requiresPayment":{"type":"boolean","const":true},"reason":{"type":"string"},"availableForPlace":{"anyOf":[{"type":"boolean"},{"type":"string","const":"varies"}],"description":"Shared lane-availability result for the resolved place; false means do not call this route here."},"coverageNote":{"type":"string"},"inputHint":{"anyOf":[{"type":"object","properties":{"place":{"type":"string"},"intent":{"type":"string","const":"homebuyer_due_diligence"},"lookbackMonths":{"type":"integer","minimum":1,"maximum":60}},"required":["place","intent","lookbackMonths"],"additionalProperties":false},{"type":"object","properties":{"address":{"type":"string"},"radiusMeters":{"type":"number","exclusiveMinimum":0,"maximum":2000},"lookbackDays":{"type":"integer","exclusiveMinimum":0,"maximum":3650}},"required":["address","radiusMeters","lookbackDays"],"additionalProperties":false}],"description":"Schema-safe request fields for the named alternative; preflight and authorize it as a separate paid call."}},"required":["tool","endpoint","requiresPayment","reason","availableForPlace","inputHint"],"additionalProperties":false}}},"required":["kind","charged","status","message","findingCount","recommendedAction"],"additionalProperties":false}],"description":"A paid async property-decision-check job or a charge-free diagnostic when current context is too thin."},"priceUsdc":"0.10","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-property-update.json","naming":{"style":"hyphen-paid-route","executableName":"locus-property-update","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_public_utilities","canonicalId":"locus.public.utilities","callName":"locus_public_utilities","title":"Nearest public utilities & emergency services (fire station, hospital, police, hydrant, substation)","description":"Return the nearest mapped OpenStreetMap fire station, hospital/clinic, police station, fire hydrant, electric substation, and water tower around a US address or point, each with a straight-line distance and OSM verify link, plus per-category counts in the search radius. Use when the user asks what is nearby, about emergency services, or for fire/insurance/utility context. Hydrants and infrastructure are often unnamed in OSM and are still reported. National. Mapped facility distances only, never a fire-protection rating, insurance determination, response-time estimate, or safety/desirability verdict. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["utilities","emergency-services","fire-protection","infrastructure","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 5000, clamped to [500, 8000].","type":"integer","minimum":500,"maximum":8000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_public_utilities","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-public-utilities","canonicalId":"locus.public.utilities","callName":"locus-public-utilities","tier":"paid","endpoint":"https://api.locus.report/api/locus-public-utilities"}]},{"catalogId":"paid:locus-public-utilities","canonicalId":"locus.public.utilities","callName":"locus-public-utilities","title":"Nearest public utilities & emergency services (fire station, hospital, police, hydrant, substation)","description":"Nearest public utilities and emergency services for an address. Perfect for: 'nearest fire station to an address', 'how far is the nearest hospital', 'fire hydrant distance for insurance', 'emergency services near a property', 'utility infrastructure proximity'. Returns the nearest mapped fire station, hospital, police, hydrant, substation, and water tower from OpenStreetMap with distances plus counts. National. Factual proximity, not a rating. Charge-free when the address fails to geocode.","tier":"paid","rail":"promoted-free-dual","category":"infrastructure","tags":["utilities","emergency-services","fire-protection","infrastructure","read-only","paid","x402","category:infrastructure"],"endpoint":"https://api.locus.report/api/locus-public-utilities","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 5000, clamped to [500, 8000].","type":"integer","minimum":500,"maximum":8000}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-public-utilities.json","naming":{"style":"hyphen-paid-route","executableName":"locus-public-utilities","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_public_utilities","canonicalId":"locus.public.utilities","callName":"locus_public_utilities","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_radon_zone","canonicalId":"locus.radon.zone","callName":"locus_radon_zone","title":"EPA radon zone by county","description":"Return the EPA county-level radon zone (1/2/3) for a US point or explicit state+county from the official EPA Map of Radon Zones text table. Use when the user asks about radon for an address or county; this is the county zone, a testing/disclosure follow-up, not a building reading. Zone 1 includes a radon overhang watch item. County potential only, never a building measurement, health claim, or safety verdict. Read-only.","tier":"free","rail":"free","category":"environmental","tags":["environment","radon","housing","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address; used to derive county when state+county or lat/lng are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to derive county from the point.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to derive county from the point.","type":"number","minimum":-180,"maximum":180},"state":{"description":"Optional two-letter state code; provide with county to skip point resolution.","type":"string","minLength":2,"maxLength":2},"county":{"description":"Optional county name, e.g. Wake County; provide with state to skip point resolution.","type":"string","minLength":3,"maxLength":80}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_radon_zone","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-radon-zone","canonicalId":"locus.radon.zone","callName":"locus-radon-zone","tier":"paid","endpoint":"https://api.locus.report/api/locus-radon-zone"}]},{"catalogId":"paid:locus-radon-zone","canonicalId":"locus.radon.zone","callName":"locus-radon-zone","title":"EPA radon zone by county","description":"EPA radon zone for an address or county. Perfect for: 'radon zone for an address', 'EPA radon potential for a county', 'is this a high radon area', 'radon zone 1 2 or 3 lookup'. Returns the EPA Map of Radon Zones county designation (1/2/3) for a point or explicit state+county, with a Zone 1 high-potential watch item and provenance. National. County-potential context only -- not a measured indoor radon reading. Charge-free when geocoding fails or the county is not matched.","tier":"paid","rail":"promoted-free-dual","category":"hazard","tags":["environment","radon","housing","read-only","paid","x402","category:hazard"],"endpoint":"https://api.locus.report/api/locus-radon-zone","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address; used to derive county when state+county or lat/lng are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to derive county from the point.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to derive county from the point.","type":"number","minimum":-180,"maximum":180},"state":{"description":"Optional two-letter state code; provide with county to skip point resolution.","type":"string","minLength":2,"maxLength":2},"county":{"description":"Optional county name, e.g. Wake County; provide with state to skip point resolution.","type":"string","minLength":3,"maxLength":80}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-radon-zone.json","naming":{"style":"hyphen-paid-route","executableName":"locus-radon-zone","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_radon_zone","canonicalId":"locus.radon.zone","callName":"locus_radon_zone","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_rcra_handlers","canonicalId":"locus.rcra.handlers","callName":"locus_rcra_handlers","title":"Hazardous-waste handlers (EPA RCRA, national)","description":"Return EPA RCRAInfo hazardous-waste handler records for a county or ZIP: generator status, activities, coordinates, and ECHO verify links. Use when the user asks specifically about hazardous-waste sites or handlers near a place; for a broader environmental sweep prefer locus_environmental_history. National. Pass an address, place, point, ZIP with state, or explicit state + 3-digit county FIPS. Reporting notifications only, never exposure, contamination, or safety verdict. Read-only.","tier":"free","rail":"free","category":"environmental","tags":["environment","hazardous-materials","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"place":{"description":"Optional US place or address; use a street address or unambiguous place with state when FIPS are not provided.","type":"string","minLength":2,"maxLength":200},"state":{"description":"Optional two-letter state code, e.g. NC. Required only when using explicit countyFips3 or ZIP without address/place/point.","type":"string","minLength":2,"maxLength":2},"countyFips3":{"description":"Optional 3-digit county FIPS; provide for county scan when ZIP is absent, or omit to resolve from address/place/point.","type":"string","minLength":1,"maxLength":3},"zip":{"description":"Optional 5-digit or ZIP+4 code; provide for ZIP scan instead of countyFips3.","type":"string","minLength":5,"maxLength":10}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_rcra_handlers","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-rcra-handlers","canonicalId":"locus.rcra.handlers","callName":"locus-rcra-handlers","tier":"paid","endpoint":"https://api.locus.report/api/locus-rcra-handlers"}]},{"catalogId":"paid:locus-rcra-handlers","canonicalId":"locus.rcra.handlers","callName":"locus-rcra-handlers","title":"Hazardous-waste handlers (EPA RCRA, national)","description":"EPA RCRA hazardous-waste handlers for a county/ZIP. Perfect for: 'hazardous waste sites in a county', 'EPA RCRA handlers near a ZIP', 'generators in my area', 'waste facility lookup'. Returns cited EPA RCRAInfo handler records (generator status, activities, coordinates, ECHO links) for a state+county or ZIP with optional proximity ranking. National via EPA Envirofacts. Reporting notifications only -- not violations or contamination. Charge-free when the lookup fails.","tier":"paid","rail":"promoted-free-dual","category":"environmental","tags":["environment","hazardous-materials","read-only","paid","x402","category:environmental"],"endpoint":"https://api.locus.report/api/locus-rcra-handlers","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"place":{"description":"Optional US place or address; use a street address or unambiguous place with state when FIPS are not provided.","type":"string","minLength":2,"maxLength":200},"state":{"description":"Optional two-letter state code, e.g. NC. Required only when using explicit countyFips3 or ZIP without address/place/point.","type":"string","minLength":2,"maxLength":2},"countyFips3":{"description":"Optional 3-digit county FIPS; provide for county scan when ZIP is absent, or omit to resolve from address/place/point.","type":"string","minLength":1,"maxLength":3},"zip":{"description":"Optional 5-digit or ZIP+4 code; provide for ZIP scan instead of countyFips3.","type":"string","minLength":5,"maxLength":10}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-rcra-handlers.json","naming":{"style":"hyphen-paid-route","executableName":"locus-rcra-handlers","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_rcra_handlers","canonicalId":"locus.rcra.handlers","callName":"locus_rcra_handlers","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_regulated_facility_compliance","canonicalId":"locus.regulated.facility.compliance","callName":"locus_regulated_facility_compliance","title":"Regulated facility compliance nearby (EPA ECHO)","description":"EPA ECHO All Media Facility Search near a point: nearby regulated facilities, program identifiers, inspection/enforcement summary fields when ECHO returns them, and official Detailed Facility Report links. Detailed National Emissions Inventory facility/pollutant rows are a separate paid-only route. National by lat/lng or geocoded address. Regulatory context only - not exposure, contamination, health, nuisance, risk, or safe/unsafe conclusion. Read-only.","tier":"free","rail":"free","category":"environmental","tags":["environment","epa","echo","compliance","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"type":"integer","minimum":500,"maximum":25000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_regulated_facility_compliance","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-regulated-facility-compliance","canonicalId":"locus.regulated.facility.compliance","callName":"locus-regulated-facility-compliance","tier":"paid","endpoint":"https://api.locus.report/api/locus-regulated-facility-compliance"}]},{"catalogId":"paid:locus-regulated-facility-compliance","canonicalId":"locus.regulated.facility.compliance","callName":"locus-regulated-facility-compliance","title":"Regulated facility compliance nearby (EPA ECHO)","description":"EPA ECHO regulated-facility compliance nearby. Perfect for: 'EPA regulated facilities near an address', 'ECHO compliance near a property', 'environmental compliance nearby', 'nearby regulated polluters', 'EPA facility search'. Returns EPA ECHO All-Media facilities near a point with program IDs, inspection/enforcement summary, and Detailed Facility Report links. National by lat/lng or address. Regulatory context only. Charge-free when the address fails to resolve or EPA errors.","tier":"paid","rail":"promoted-free-dual","category":"environmental","tags":["environment","epa","echo","compliance","read-only","paid","x402","category:environmental"],"endpoint":"https://api.locus.report/api/locus-regulated-facility-compliance","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"type":"integer","minimum":500,"maximum":25000}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-regulated-facility-compliance.json","naming":{"style":"hyphen-paid-route","executableName":"locus-regulated-facility-compliance","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_regulated_facility_compliance","canonicalId":"locus.regulated.facility.compliance","callName":"locus_regulated_facility_compliance","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"paid:locus-rent-estimate","canonicalId":"locus.rent.estimate","callName":"locus-rent-estimate","title":"Residential rent estimate with HUD FMR anchor","description":"Residential rent context for one US address: RentCast third-party long-term rent estimate, range, and comparable count, plus HUD Fair Market Rent area anchor when available. Facts only; Locus does not author valuations or rent predictions. Commercial/uncovered addresses return a free charge-free diagnostic. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"economics","tags":["rents","rental","property","residential","real-estate","hud-fmr","rentcast","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-rent-estimate","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":200,"description":"US RESIDENTIAL street address. Returns RentCast long-term rent estimate, range, comparable count, and a HUD FMR area anchor."}},"required":["address"],"additionalProperties":false,"description":"US RESIDENTIAL street address. Returns RentCast long-term rent estimate + range + comparable count, plus HUD Fair Market Rent area anchor when available. Commercial/uncovered addresses return a free charge-suppressed diagnostic."},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"rent_estimate"},"source":{"type":"string","const":"RentCast"},"rentEstimate":{"type":"number"},"rentRangeLow":{"type":"number"},"rentRangeHigh":{"type":"number"},"comparableCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"subjectProperty":{"type":"object","properties":{},"additionalProperties":{}},"hudFmrAnchor":{"type":"object","properties":{"configured":{"type":"boolean"},"zipCode":{"type":"string"},"bedroomCount":{"type":"number"},"rentUsd":{"type":"number"},"label":{"type":"string"},"provenance":{"type":"object","properties":{},"additionalProperties":{}},"reason":{"type":"string"}},"required":["configured","label","provenance"],"additionalProperties":{}},"citation":{"type":"string"},"fetchedAt":{"type":"string"},"servedFromCache":{"type":"boolean"},"caveats":{"type":"array","items":{"type":"string"}}},"required":["kind","source","rentEstimate","comparableCount","citation","servedFromCache","caveats"],"additionalProperties":{}},{"type":"object","properties":{"kind":{"type":"string","const":"rent_estimate_diagnostic"},"charged":{"type":"boolean","const":false},"ok":{"type":"boolean","const":true},"residentialOnly":{"type":"boolean","const":true},"reason":{"type":"string"},"note":{"type":"string"}},"required":["kind","charged","ok","residentialOnly","reason","note"],"additionalProperties":{}}],"description":"A `kind`-discriminated union: `rent_estimate` (RentCast third-party long-term rent estimate, range, comparable count, and HUD FMR anchor) for a residential hit, or `rent_estimate_diagnostic` (charged:false) for a miss/commercial/uncovered address."},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-rent-estimate.json","naming":{"style":"hyphen-paid-route","executableName":"locus-rent-estimate","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_representatives","canonicalId":"locus.representatives","callName":"locus_representatives","title":"State & federal representatives for an address (cited)","description":"Return the US congressional, state senate, and state house districts containing an address (national, Census TIGERweb) plus, where Open States is keyed/available, the current STATE legislators and US Congress members for those districts AND state executives (governor/lt-governor/AG) where Open States lists them — party, district, official-capacity office contacts, and Open States + official-chamber source links (districts always return; the officials lane is budget-capped and degrades to districts-only). Use when the user asks who their state/federal legislators or state executives are, or which legislative districts an address is in. Local officials (mayors, city councils, county commissioners, school boards) and any Open States gaps are NOT in this result — find those via official sites or a cited web search; for district numbers only use locus_governing_districts; for bills/ordinances use the paid locus-local-policy-brief. Public officials in official capacity only — cited facts, never political advice, ballot guidance, ranking, endorsement, or eligibility determination. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["representation","districts","state-legislature","federal","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_representatives","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-representatives","canonicalId":"locus.representatives","callName":"locus-representatives","tier":"paid","endpoint":"https://api.locus.report/api/locus-representatives"}]},{"catalogId":"paid:locus-representatives","canonicalId":"locus.representatives","callName":"locus-representatives","title":"State & federal representatives for an address (cited)","description":"Elected districts and representatives for an address. Perfect for: 'who represents this address', 'congressional district for an address', 'state legislative districts for a property', 'find my representatives', 'state senate and house district lookup'. Returns US congressional + state upper/lower districts (always, Census TIGERweb) plus current legislators where Open States is available. The representatives lane degrades cleanly when unkeyed. Charge-free when the address fails to resolve.","tier":"paid","rail":"promoted-free-dual","category":"infrastructure","tags":["representation","districts","state-legislature","federal","read-only","paid","x402","category:infrastructure"],"endpoint":"https://api.locus.report/api/locus-representatives","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-representatives.json","naming":{"style":"hyphen-paid-route","executableName":"locus-representatives","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_representatives","canonicalId":"locus.representatives","callName":"locus_representatives","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_request_coverage","canonicalId":"locus.request.coverage","callName":"locus_request_coverage","title":"Request coverage for a place","description":"Free, one-click 'I want coverage here'. Increments the demand counter for a place so coverage expansion follows real constituent demand. Stores aggregate counts only - no requester identity. Call this when locus_coverage_check says a place is unsupported.","tier":"free","rail":"free","category":"meta","tags":["coverage","participation","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"place":{"type":"string","minLength":2,"maxLength":120,"description":"Required ZIP, city, county, or address you want Locus to cover; use after coverage is unsupported."}},"required":["place"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_request_coverage","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"paid:locus-road-access","canonicalId":"locus.road.access","callName":"locus-road-access","title":"Road-access screen (nearest mapped public road)","description":"Road-access screen for one US address or point: nearest mapped public road to the geocoded point. Road adjacency at the geocoded point, not parcel-boundary frontage; physical mapped-road only, never a legal access or landlocked determination. Perfect for: 'does this address have road access', 'nearest road to a property', 'is this parcel on a public road', 'rural/set-back access screen'. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"infrastructure","tags":["real-estate","property","due-diligence","road-access","site-access","parcels","rural-land","public-records","x402","category:infrastructure"],"endpoint":"https://api.locus.report/api/locus-road-access","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address; geocoded to a point. Either address or latitude+longitude is required.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude for point mode.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude for point mode.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters; default 250, clamped to 50-2000.","type":"number","minimum":50,"maximum":2000}},"additionalProperties":false,"description":"US street address or latitude+longitude. The point is geocoded, then one OpenStreetMap Overpass query finds the nearest mapped public road; radius defaults to 250m (clamped 50-2000m).","anyOf":[{"required":["address"]},{"required":["latitude","longitude"]}]},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"road_access"},"point":{"type":"object","properties":{"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["latitude","longitude"],"additionalProperties":false},"radiusMeters":{"type":"number"},"sourceLocationPrecision":{"type":"string","const":"point_not_boundary"},"nearestVehicularRoad":{"anyOf":[{"type":"object","properties":{},"additionalProperties":{}},{"type":"null"}]},"secondNearestVehicularRoad":{"anyOf":[{"type":"object","properties":{},"additionalProperties":{}},{"type":"null"}]},"accessFlag":{"type":"string","enum":["has_road_access","set_back","track_only","no_road_within_radius"]},"trackOrPathNearer":{"anyOf":[{"type":"object","properties":{},"additionalProperties":{}},{"type":"null"}]},"limitedAccessHighwayNearby":{"anyOf":[{"type":"object","properties":{},"additionalProperties":{}},{"type":"null"}]},"privateRoadSignal":{"type":"boolean"},"provenance":{"type":"object","properties":{},"additionalProperties":{}},"caveats":{"type":"array","items":{"type":"string"}},"charged":{"type":"boolean","const":true}},"required":["kind","point","radiusMeters","sourceLocationPrecision","nearestVehicularRoad","secondNearestVehicularRoad","accessFlag","trackOrPathNearer","limitedAccessHighwayNearby","privateRoadSignal","provenance","caveats","charged"],"additionalProperties":{}},{"type":"object","properties":{"kind":{"type":"string","const":"road_access_diagnostic"},"reason":{"type":"string","enum":["address_unresolved","road_source_unavailable"]},"point":{"type":"object","properties":{"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["latitude","longitude"],"additionalProperties":false},"caveats":{"type":"array","items":{"type":"string"}},"charged":{"type":"boolean","const":false}},"required":["kind","reason","caveats","charged"],"additionalProperties":{}}],"description":"A `kind`-discriminated union: `road_access` (nearest vehicular road by point-to-segment distance, an accessFlag of has_road_access/set_back/track_only/no_road_within_radius, track-or-path and limited-access-highway flags, a private-road flag, OSM provenance, and mandatory caveats; sourceLocationPrecision is point_not_boundary) for a completed measurement, or `road_access_diagnostic` (charged:false) when the address is unresolved or every Overpass mirror failed. Mapped-road adjacency screen only - never a legal access, easement, or landlocked determination."},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-road-access.json","naming":{"style":"hyphen-paid-route","executableName":"locus-road-access","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_seismic_design","canonicalId":"locus.seismic.design","callName":"locus_seismic_design","title":"Seismic design data (USGS NEHRP 2020)","description":"Return USGS NEHRP-2020 / ASCE 7 seismic design parameters at a point (Ss, S1, PGA, SDS, SD1, and the Seismic Design Category) for an assumed default site class. Engineering HAZARD DATA, never a safety, risk, or safe/unsafe judgment. National. Read-only.","tier":"free","rail":"free","category":"hazard","tags":["hazard","seismic","earthquake","design-data","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_seismic_design","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-seismic-design","canonicalId":"locus.seismic.design","callName":"locus-seismic-design","tier":"paid","endpoint":"https://api.locus.report/api/locus-seismic-design"}]},{"catalogId":"paid:locus-seismic-design","canonicalId":"locus.seismic.design","callName":"locus-seismic-design","title":"Seismic design data (USGS NEHRP 2020)","description":"USGS seismic design parameters for an address. Perfect for: 'seismic design category for an address', 'Ss and S1 for a site', 'earthquake design values for a property', 'NEHRP seismic parameters', 'PGA for a location'. Returns USGS NEHRP-2020 design data at a US point: Ss, S1, PGA, SDS, SD1, site class, risk category, and seismic design category where USGS has finite values. Engineering hazard data, not a safety verdict. Charge-free when the address fails or USGS has no value.","tier":"paid","rail":"promoted-free-dual","category":"hazard","tags":["hazard","seismic","earthquake","design-data","read-only","paid","x402","category:hazard"],"endpoint":"https://api.locus.report/api/locus-seismic-design","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-seismic-design.json","naming":{"style":"hyphen-paid-route","executableName":"locus-seismic-design","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_seismic_design","canonicalId":"locus.seismic.design","callName":"locus_seismic_design","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_service_requests","canonicalId":"locus.service.requests","callName":"locus_service_requests","title":"Recent 311 service requests near a point (San Diego; synced mirror)","description":"Return recent 311 service requests near a point in the City of San Diego — request type, status, opened/closed dates, and location — from a Locus-owned SYNCED MIRROR of the city's Get It Done open-data feed (data.sandiego.gov), NOT a live query. Each result is a cited mirror row (fetchMode 'mirror') with the last sync date; the tool degrades to source_unavailable when the mirror is stale. Use when the user asks about 311 reports, code/nuisance complaints, street/graffiti/encampment requests, or city-service activity near a San Diego address. Coverage: San Diego County, CA only — a point outside it returns out_of_coverage (never a silent-empty result). Location + type + status only: NEVER the free-text complaint description, and NEVER a safety/nuisance/verdict characterization. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["service-requests","311","civic","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 800, max 3000.","type":"integer","minimum":100,"maximum":3000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_service_requests","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_sewer_overflow_nearby","canonicalId":"locus.sewer.overflow.nearby","callName":"locus_sewer_overflow_nearby","title":"Combined-sewer outfalls and reported sewer overflow/bypass events nearby","description":"Return EPA ECHO's weekly national CSO outfall inventory and separately reported NPDES sewer-overflow/bypass events near an address or point. The standardized event stream is still expanding, so a missing event is not an overflow-free finding. Outfalls are infrastructure records; events are permittee/state reports. Neither establishes property flooding, contamination, exposure, condition, or a safe/unsafe verdict. National, free, read-only.","tier":"free","rail":"free","category":"environmental","tags":["environment","water","sewer","cso","sso","infrastructure","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Straight-line search radius in meters; default 5000.","type":"integer","minimum":500,"maximum":50000},"lookbackDays":{"description":"Reported-event lookback window; default 365 days.","type":"integer","minimum":30,"maximum":3650}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_sewer_overflow_nearby","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_soil_context","canonicalId":"locus.soil.context","callName":"locus_soil_context","title":"Soil context & site constraints (USDA SSURGO): septic, foundation, drainage, shrink-swell","description":"Return USDA NRCS SSURGO soil context at a point: NRCS engineering SUITABILITY ratings for dwellings (with/without basements), septic tank absorption fields, and shallow excavations (Very/Somewhat/Not limited plus the limiting features), then raw soil properties — drainage class, hydric rating, slope, shrink-swell (linear extensibility), taxonomic order, farmland class, and SSURGO map-unit aggregate annual-minimum water-table and shallowest-bedrock depths (converted from cm to labeled feet; NULL stays not rated). Use when the user asks about soil, septic, a well/rural property, foundation, shrink-swell or expansive clay, drainage, or buildability/site constraints. Reports site-constraint and due-diligence flags at the soil-map-unit level — NEVER a geotechnical investigation, perc test, septic permit, foundation determination, or safe/unsafe/buildable verdict. Developed/urban points often map to a non-soil area and return out_of_coverage (the honest answer). National. Read-only.","tier":"free","rail":"free","category":"hazard","tags":["soil","ssurgo","septic","foundation","drainage","site","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_soil_context","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-soil-context","canonicalId":"locus.soil.context","callName":"locus-soil-context","tier":"paid","endpoint":"https://api.locus.report/api/locus-soil-context"}]},{"catalogId":"paid:locus-soil-context","canonicalId":"locus.soil.context","callName":"locus-soil-context","title":"Soil context & site constraints (USDA SSURGO): septic, foundation, drainage, shrink-swell","description":"USDA soil suitability at an address. Perfect for: 'soil type for a property', 'is the soil good for a septic system / foundation / drainage', 'USDA SSURGO soil at an address', 'soil context for a parcel'. Returns dominant soil component suitability ratings (septic, foundation, drainage) at the point via USDA Soil Data Access, with caveats. National. Not an engineering or perc-test determination. Charge-free when soil is out of coverage or the source is unavailable.","tier":"paid","rail":"promoted-free-dual","category":"hazard","tags":["soil","ssurgo","septic","foundation","drainage","site","read-only","paid","x402","category:hazard"],"endpoint":"https://api.locus.report/api/locus-soil-context","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-soil-context.json","naming":{"style":"hyphen-paid-route","executableName":"locus-soil-context","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_soil_context","canonicalId":"locus.soil.context","callName":"locus_soil_context","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"paid:locus-solar-property-comparison","canonicalId":"locus.solar.property.comparison","callName":"locus-solar-property-comparison","title":"Three-property solar evidence comparison","description":"Compare three US addresses side by side using verified parcel identity, dated Google Solar roof evidence, utility candidates, cited programs, and one GridPulse reference. No score, winner, or property recommendation. GridPulse figures remain visible as historical context, separate from current incentives and tariffs. Licensed results are private and no-store. Thin physical coverage is charge-free. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"economics","tags":["data","search","real-estate","property","property-research","due-diligence","public-records","x402","solar","rooftop-solar","three-address-comparison","google-solar","gridpulse","utility-territory","property-programs","category:economics"],"endpoint":"https://api.locus.report/api/locus-solar-property-comparison","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"addresses":{"minItems":3,"maxItems":3,"type":"array","items":{"type":"string","minLength":5,"maxLength":200},"description":"Exactly three US street addresses to compare. Locus preserves input order and does not enumerate or rank a town."},"financialZip":{"type":"string","pattern":"^\\d{5}$","description":"One five-digit ZIP for the shared GridPulse reference scenario."},"systemKw":{"default":8,"description":"GridPulse reference-system size in kilowatts. This does not resize the Google roof model.","type":"number","minimum":2,"maximum":20}},"required":["addresses","financialZip","systemKw"],"additionalProperties":false},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"solar_property_comparison"},"generatedAt":{"type":"string"},"comparisonScope":{"type":"object","properties":{"submittedAddressCount":{"type":"number","const":3},"comparisonMetric":{"type":"string","const":"modeled_annual_energy_dc_kwh"},"priceUsdc":{"type":"string","const":"0.35"}},"required":["submittedAddressCount","comparisonMetric","priceUsdc"],"additionalProperties":false},"subjects":{"type":"array","items":{"type":"object","properties":{"subject":{"type":"object","properties":{"propertyId":{"type":"string"},"inputAddress":{"type":"string"},"parcelId":{"type":"string"},"matchedAddress":{"type":"string"},"jurisdiction":{"type":"object","properties":{"state":{"type":"string"},"county":{"type":"string"},"city":{"type":"string"}},"required":["state","county"],"additionalProperties":false},"pointPrecision":{"type":"string","enum":["parcel","rooftop"]},"matchingEvidence":{"type":"array","items":{"type":"string"}},"observedAt":{"type":"string"}},"required":["propertyId","inputAddress","parcelId","jurisdiction","pointPrecision","matchingEvidence","observedAt"],"additionalProperties":false},"parcel":{"type":"object","properties":{"acreage":{"type":"number"},"landUse":{"type":"string"},"zoning":{"type":"string"},"citation":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false}},"additionalProperties":false},"physical":{"type":"object","properties":{"status":{"type":"string","enum":["answered","not_found","source_unavailable","identity_mismatch"]},"imageryQuality":{"type":"string","enum":["LOW","MEDIUM","HIGH"]},"imageryDate":{"type":"string"},"maxArrayAreaMeters2":{"type":"number"},"maxPanelsCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"maxSunshineHoursPerYear":{"type":"number"},"modeledAnnualEnergyDcKwh":{"type":"number"},"roofSegments":{"type":"array","items":{"type":"object","properties":{"segmentIndex":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"azimuthDegrees":{"type":"number"},"pitchDegrees":{"type":"number"},"areaMeters2":{"type":"number"},"panelsCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"yearlyEnergyDcKwh":{"type":"number"},"maxSunshineHoursPerYear":{"type":"number"}},"required":["segmentIndex"],"additionalProperties":false}},"source":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"imageryDate":{"type":"string"},"usePolicy":{"type":"object","properties":{"paidResponse":{"type":"string","enum":["allowed","allowed_with_attribution","not_verified"]},"cache":{"type":"string","enum":["allowed","ephemeral_only","no_store"]},"attributionRequired":{"type":"boolean"},"attributionText":{"type":"string"},"downstreamRedistribution":{"type":"string","enum":["allowed","restricted","not_verified"]},"publicPinning":{"type":"string","enum":["allowed","prohibited","not_verified"]},"policyUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"}},"required":["paidResponse","cache","attributionRequired","downstreamRedistribution","publicPinning","policyUrl","verifiedAt"],"additionalProperties":false}},"required":["sourceName","sourceUrl","fetchedAt","usePolicy"],"additionalProperties":false},"caveats":{"type":"array","items":{"type":"string"}}},"required":["status","roofSegments","caveats"],"additionalProperties":false},"utility":{"type":"object","properties":{"status":{"type":"string","enum":["candidate_found","no_mapped_territory","source_unavailable","unknown"]},"multipleMatches":{"type":"boolean"},"candidates":{"type":"array","items":{"type":"object","properties":{"utilityId":{"type":"string"},"name":{"type":"string"},"state":{"type":"string"},"website":{"type":"string"},"sourceDate":{"type":"string"},"dataYear":{"type":"string"}},"required":["utilityId","name"],"additionalProperties":false}},"source":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"sourceVintage":{"type":"string"}},"required":["sourceName","sourceUrl"],"additionalProperties":false},"caveats":{"type":"array","items":{"type":"string"}},"verifyNext":{"type":"array","items":{"type":"object","properties":{"step":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"}},"required":["step"],"additionalProperties":false}}},"required":["status","multipleMatches","candidates","caveats","verifyNext"],"additionalProperties":false},"programs":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"fact":{"type":"string"},"moneyNote":{"type":"string"},"window":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"}},"required":["id","name","sourceUrl"],"additionalProperties":false}}},"required":["subject","parcel","physical","utility","programs"],"additionalProperties":false}},"financialReference":{"type":"object","properties":{"status":{"type":"string","enum":["historical_reference","source_unavailable","not_requested"]},"provider":{"type":"string","const":"GridPulse"},"geography":{"type":"object","properties":{"zip":{"type":"string"},"authority":{"type":"string","const":"caller_supplied"}},"required":["zip","authority"],"additionalProperties":false},"systemKw":{"type":"number"},"fetchedAt":{"type":"string"},"preface":{"type":"string"},"solarResourceRating":{"type":"string"},"solarRadiationKwhPerM2PerDay":{"type":"number"},"annualProductionKwh":{"type":"number"},"systemCostUsd":{"type":"object","properties":{"low":{"type":"number"},"high":{"type":"number"}},"required":["low","high"],"additionalProperties":false},"afterCreditCostUsd":{"type":"object","properties":{"low":{"type":"number"},"high":{"type":"number"}},"required":["low","high"],"additionalProperties":false},"paybackYears":{"type":"number"},"savings25YearUsd":{"type":"object","properties":{"low":{"type":"number"},"high":{"type":"number"}},"required":["low","high"],"additionalProperties":false},"netMeteringProviderClaim":{"anyOf":[{"type":"boolean"},{"type":"string"}]},"staleAssumptions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","enum":["residential_clean_energy_credit_30_percent","unconfirmed_utility_tariff","production_model_fallback_not_verified"]},"status":{"type":"string","enum":["expired","not_verified"]},"explanation":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"}},"required":["id","status","explanation"],"additionalProperties":false}},"excludedFromPhysicalComparison":{"type":"boolean","const":true},"source":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"fetchedAt":{"type":"string"},"recordId":{"type":"string"},"imageryDate":{"type":"string"},"usePolicy":{"type":"object","properties":{"paidResponse":{"type":"string","enum":["allowed","allowed_with_attribution","not_verified"]},"cache":{"type":"string","enum":["allowed","ephemeral_only","no_store"]},"attributionRequired":{"type":"boolean"},"attributionText":{"type":"string"},"downstreamRedistribution":{"type":"string","enum":["allowed","restricted","not_verified"]},"publicPinning":{"type":"string","enum":["allowed","prohibited","not_verified"]},"policyUrl":{"type":"string","format":"uri"},"verifiedAt":{"type":"string"}},"required":["paidResponse","cache","attributionRequired","downstreamRedistribution","publicPinning","policyUrl","verifiedAt"],"additionalProperties":false}},"required":["sourceName","sourceUrl","fetchedAt","usePolicy"],"additionalProperties":false}},"required":["status","provider","geography","systemKw","preface","staleAssumptions","excludedFromPhysicalComparison"],"additionalProperties":false},"componentStatus":{"type":"array","items":{"type":"object","properties":{"component":{"type":"string"},"status":{"type":"string"},"detail":{"type":"string"}},"required":["component","status"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}},"verifyNext":{"type":"array","items":{"type":"object","properties":{"step":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"}},"required":["step"],"additionalProperties":false}},"charged":{"type":"boolean","const":false}},"required":["kind","generatedAt","comparisonScope","subjects","financialReference","componentStatus","caveats","verifyNext"],"additionalProperties":{}},{"type":"object","properties":{"kind":{"type":"string","const":"solar_property_comparison_replay"},"status":{"type":"string","const":"licensed_result_not_retained"},"generatedAt":{"type":"string"},"message":{"type":"string"},"originalResultDelivered":{"type":"boolean","const":true},"recheckRequired":{"type":"boolean","const":true},"sourcePolicies":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"cache":{"type":"string","enum":["allowed","ephemeral_only","no_store"]},"downstreamRedistribution":{"type":"string","enum":["allowed","restricted","not_verified"]},"publicPinning":{"type":"string","enum":["allowed","prohibited","not_verified"]},"policyUrl":{"type":"string","format":"uri"}},"required":["sourceName","cache","downstreamRedistribution","publicPinning","policyUrl"],"additionalProperties":false}}},"required":["kind","status","generatedAt","message","originalResultDelivered","recheckRequired","sourcePolicies"],"additionalProperties":false}]},"priceUsdc":"0.35","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-solar-property-comparison.json","naming":{"style":"hyphen-paid-route","executableName":"locus-solar-property-comparison","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_sole_source_aquifer","canonicalId":"locus.sole.source.aquifer","callName":"locus_sole_source_aquifer","title":"EPA Sole Source Aquifer designation context","description":"Determine whether an address or point falls within one or more EPA Sole Source Aquifer designations. The result leads with what the designation means: EPA reviews federally funded projects in the area under SDWA §1424(e) because the aquifer supplies at least half of the service area's drinking water and no economically feasible alternative is available. It is not a contamination finding, says nothing about current water quality, does not itself restrict a private owner, and is not an ordinary private-construction permit decision. Returns every overlapping designation, each EPA region/link and Federal Register citation. A clean negative is returned only from a current validated snapshot; missing or stale source state is explicit. National, including Guam, Hawaii, and Puerto Rico. Free, read-only.","tier":"free","rail":"free","category":"environmental","tags":["groundwater","water","aquifer","ssa","epa","federal-register","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_sole_source_aquifer","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-sole-source-aquifer","canonicalId":"locus.sole.source.aquifer","callName":"locus-sole-source-aquifer","tier":"paid","endpoint":"https://api.locus.report/api/locus-sole-source-aquifer"}]},{"catalogId":"paid:locus-sole-source-aquifer","canonicalId":"locus.sole.source.aquifer","callName":"locus-sole-source-aquifer","title":"EPA Sole Source Aquifer designation context","description":"EPA Sole Source Aquifer designation for an address. Perfect for: 'is this property in a Sole Source Aquifer', 'does EPA federal project review apply here', 'Sole Source Aquifer map lookup'. Returns mapped designation containment and Federal Register citations. The designation triggers EPA review of federally funded projects under SDWA 1424(e); it is not contamination, water quality, or a private-owner restriction. Charge-free when the snapshot is unavailable or stale.","tier":"paid","rail":"promoted-free-dual","category":"environmental","tags":["groundwater","water","aquifer","ssa","epa","federal-register","read-only","paid","x402","category:environmental"],"endpoint":"https://api.locus.report/api/locus-sole-source-aquifer","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-sole-source-aquifer.json","naming":{"style":"hyphen-paid-route","executableName":"locus-sole-source-aquifer","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_sole_source_aquifer","canonicalId":"locus.sole.source.aquifer","callName":"locus_sole_source_aquifer","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_source_card_check","canonicalId":"locus.source.card.check","callName":"locus_source_card_check","title":"Source-card check","description":"Read the local source cards for a jurisdiction (or a single card by id): status (candidate/verified/disputed/deprecated), verification method + timestamp, provenance, category, and the official query endpoint. Read-only card metadata for city/county source trails such as Charlotte/Mecklenburg; never fetches the underlying records.","tier":"free","rail":"free","category":"infrastructure","tags":["source-cards","provenance","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"jurisdiction":{"description":"Optional jurisdiction id such as us-nc-raleigh; provide when known to skip place resolution.","type":"string"},"place":{"description":"Optional ZIP/address; provide instead of jurisdiction to resolve local source cards.","type":"string"},"cardId":{"description":"Optional source-card id such as us-nc-durham:permits; provide to inspect one card.","type":"string"}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_source_card_check","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_special_valuation_screen","canonicalId":"locus.special.valuation.screen","callName":"locus_special_valuation_screen","title":"Parcel acreage plus cited state valuation programs","description":"Return only the parcel's public acreage, land-use code, county, and state, then list state registry rows for special valuation, historic incentives, and solar exemptions. The screen does not determine program status for the parcel or recommend an application. Free and read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["owner-programs","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":200,"description":"Required US street address or ZIP."}},"required":["address"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_special_valuation_screen","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-special-valuation-screen","canonicalId":"locus.special.valuation.screen","callName":"locus-special-valuation-screen","tier":"paid","endpoint":"https://api.locus.report/api/locus-special-valuation-screen"}]},{"catalogId":"paid:locus-special-valuation-screen","canonicalId":"locus.special.valuation.screen","callName":"locus-special-valuation-screen","title":"Parcel acreage plus cited state valuation programs","description":"Parcel acreage and cited state special-valuation, historic-incentive, and solar-exemption programs. Perfect for: 'special valuation programs for this parcel', 'present-use or historic tax treatment'. Returns safe parcel fields plus program rows. It does not determine parcel eligibility or status. Charge-free unless the parcel resolves and at least one program row returns.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["owner-programs","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-special-valuation-screen","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":200,"description":"Required US street address or ZIP."}},"required":["address"],"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-special-valuation-screen.json","naming":{"style":"hyphen-paid-route","executableName":"locus-special-valuation-screen","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_special_valuation_screen","canonicalId":"locus.special.valuation.screen","callName":"locus_special_valuation_screen","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_storm_events","canonicalId":"locus.storm.events","callName":"locus_storm_events","title":"Storm and hazard event history by county (NOAA)","description":"Return dated NOAA Storm Events Database records for a county (1950-present): event type, date, damage estimates, and narrative. Use when the user asks about storms, tornadoes, hurricanes, hail, or disaster history for an area; county-level history, not parcel-level risk. National. Pass an address, place, point, or, if you have them, explicit state FIPS + county name + 3-digit county FIPS. County-level record history, not a parcel-level risk forecast, insurance estimate, or safe/unsafe verdict. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["weather","hazards","ownership-loop","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"place":{"description":"Optional US place or address; use a street address or unambiguous place with state when FIPS are not provided.","type":"string","minLength":2,"maxLength":200},"stateFips":{"description":"Optional state FIPS, e.g. 37 for NC. Omit to resolve from the address/place/point.","type":"string","minLength":1,"maxLength":2},"countyName":{"description":"Optional county name as NOAA labels it, e.g. Wake. Omit to resolve from the address/place/point.","type":"string","minLength":3,"maxLength":60},"countyFips3":{"description":"Optional 3-digit county FIPS, e.g. 183 for Wake. Omit to resolve from the address/place/point.","type":"string","minLength":1,"maxLength":3},"beginYear":{"description":"Optional start year for NOAA events; default source helper range starts at 1950.","type":"integer","minimum":1950,"maximum":9007199254740991},"endYear":{"description":"Optional end year for NOAA events; omit for latest available year.","type":"integer","minimum":1950,"maximum":9007199254740991}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_storm_events","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-storm-events","canonicalId":"locus.storm.events","callName":"locus-storm-events","tier":"paid","endpoint":"https://api.locus.report/api/locus-storm-events"}]},{"catalogId":"paid:locus-storm-events","canonicalId":"locus.storm.events","callName":"locus-storm-events","title":"Storm and hazard event history by county (NOAA)","description":"NOAA Storm Events history for a county. Perfect for: 'storm events for a county', 'hail / tornado / wind history for an area', 'NOAA severe weather records', 'past storm damage for a place'. Returns dated NOAA Storm Events Database records (1950-present): event type, date, damage estimates, and narrative for the county. National by point or state+county FIPS. Historical record context, not a forecast. Charge-free when the input does not resolve to a county or the NOAA fetch fails.","tier":"paid","rail":"promoted-free-dual","category":"hazard","tags":["weather","hazards","ownership-loop","read-only","paid","x402","category:hazard"],"endpoint":"https://api.locus.report/api/locus-storm-events","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"place":{"description":"Optional US place or address; use a street address or unambiguous place with state when FIPS are not provided.","type":"string","minLength":2,"maxLength":200},"stateFips":{"description":"Optional state FIPS, e.g. 37 for NC. Omit to resolve from the address/place/point.","type":"string","minLength":1,"maxLength":2},"countyName":{"description":"Optional county name as NOAA labels it, e.g. Wake. Omit to resolve from the address/place/point.","type":"string","minLength":3,"maxLength":60},"countyFips3":{"description":"Optional 3-digit county FIPS, e.g. 183 for Wake. Omit to resolve from the address/place/point.","type":"string","minLength":1,"maxLength":3},"beginYear":{"description":"Optional start year for NOAA events; default source helper range starts at 1950.","type":"integer","minimum":1950,"maximum":9007199254740991},"endYear":{"description":"Optional end year for NOAA events; omit for latest available year.","type":"integer","minimum":1950,"maximum":9007199254740991}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-storm-events.json","naming":{"style":"hyphen-paid-route","executableName":"locus-storm-events","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_storm_events","canonicalId":"locus.storm.events","callName":"locus_storm_events","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_suggest_workflow","canonicalId":"locus.suggest.workflow","callName":"locus_suggest_workflow","title":"Suggest workflow: ranked endpoint plan for a place + intent","description":"Every time the intent is broad — buying, renting, owning, appealing an assessment, lowering a cited property cost, handling utility or mortgage rules, recovering after a disaster, closing a permit, siting a business, civic watch, environmental research, or before you sign — call this first. It is the free catalog step for a US place + intent: a ranked Locus endpoint plan with cost, free|paid rail, and whether each lane is available here. Deterministic, no LLM. Planning only; not a record lookup and not a scrape.","tier":"free","rail":"free","category":"meta","tags":["planning","workflow","discovery","intent","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"place":{"type":"string","minLength":1,"maxLength":200,"description":"ZIP, city, county, or street address to scope which endpoints are available here."},"intent":{"type":"string","minLength":1,"maxLength":120,"description":"Canonical values: renter_due_diligence, homebuyer_due_diligence, small_business_siting, community_organizer_journalist, commercial_tenant_due_diligence, land_investor_due_diligence, developer_predevelopment, environmental_research, short_term_rental_operations, data_center_development, agricultural_land_due_diligence, hoa_board_governance, property_owner_cost_relief, property_tax_appeal, utility_bill_relief, mortgage_servicing, disaster_recovery, permit_project_closeout, tax_delinquency_redemption. Natural-language phrases are also accepted and normalized, e.g. renting an apartment, buying a house, property-tax appeal, homeowner cost relief, utility bill credit, mortgage servicing, disaster recovery, permit closeout, tax-sale redemption, commercial lease, data-center development, agricultural land diligence, STR operations, HOA board review, or civic monitoring."}},"required":["place","intent"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_suggest_workflow","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_surrounding_parcels","canonicalId":"locus.surrounding.parcels","callName":"locus_surrounding_parcels","title":"Surrounding parcels: source-native topology plus nested distance rings","description":"Resolve a subject parcel, then return bounded county/state parcel context from explicit PARCEL_SOURCES geometry capabilities (AR statewide; Chatham County, NC; Clark County, NV; Dallas County, TX; Davidson County, TN; Iredell County, NC; Los Angeles County, CA; MT statewide; Maricopa County, AZ; NC statewide; Philadelphia County, PA; VT statewide; Wake County, NC): bounded centroid/source-point rings within 100 m, 250 m, 500 m, and 1,000 m; aggregate counts are null when the requested evidence window does not cover the full ring. Includes verified source-native topology only while the current topology release gate is active. When that gate is inactive, proximity remains available and exact topology is labeled release_gate_inactive. Mapped parcel contact groups verified edge_touch and point_touch while retaining each exact subtype. Only verified edge_touch is adjacent; point_touch is not. Generic Intersects stays geometry_intersection_unclassified. Point-only sources retain proximity with topology unsupported. No owner/mailing fields, assessed-value aggregates, common-ownership inference, development probability, neighborhood score, or value prediction.","tier":"free","rail":"free","category":"infrastructure","tags":["parcels","property","county","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":3,"maxLength":300,"description":"Required US street address for the subject parcel."},"mode":{"default":"topology_and_rings","description":"Independent source-native topology plus nested 100 m, 250 m, 500 m, and 1,000 m proximity rings that are reported only when the requested evidence window covers the full ring.","type":"string","const":"topology_and_rings"},"radiusMeters":{"default":500,"description":"Maximum centroid-distance ring in meters. Use 100 or 200 for compact urban adjacency windows, 500 by default, and at most 1000.","type":"integer","minimum":100,"maximum":1000},"maxParcels":{"default":50,"description":"Maximum surrounding parcels returned; hard cap 50.","type":"integer","minimum":1,"maximum":50}},"required":["address","mode","radiusMeters","maxParcels"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_surrounding_parcels","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_tax_calendar","canonicalId":"locus.tax.calendar","callName":"locus_tax_calendar","title":"Property tax lifecycle calendar (deadlines)","description":"The dated obligations around property taxes for a US county: the STABLE statutory framework (reappraisal cadence, appeal/protest window, bill/delinquency rules, relief deadlines) cited to the state tax code, PLUS a pointer to the county's official source and a web-search prompt to fetch THIS year's exact county dates live (those reset annually and are set per jurisdiction, so Locus does not store them). Verified prior-cycle county dates are included where Locus has curated them (NC). Use when the user asks about tax deadlines, an appeal/protest window, or when bills are due. State framework: North Carolina, Texas, District of Columbia, California, Florida, New York, Alabama, Alaska, Arkansas, Arizona, Colorado, Connecticut, Delaware, Georgia, Hawaii, Idaho, Illinois, Indiana, Iowa, Kansas, Kentucky, Louisiana, Maine, Maryland, Massachusetts, Michigan, Minnesota, Mississippi, Missouri, Montana, Nebraska, Nevada, New Hampshire, New Jersey, New Mexico, North Dakota, Ohio, Oklahoma, Oregon, Pennsylvania, Rhode Island, South Carolina, South Dakota, Tennessee, Utah, Vermont, Virginia, Washington, West Virginia, Wisconsin, and Wyoming; verified county overlay: Wake, Durham, Iredell, Mecklenburg, Guilford, Forsyth, New Hanover, Buncombe, Cumberland, Union, Gaston, Cabarrus, and Johnston. Provide a county + state (e.g. \"Harris County, TX\") or a full address.","tier":"free","rail":"free","category":"infrastructure","tags":["taxes","deadlines","ownership-loop","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"county":{"description":"County name, optionally with state, e.g. \"Harris County, TX\" or \"Wake County, NC\".","type":"string","minLength":3,"maxLength":80},"state":{"description":"Two-letter state abbreviation (e.g. TX, NC) to disambiguate a county name.","type":"string","minLength":2,"maxLength":2},"address":{"description":"Alternative to county+state: a full street address or ZIP to resolve the governing county.","type":"string","minLength":5,"maxLength":200},"year":{"description":"Tax year for the live-lookup prompt; defaults to the current year.","type":"integer","minimum":2000,"maximum":2100}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_tax_calendar","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_tax_distress","canonicalId":"locus.tax.distress","callName":"locus_tax_distress","title":"Reported tax/foreclosure distress COUNT + breakdown near a point (wired counties; free preview)","description":"FREE preview of nearby parcels with a REPORTED public-record tax or foreclosure status near a point — tax delinquency, tax-lien sale, tax/mortgage foreclosure, sheriff sale, tax auction — from wired official county/treasurer/sheriff GIS sources. Returns COVERAGE + a nearby COUNT + a distress-type breakdown (byType), NOT the itemized records: the per-record site address, amount owed, and parcel id are the paid locus-tax-liens lookup. Use when the user asks whether/how many tax-distressed, delinquent, foreclosure, tax-sale, or sheriff-sale properties are near an address in a covered county. Coverage (registry-derived): Pinal County, AZ (tax delinquency); Yavapai County, AZ (tax-lien sale); Shasta County, CA (tax auction); Orange County, FL (mortgage foreclosure); Dakota County, MN (mortgage foreclosure); Craven County, NC (tax foreclosure); Allen County, OH (tax delinquency); Franklin County, OH (tax foreclosure, tax delinquency); Mahoning County, OH (tax delinquency); Stark County, OH (tax delinquency); Horry County, SC (tax delinquency); Bexar County, TX (tax foreclosure, mortgage foreclosure); Cache County, UT (tax delinquency); Milwaukee County, WI (sheriff sale). Outside coverage it returns an explicit out_of_coverage with the supported scope. NEVER an owner/redemption/party name, and NEVER a 'distressed'/'deal'/'buy'/investment verdict or characterization beyond the cited public-record status. Filings are procedural — a parcel may be redeemed, paid, dismissed, or already sold. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["tax-distress","foreclosure","delinquent","parcels","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 1500, max 8000.","type":"integer","minimum":100,"maximum":8000},"distressTypes":{"description":"Optional filter to specific distress families (delinquent, tax_lien_sale, tax_foreclosure, mortgage_foreclosure, sheriff_sale, tax_auction, land_forfeiture); omit for all wired families.","type":"array","items":{"type":"string","enum":["delinquent","tax_lien_sale","tax_foreclosure","mortgage_foreclosure","sheriff_sale","tax_auction","land_forfeiture"]}}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_tax_distress","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-tax-liens","canonicalId":"locus.tax.liens","callName":"locus-tax-liens","tier":"paid","endpoint":"https://api.locus.report/api/locus-tax-liens"}]},{"catalogId":"paid:locus-tax-liens","canonicalId":"locus.tax.liens","callName":"locus-tax-liens","title":"Reported tax/foreclosure distress COUNT + breakdown near a point (wired counties; free preview)","description":"Itemized tax-distress records near an address. Perfect for: 'tax delinquent properties near', 'tax lien parcels', 'distressed property records', 'foreclosure and sheriff-sale properties near an address'. Returns full public-record rows (site address, amount owed, parcel id, status, date, distress type, citation) from wired county/treasurer/sheriff sources. Public record, PII-safe: no owner names. Records only, never a deal/buy verdict. Charge-free when out of coverage or no records nearby.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["tax-distress","foreclosure","delinquent","parcels","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-tax-liens","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 1500, max 8000.","type":"integer","minimum":100,"maximum":8000},"distressTypes":{"description":"Optional filter to specific distress families (delinquent, tax_lien_sale, tax_foreclosure, mortgage_foreclosure, sheriff_sale, tax_auction, land_forfeiture); omit for all wired families.","type":"array","items":{"type":"string","enum":["delinquent","tax_lien_sale","tax_foreclosure","mortgage_foreclosure","sheriff_sale","tax_auction","land_forfeiture"]}}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-tax-liens.json","naming":{"style":"hyphen-paid-route","executableName":"locus-tax-liens","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_tax_distress","canonicalId":"locus.tax.distress","callName":"locus_tax_distress","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_tax_sale_calendar","canonicalId":"locus.tax.sale.calendar","callName":"locus_tax_sale_calendar","title":"Cited tax-sale and redemption calendar","description":"Return cited tax-sale, lien-sale, delinquency, and redemption rules plus exact published dates for a resolved US place. Past-only dated rows are marked needsRefresh and are never presented as the next sale. No parcel sale eligibility, payment status, title conclusion, or legal advice. Registry-backed, free and read-only.","tier":"free","rail":"free","category":"parcels","tags":["property-tax","tax-sale","owner-programs","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address used to resolve state and county tax-sale rows.","type":"string","minLength":1,"maxLength":200},"place":{"description":"Optional US county, city, state, ZIP, or address.","type":"string","minLength":1,"maxLength":200},"asOf":{"description":"Optional ISO date YYYY-MM-DD; defaults to today's UTC date.","type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"withinDays":{"default":400,"description":"Days after asOf to include in upcomingDates; default 400, maximum 800.","type":"integer","minimum":1,"maximum":800}},"required":["withinDays"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_tax_sale_calendar","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_taxing_districts","canonicalId":"locus.taxing.districts","callName":"locus_taxing_districts","title":"Census jurisdiction boundaries for property-tax context: county, municipality, school district (national)","description":"Perfect for: 'which school district / city / county is this address in', 'what jurisdictions cover this property', 'taxing-context jurisdictions for a parcel'. Returns the MAJOR Census jurisdiction BOUNDARIES containing the point — county, incorporated municipality (if any), and school district(s) — from U.S. Census TIGERweb, with school district NCES CCD directory context (enrollment, school count, grade span, student-teacher ratio when available) via the Urban Institute Education Data Portal. NATIONAL (any US address). These are geographic boundaries relevant to property-tax context, NOT proof each levies a tax and NOT an exhaustive list: RATES are excluded (use locus_property_tax_rates or paid locus-property-tax), and special districts (MUD/fire/hospital/water) + townships are NOT in Census TIGER (check the county appraisal district). NCES facts are directory facts only, not school quality ratings; Locus does not rate schools. Per-layer componentStatus flags a failed lookup vs a genuine 'none'. Facts only, never a tax bill, estimate, rating, or verdict. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["tax-context","districts","jurisdictions","national","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_taxing_districts","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_terrain_profile","canonicalId":"locus.terrain.profile","callName":"locus_terrain_profile","title":"Elevation and sampled terrain profile (USGS EPQS / 3DEP)","description":"Return USGS EPQS interpolated elevation at a US address/point plus four sampled cardinal transect elevations and simple sampled slopes. Use for early terrain context only: never a survey, contour map, drainage analysis, grading plan, or engineering conclusion. National. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["terrain","elevation","slope","usgs","3dep","site-feasibility","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address. Provide this or latitude+longitude.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Decimal latitude; provide with longitude.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Decimal longitude; provide with latitude.","type":"number","minimum":-180,"maximum":180},"transectMeters":{"description":"Distance from the point to each cardinal terrain sample; defaults to 100 meters.","type":"integer","minimum":25,"maximum":1000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_terrain_profile","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_toxic_releases","canonicalId":"locus.toxic.releases","callName":"locus_toxic_releases","title":"Toxic release reporting facilities (EPA TRI)","description":"Return EPA TRI reporting facilities in a county, verbatim with per-facility detail links, plus verify links for event-style spill/derailment history (NRC, PHMSA). Use when the user asks about polluters, toxic releases, or chemical-reporting facilities near a place. National by address, place, point, or state+county. Reports, not incidence, never a safety verdict, score, or exposure finding. Read-only.","tier":"free","rail":"free","category":"environmental","tags":["environment","hazardous-materials","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"place":{"description":"Optional US street address or unambiguous place; used to derive state+county when explicit state+county are not provided.","type":"string","minLength":2,"maxLength":200},"state":{"description":"Optional two-letter state code, e.g. NC; provide with county to skip point/place resolution.","type":"string","minLength":2,"maxLength":2},"county":{"description":"Optional county name, e.g. Wake or Wake County; provide with state to skip point/place resolution.","type":"string","minLength":3,"maxLength":60}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_toxic_releases","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-toxic-releases","canonicalId":"locus.toxic.releases","callName":"locus-toxic-releases","tier":"paid","endpoint":"https://api.locus.report/api/locus-toxic-releases"}]},{"catalogId":"paid:locus-toxic-releases","canonicalId":"locus.toxic.releases","callName":"locus-toxic-releases","title":"Toxic release reporting facilities (EPA TRI)","description":"EPA TRI toxic-release facilities for an address, place, point, or state+county. Returns TRI reporting facilities with detail links plus NRC/PHMSA verify links for event history. National via EPA Envirofacts; explicit state+county remains supported. Reporting context only, not exposure or a safety verdict. Charge-free on EPA lookup failure.","tier":"paid","rail":"promoted-free-dual","category":"environmental","tags":["environment","hazardous-materials","read-only","paid","x402","category:environmental"],"endpoint":"https://api.locus.report/api/locus-toxic-releases","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"place":{"description":"Optional US street address or unambiguous place; used to derive state+county when explicit state+county are not provided.","type":"string","minLength":2,"maxLength":200},"state":{"description":"Optional two-letter state code, e.g. NC; provide with county to skip point/place resolution.","type":"string","minLength":2,"maxLength":2},"county":{"description":"Optional county name, e.g. Wake or Wake County; provide with state to skip point/place resolution.","type":"string","minLength":3,"maxLength":60}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-toxic-releases.json","naming":{"style":"hyphen-paid-route","executableName":"locus-toxic-releases","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_toxic_releases","canonicalId":"locus.toxic.releases","callName":"locus_toxic_releases","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_traffic_crash_context","canonicalId":"locus.traffic.crash.context","callName":"locus_traffic_crash_context","title":"Aggregate traffic-crash context by radius, severity, and mode","description":"Return small-cell-suppressed police-reported crash counts for bounded 200-1,000m radii and recent windows. Coverage: Chicago all-reported; Virginia reportable-threshold; North Carolina partial subsets (K+A and nonmotorist); Pikes Peak region reportable-threshold; nationwide FARS fatal-only companion. Every source names its severity class, geography, available years/lag, and official provenance. North Carolina subsets remain separate and FARS remains fatal-only. No examples, raw rows, exact crash points, party details, score, forecast, or place verdict. National fallback, free, read-only.","tier":"free","rail":"free","category":"safety","tags":["traffic","crashes","transportation","aggregate","safety","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address. Localized coverage is derived from the crash-source registry: Chicago all-reported; Virginia reportable-threshold; North Carolina partial subsets (K+A and nonmotorist); Pikes Peak region reportable-threshold; nationwide FARS fatal-only companion. Provide this or latitude+longitude.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Decimal latitude; provide with longitude. The response never returns the exact query point.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Decimal longitude; provide with latitude. The response never returns the exact query point.","type":"number","minimum":-180,"maximum":180},"radiiMeters":{"default":[200,500,1000],"description":"One to three bounded radii in meters; each must be 200-1,000. Defaults to 200, 500, and 1,000.","minItems":1,"maxItems":3,"type":"array","items":{"type":"integer","minimum":200,"maximum":1000}},"lookbackYears":{"default":3,"description":"Recent calendar lookback in years; defaults to 3 and is capped at 10. A source's actual available years still control.","type":"integer","minimum":1,"maximum":10}},"required":["radiiMeters","lookbackYears"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_traffic_crash_context","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-traffic-crash-context","canonicalId":"locus.traffic.crash.context","callName":"locus-traffic-crash-context","tier":"paid","endpoint":"https://api.locus.report/api/locus-traffic-crash-context"}]},{"catalogId":"paid:locus-traffic-crash-context","canonicalId":"locus.traffic.crash.context","callName":"locus-traffic-crash-context","title":"Aggregate traffic-crash context by radius, severity, and mode","description":"Aggregate traffic-crash context near an address. Perfect for: 'traffic crashes near this property', 'pedestrian or bicycle crash counts nearby', 'fatal crash context around an address'. Returns small-cell-suppressed official aggregates with explicit severity classes: local sources where wired plus nationwide FARS fatal-only fallback. Not route exposure, a forecast, score, or place verdict. Charge-free unless at least one count survives small-cell suppression.","tier":"paid","rail":"promoted-free-dual","category":"safety","tags":["traffic","crashes","transportation","aggregate","safety","read-only","paid","x402","category:safety"],"endpoint":"https://api.locus.report/api/locus-traffic-crash-context","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address. Localized coverage is derived from the crash-source registry: Chicago all-reported; Virginia reportable-threshold; North Carolina partial subsets (K+A and nonmotorist); Pikes Peak region reportable-threshold; nationwide FARS fatal-only companion. Provide this or latitude+longitude.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Decimal latitude; provide with longitude. The response never returns the exact query point.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Decimal longitude; provide with latitude. The response never returns the exact query point.","type":"number","minimum":-180,"maximum":180},"radiiMeters":{"default":[200,500,1000],"description":"One to three bounded radii in meters; each must be 200-1,000. Defaults to 200, 500, and 1,000.","minItems":1,"maxItems":3,"type":"array","items":{"type":"integer","minimum":200,"maximum":1000}},"lookbackYears":{"default":3,"description":"Recent calendar lookback in years; defaults to 3 and is capped at 10. A source's actual available years still control.","type":"integer","minimum":1,"maximum":10}},"required":["radiiMeters","lookbackYears"],"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-traffic-crash-context.json","naming":{"style":"hyphen-paid-route","executableName":"locus-traffic-crash-context","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_traffic_crash_context","canonicalId":"locus.traffic.crash.context","callName":"locus_traffic_crash_context","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"paid:locus-transaction-follow-up","canonicalId":"locus.transaction.follow.up","callName":"locus-transaction-follow-up","title":"Transaction Follow-Up Evidence Check","description":"Build one cited public-record follow-up packet after the caller explicitly confirms a homebuyer, land-investor, developer-predevelopment, or commercial-tenant profile. A typed registry controls the evidence include-list and charge threshold. No readiness, suitability, approval, value, access, capacity, occupancy, or closing verdict; thin evidence is charge-free. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"reports","tags":["transaction","follow-up","homebuyer","land","pre-development","commercial-lease","due-diligence","reports","x402","category:reports"],"endpoint":"https://api.locus.report/api/locus-transaction-follow-up","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":240},"intent":{"type":"string","enum":["homebuyer_due_diligence","land_investor_due_diligence","developer_predevelopment","commercial_tenant_due_diligence"]},"transactionStage":{"type":"string","enum":["early_screen","under_contract","pre_closing","pre_lease","pre_application"]},"projectArchetype":{"type":"string","enum":["residential","vacant_land","multifamily","retail","restaurant","office","industrial","logistics","mixed_use","other"]},"requestedAreaContext":{"description":"Optional area context to attach for commercial-tenant diligence. It never counts toward the premises-evidence charge threshold.","maxItems":1,"type":"array","items":{"type":"string","enum":["workplace_employment"]}},"statedUse":{"description":"Caller-supplied question-framing context only; never treated as an official fact or proof the use is allowed.","type":"string","minLength":1,"maxLength":160},"projectType":{"description":"Caller-supplied question-framing context only; does not select evidence tools.","type":"string","minLength":1,"maxLength":160},"suiteOrUnit":{"description":"Caller-supplied premises precision. Without this, occupancy evidence remains parcel- or building-level.","type":"string","minLength":1,"maxLength":80}},"required":["address","intent"],"additionalProperties":false},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"transaction_follow_up"},"charged":{"type":"boolean","const":false},"state":{"type":"string","enum":["follow_up_items_found","checked_no_follow_up_items_in_answered_components","incomplete_evidence","source_unavailable"]},"intent":{"type":"string","enum":["homebuyer_due_diligence","land_investor_due_diligence","developer_predevelopment","commercial_tenant_due_diligence"]},"profileTitle":{"type":"string"},"subject":{"type":"object","properties":{},"additionalProperties":{}},"callerContext":{"type":"object","properties":{},"additionalProperties":{}},"groups":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"threshold":{"type":"object","properties":{"met":{"type":"boolean"},"answeredComponents":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"answeredGroups":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"missing":{"type":"array","items":{"type":"string"}}},"required":["met","answeredComponents","answeredGroups","missing"],"additionalProperties":false},"followUpItems":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"unansweredQuestions":{"type":"array","items":{"type":"string"}},"handoffs":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"timeline":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"caveats":{"type":"array","items":{"type":"string"}},"boundary":{"type":"string"}},"required":["kind","state","intent","profileTitle","subject","callerContext","groups","threshold","followUpItems","unansweredQuestions","handoffs","timeline","caveats","boundary"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"generatedAt":{"type":"string"},"summary":{"type":"string"},"queriedAddress":{"type":"string"},"reportType":{"type":"string"},"responseMode":{"type":"string","const":"compact"},"artifact":{"type":"object","properties":{"reportId":{"type":"string"},"canonicalHash":{"type":"string","pattern":"^[0-9a-f]{64}$"},"available":{"type":"boolean"},"access":{"type":"string"}},"required":["reportId","canonicalHash","available","access"],"additionalProperties":false},"transactionFollowUp":{"type":"object","properties":{"kind":{"type":"string","const":"transaction_follow_up"},"charged":{"type":"boolean","const":false},"state":{"type":"string","enum":["follow_up_items_found","checked_no_follow_up_items_in_answered_components","incomplete_evidence","source_unavailable"]},"intent":{"type":"string","enum":["homebuyer_due_diligence","land_investor_due_diligence","developer_predevelopment","commercial_tenant_due_diligence"]},"profileTitle":{"type":"string"},"subject":{"type":"object","properties":{},"additionalProperties":{}},"callerContext":{"type":"object","properties":{},"additionalProperties":{}},"groups":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"threshold":{"type":"object","properties":{"met":{"type":"boolean"},"answeredComponents":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"answeredGroups":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"missing":{"type":"array","items":{"type":"string"}}},"required":["met","answeredComponents","answeredGroups","missing"],"additionalProperties":false},"followUpItems":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"unansweredQuestions":{"type":"array","items":{"type":"string"}},"handoffs":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"timeline":{"type":"array","items":{"type":"object","properties":{},"additionalProperties":{}}},"caveats":{"type":"array","items":{"type":"string"}},"boundary":{"type":"string"}},"required":["kind","state","intent","profileTitle","subject","callerContext","groups","threshold","followUpItems","unansweredQuestions","handoffs","timeline","caveats","boundary"],"additionalProperties":false}},"required":["id","generatedAt","summary","queriedAddress","reportType","responseMode","artifact","transactionFollowUp"],"additionalProperties":{}}]},"priceUsdc":"0.10","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-transaction-follow-up.json","naming":{"style":"hyphen-paid-route","executableName":"locus-transaction-follow-up","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_transit_context","canonicalId":"locus.transit.context","callName":"locus_transit_context","title":"Transit stops + routes near a point (wired transit agencies)","description":"Return transit-agency bus stops and deduped routes near a point, including stop amenities and headway frequencies from official GIS layers. Use when the user asks about bus stops, transit, or public-transit access near an address in a covered service area. Coverage (registry-derived): GoRaleigh service area (Wake County, NC); MTA New York City Transit (bus) service area (New York County / Kings County / Queens County / Bronx County / Richmond County, NY); LA Metro service area (Los Angeles County, CA); Houston METRO service area (Harris County, TX); CATS (Charlotte Area Transit System) service area (Mecklenburg County, NC); Miami-Dade Transit (DTPW) service area (Miami-Dade County, FL); WeGo Public Transit service area (Davidson County, TN); WMATA Metrobus service area (District of Columbia, DC); DART (Dallas Area Rapid Transit) service area (Dallas County, TX); SEPTA service area (Philadelphia County, PA); MARTA service area (Fulton County / DeKalb County / Clayton County, GA); VIA Metropolitan Transit service area (Bexar County, TX); King County Metro service area (King County, WA); Valley Metro (City of Phoenix stops) service area (Maricopa County, AZ); PPACG regional transit providers service area (El Paso County, CO); RTD (Denver Regional Transportation District) service area (Denver County, CO). Outside coverage it returns an explicit out_of_coverage with the supported scope. Mapped service facts only, never a commute, accessibility, safety, or livability verdict. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["transit","transportation","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 400, max 2000.","type":"integer","minimum":100,"maximum":2000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_transit_context","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-transit-context","canonicalId":"locus.transit.context","callName":"locus-transit-context","tier":"paid","endpoint":"https://api.locus.report/api/locus-transit-context"}]},{"catalogId":"paid:locus-transit-context","canonicalId":"locus.transit.context","callName":"locus-transit-context","title":"Transit stops + routes near a point (wired transit agencies)","description":"Transit-agency stops and routes near an address (coverage: 16 wired transit agencies across NC/NY/CA/TX/FL/TN/DC/PA/GA/WA/AZ/CO). Perfect for: 'bus stops near an address', 'transit routes nearby', 'is there public transit near this property'. Returns nearby stops with amenity fields plus deduped routes within the search radius. Geo-gated to the transit-agency registry. Factual proximity, not a service-quality rating. Charge-free when out of coverage or the address fails to resolve.","tier":"paid","rail":"promoted-free-dual","category":"infrastructure","tags":["transit","transportation","read-only","paid","x402","category:infrastructure"],"endpoint":"https://api.locus.report/api/locus-transit-context","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 400, max 2000.","type":"integer","minimum":100,"maximum":2000}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-transit-context.json","naming":{"style":"hyphen-paid-route","executableName":"locus-transit-context","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_transit_context","canonicalId":"locus.transit.context","callName":"locus_transit_context","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_transportation_context","canonicalId":"locus.transportation.context","callName":"locus_transportation_context","title":"Funded road projects + traffic counts (state DOT)","description":"Return the state DOT's funded/programmed road projects (STIP / UTP / SB1 delivery) and official AADT traffic-count stations near a point, with project ids and provenance. Routes to the right state DOT automatically (full project+traffic: CA, CO, CT, FL, MA, NC, NY, PA, RI, TX, VA, WA; traffic-only: AZ, IL, IN, KY, MD, MI, MN, NJ, OH, OK, OR, SC, TN, UT, WI); unwired states return a clean not-covered result. Use when the user asks about planned road work, road widening, funded transportation projects, or published AADT traffic counts near an address. Published plans and counts only, never a noise, safety, commute, or livability judgment. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["transportation","projects","property","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 2000, max 5000.","type":"integer","minimum":100,"maximum":5000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_transportation_context","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-transportation-context","canonicalId":"locus.transportation.context","callName":"locus-transportation-context","tier":"paid","endpoint":"https://api.locus.report/api/locus-transportation-context"}]},{"catalogId":"paid:locus-transportation-context","canonicalId":"locus.transportation.context","callName":"locus-transportation-context","title":"Funded road projects + traffic counts (state DOT)","description":"State DOT funded projects + traffic counts near an address. Perfect for: road projects nearby, DOT funded projects, traffic counts, AADT, planned highway work. Wired states: full project+traffic (CA, CO, CT, FL, MA, NC, NY, PA, RI, TX, VA, WA); traffic-only (AZ, IL, IN, KY, MD, MI, MN, NJ, OH, OK, OR, SC, TN, UT, WI). Covered zero answer is real. Charge-free out of coverage/failure.","tier":"paid","rail":"promoted-free-dual","category":"infrastructure","tags":["transportation","projects","property","read-only","paid","x402","category:infrastructure"],"endpoint":"https://api.locus.report/api/locus-transportation-context","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Optional search radius in meters around the point; default 2000, max 5000.","type":"integer","minimum":100,"maximum":5000}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-transportation-context.json","naming":{"style":"hyphen-paid-route","executableName":"locus-transportation-context","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_transportation_context","canonicalId":"locus.transportation.context","callName":"locus_transportation_context","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_underground_storage_tanks","canonicalId":"locus.underground.storage.tanks","callName":"locus_underground_storage_tanks","title":"Underground storage tanks + leaking-tank releases nearby (EPA UST Finder)","description":"EPA UST Finder records near a point: underground storage tank FACILITIES and reported leaking-tank (LUST) RELEASES, kept separate because they mean different things. Perfect for: 'was there a gas station here', 'any leaking underground tanks near this address', 'UST or LUST records for a property', 'petroleum contamination nearby'. Returns tank counts, facility status, release status, substance, reported date, and whether a closure left residual contamination, each with distance and the record's own coordinate precision. National by lat/lng or geocoded address. A registered tank is NOT a leak, and a closed release is NOT proof of clean soil. Awareness only - not a site assessment, contamination finding, or safe/unsafe conclusion. Read-only.","tier":"free","rail":"free","category":"environmental","tags":["environment","ust","lust","tanks","petroleum","epa","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"type":"integer","minimum":100,"maximum":5000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_underground_storage_tanks","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-underground-storage-tanks","canonicalId":"locus.underground.storage.tanks","callName":"locus-underground-storage-tanks","tier":"paid","endpoint":"https://api.locus.report/api/locus-underground-storage-tanks"}]},{"catalogId":"paid:locus-underground-storage-tanks","canonicalId":"locus.underground.storage.tanks","callName":"locus-underground-storage-tanks","title":"Underground storage tanks + leaking-tank releases nearby (EPA UST Finder)","description":"EPA UST Finder tank facilities and leaking-tank releases near an address. Perfect for: 'was there a gas station here', 'underground storage tanks near this property', 'LUST releases nearby'. Returns facility and release records separately with component health and summary counts. A tank is not a leak; proximity is not parcel contamination, exposure, or liability. A verified zero is chargeable; a dual-layer outage is charge-free.","tier":"paid","rail":"promoted-free-dual","category":"environmental","tags":["environment","ust","lust","tanks","petroleum","epa","read-only","paid","x402","category:environmental"],"endpoint":"https://api.locus.report/api/locus-underground-storage-tanks","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"type":"integer","minimum":100,"maximum":5000}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-underground-storage-tanks.json","naming":{"style":"hyphen-paid-route","executableName":"locus-underground-storage-tanks","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_underground_storage_tanks","canonicalId":"locus.underground.storage.tanks","callName":"locus_underground_storage_tanks","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_unemployment","canonicalId":"locus.unemployment","callName":"locus_unemployment","title":"County unemployment rate (BLS LAUS)","description":"Return the recent county unemployment rate trend (BLS Local Area Unemployment Statistics, not seasonally adjusted) for an address/point. A REPORTED statistic only — Locus never labels an area's economy good, bad, strong, or weak. National. Read-only.","tier":"free","rail":"free","category":"economics","tags":["investors","unemployment","economy","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_unemployment","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-unemployment","canonicalId":"locus.unemployment","callName":"locus-unemployment","tier":"paid","endpoint":"https://api.locus.report/api/locus-unemployment"}]},{"catalogId":"paid:locus-unemployment","canonicalId":"locus.unemployment","callName":"locus-unemployment","title":"County unemployment rate (BLS LAUS)","description":"County unemployment rate for an address. Perfect for: 'unemployment rate for an area', 'county jobless rate', 'BLS unemployment stats for an address', 'local labor market data'. Returns recent BLS Local Area Unemployment Statistics (county-level, not seasonally adjusted) with a 6-month trend for the resolved county. National. A reported statistic only - not an economy verdict. Charge-free when the address fails to resolve or the BLS fetch fails.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["investors","unemployment","economy","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-unemployment","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-unemployment.json","naming":{"style":"hyphen-paid-route","executableName":"locus-unemployment","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_unemployment","canonicalId":"locus.unemployment","callName":"locus_unemployment","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_utility_credits","canonicalId":"locus.utility.credits","callName":"locus_utility_credits","title":"Cited utility credits and infrastructure cost-share programs","description":"Return registry-backed utility credits, energy rebates, lead service-line programs, sidewalk cost-share programs, and flood-protection rebates for a resolved US place. Includes a jurisdiction-locked official-source query pack for uncovered places. No individual determination, recommendation, or savings estimate.","tier":"free","rail":"free","category":"infrastructure","tags":["owner-programs","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address or ZIP used to resolve state, county, and city program rows.","type":"string","minLength":1,"maxLength":200},"place":{"description":"US city, county, state, ZIP, or address used to resolve program rows.","type":"string","minLength":1,"maxLength":200}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_utility_credits","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-utility-credits","canonicalId":"locus.utility.credits","callName":"locus-utility-credits","tier":"paid","endpoint":"https://api.locus.report/api/locus-utility-credits"}]},{"catalogId":"paid:locus-utility-credits","canonicalId":"locus.utility.credits","callName":"locus-utility-credits","title":"Cited utility credits and infrastructure cost-share programs","description":"Cited utility credits and infrastructure cost-share programs for a US place. Perfect for: 'stormwater fee credit', 'lead service-line replacement', 'sidewalk cost share', 'rain barrel rebate'. Returns local registry rows plus a jurisdiction-locked official-source query pack. No eligibility or savings estimate. Charge-free when no registry row returns.","tier":"paid","rail":"promoted-free-dual","category":"economics","tags":["owner-programs","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-utility-credits","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address or ZIP used to resolve state, county, and city program rows.","type":"string","minLength":1,"maxLength":200},"place":{"description":"US city, county, state, ZIP, or address used to resolve program rows.","type":"string","minLength":1,"maxLength":200}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-utility-credits.json","naming":{"style":"hyphen-paid-route","executableName":"locus-utility-credits","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_utility_credits","canonicalId":"locus.utility.credits","callName":"locus_utility_credits","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_utility_service_check","canonicalId":"locus.utility.service.check","callName":"locus_utility_service_check","title":"Water/sewer public service-area screen (county-scoped)","description":"Check whether an address/point is inside mapped public water and sewer service-area polygons. Coverage: Durham County, NC; Gwinnett County, GA; Travis County, TX; Wake County, NC. Returns waterService and sewerService as public, no_public_service_mapped, or out_of_coverage; provider names when a PII-safe layer field carries them; componentStatus flags upstream lookup failures so a failed layer is never read as 'none'. Absence from mapped public service is only an absence screen — Locus never claims private well or septic as fact; verify with county environmental health and utility providers. Read-only.","tier":"free","rail":"free","category":"environmental","tags":["utilities","water","sewer","septic-screen","county","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_utility_service_check","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"paid:locus-valuation-challenge","canonicalId":"locus.valuation.challenge","callName":"locus-valuation-challenge","title":"Challenge a caller-supplied property price","description":"Stress-test a caller-supplied property price or assessment notice for one US address against cited recorded-sales, parcel, permit, hazard, tax, zoning, legislation, and same-roll assessment-uniformity evidence in protest mode; Locus never creates or endorses a price, ARV, deal judgment, or investment score, and the result is charge-free if under two substantive sections resolve. Install agent skill: npx @velinussage/locus-agent-skill add.","tier":"paid","rail":"native","category":"economics","tags":["data","search","real-estate","property","property-research","due-diligence","public-records","x402","proposed-price","price-challenge","recorded-sales","parcel-facts","due-diligence","category:economics"],"endpoint":"https://api.locus.report/api/locus-valuation-challenge","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":200,"description":"US street address for the subject property."},"proposedValue":{"type":"number","exclusiveMinimum":0,"description":"The caller's own proposed price/figure in USD. Locus echoes it but never creates or endorses it."},"source":{"type":"string","enum":["zestimate","appraisal","bpo","own","assessment_notice"],"description":"Caller-supplied origin for the proposed figure; use assessment_notice for an assessor or appraisal-district notice."},"noticeYear":{"default":1970,"description":"Tax year of the assessment notice; defaults to the current year.","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"purpose":{"default":"purchase","description":"Use protest to request the same-roll assessment-uniformity section; defaults to purchase.","type":"string","enum":["purchase","protest"]},"radiusMeters":{"description":"Optional comps radius; default 1500m, max 1500m.","type":"integer","minimum":100,"maximum":1500},"monthsBack":{"description":"Optional comps lookback; default 24 months, max 24.","type":"integer","minimum":1,"maximum":24}},"required":["address","proposedValue","source","noticeYear","purpose"],"additionalProperties":false,"description":"US street address plus the caller-supplied price or assessment-notice figure, source, tax year, and purpose. Protest or assessment-notice mode attempts a same-roll assessment-uniformity section; Locus echoes the figure but never creates or endorses a property number."},"outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"kind":{"type":"string","const":"proposed_price_challenge"},"generatedAt":{"type":"string"},"address":{"type":"string"},"submittedFigure":{"type":"object","properties":{"amountUsd":{"type":"number"},"source":{"type":"string","enum":["zestimate","appraisal","bpo","own","assessment_notice"]},"sourceTag":{"type":"string","enum":["caller_submitted","third_party_model","appraisal","broker_opinion","assessment_notice"]},"caveat":{"type":"string"}},"required":["amountUsd","source","sourceTag","caveat"],"additionalProperties":false},"factualComparison":{"type":"object","properties":{"submittedFigurePosition":{"type":"string","enum":["below_all_recorded","within_recorded_range","above_all_recorded","mixed_vs_subject_traits","insufficient_recorded_sales"]},"comparableCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"thinComps":{"type":"boolean"}},"required":["submittedFigurePosition","comparableCount","thinComps"],"additionalProperties":false},"sections":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"direction":{"type":"string","enum":["supports","challenges","neutral"]},"evidence":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"text":{"type":"string"},"recordAmountUsd":{"type":"number"},"recordDate":{"type":"string"},"recordId":{"type":"string"},"citation":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"recordId":{"type":"string"},"fetchedAt":{"type":"string"}},"required":["sourceName"],"additionalProperties":false}},"required":["label","text"],"additionalProperties":{}}},"citations":{"type":"array","items":{"type":"object","properties":{"sourceName":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"recordId":{"type":"string"},"fetchedAt":{"type":"string"}},"required":["sourceName"],"additionalProperties":false}}},"required":["id","title","direction","evidence","citations"],"additionalProperties":{}}},"componentStatus":{"type":"array","items":{"type":"object","properties":{"component":{"type":"string"},"status":{"type":"string"},"detail":{"type":"string"}},"required":["component","status"],"additionalProperties":false}},"caveats":{"type":"array","items":{"type":"string"}},"verifyNext":{"type":"array","items":{"type":"object","properties":{"step":{"type":"string"},"url":{"type":"string"},"source":{"type":"string"}},"required":["step"],"additionalProperties":{}}},"workflowHandoff":{"type":"object","properties":{"task":{"type":"string","const":"file_assessment_appeal"},"portalUrl":{"type":"string","format":"uri"},"portalKind":{"type":"string","enum":["efile","paper","efile_or_paper","unknown"]},"requiredInputs":{"type":"array","items":{"type":"string"}},"attachments":{"type":"array","items":{"type":"string"}},"providers":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"origin":{"type":"string","format":"uri"},"protocols":{"type":"array","items":{"type":"string","enum":["x402","mpp"]}},"entry":{"type":"string"},"pricingNote":{"type":"string"},"kind":{"type":"string","enum":["session","task_agent","step_list"]}},"required":["name","origin","protocols","entry","pricingNote","kind"],"additionalProperties":false}},"discovery":{"type":"object","properties":{"bazaar":{"type":"string","const":"https://agentcash.ai"},"query":{"type":"string","const":"browser automation fill and submit web forms"},"note":{"type":"string"}},"required":["bazaar","query","note"],"additionalProperties":false},"disclaimer":{"type":"string"},"verifiedAt":{"type":"string","const":"2026-09-02"}},"required":["task","portalUrl","portalKind","requiredInputs","attachments","providers","discovery","disclaimer","verifiedAt"],"additionalProperties":false},"charged":{"type":"boolean","const":false}},"required":["kind","generatedAt","address","submittedFigure","factualComparison","sections","componentStatus","caveats","verifyNext"],"additionalProperties":{},"description":"A cited proposed-price challenge artifact. Sections contain evidence[], direction, and citations[]; any dollar figure is either caller-submitted or a cited public-record amount. charged:false when fewer than two substantive sections resolve."},"priceUsdc":"0.10","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-valuation-challenge.json","naming":{"style":"hyphen-paid-route","executableName":"locus-valuation-challenge","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_verify_citation","canonicalId":"locus.verify.citation","callName":"locus_verify_citation","title":"Verify citation provenance","description":"Verify a citation source URL against Locus source cards: official-host check plus normalized URL match to verified card provenance, status, and endpoint. Use when auditing whether a cited public-record source is recognized before trusting a report. Provenance verification only, it does not re-fetch the record or validate the fact.","tier":"free","rail":"free","category":"infrastructure","tags":["citations","provenance","verification","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sourceUrl":{"type":"string","minLength":1,"description":"Required citation source or dataset URL to match against official-source cards."},"recordId":{"description":"Optional citation record id; echoed back only for context.","type":"string"},"jurisdiction":{"description":"Optional jurisdiction id to narrow the source-card search, e.g. us-nc-raleigh.","type":"string"}},"required":["sourceUrl"],"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_verify_citation","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_water_systems","canonicalId":"locus.water.systems","callName":"locus_water_systems","title":"Drinking water systems (EPA SDWIS)","description":"Return active public water systems serving a county from EPA SDWIS via Envirofacts, with per-system ECHO violation-history links. Use when the user asks who supplies the drinking water or about water-system records for an area. National by address, place, point, or state+county. Regulatory records only, not a water-quality verdict, exposure finding, or safety score. Read-only.","tier":"free","rail":"free","category":"environmental","tags":["water","environment","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"place":{"description":"Optional US street address or unambiguous place; used to derive state+county when explicit state+county are not provided.","type":"string","minLength":2,"maxLength":200},"state":{"description":"Optional two-letter state code, e.g. NC; provide with county to skip point/place resolution.","type":"string","minLength":2,"maxLength":2},"county":{"description":"Optional county name, e.g. Wake or Wake County; provide with state to skip point/place resolution.","type":"string","minLength":3,"maxLength":60}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_water_systems","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-water-systems","canonicalId":"locus.water.systems","callName":"locus-water-systems","tier":"paid","endpoint":"https://api.locus.report/api/locus-water-systems"}]},{"catalogId":"paid:locus-water-systems","canonicalId":"locus.water.systems","callName":"locus-water-systems","title":"Drinking water systems (EPA SDWIS)","description":"EPA public water systems for an address, place, point, or state+county. Returns active SDWIS systems with type, population served, and ECHO violation links. National, no key; explicit state+county remains supported. Zero systems can be the real EPA answer. Charge-free when the lookup fails.","tier":"paid","rail":"promoted-free-dual","category":"environmental","tags":["water","environment","read-only","paid","x402","category:environmental"],"endpoint":"https://api.locus.report/api/locus-water-systems","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"place":{"description":"Optional US street address or unambiguous place; used to derive state+county when explicit state+county are not provided.","type":"string","minLength":2,"maxLength":200},"state":{"description":"Optional two-letter state code, e.g. NC; provide with county to skip point/place resolution.","type":"string","minLength":2,"maxLength":2},"county":{"description":"Optional county name, e.g. Wake or Wake County; provide with state to skip point/place resolution.","type":"string","minLength":3,"maxLength":60}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.05","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-water-systems.json","naming":{"style":"hyphen-paid-route","executableName":"locus-water-systems","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_water_systems","canonicalId":"locus.water.systems","callName":"locus_water_systems","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_water_utility_leak_adjustment_rules","canonicalId":"locus.water.utility.leak.adjustment.rules","callName":"locus_water_utility_leak_adjustment_rules","title":"Water-utility leak-adjustment rules","description":"Resolve an address or point against EPA public-water-system service-area boundaries and return cited leak-adjustment rules only for a caller-confirmed PWSID or an official provider-supplied boundary. EPA modeled matches remain candidates and never establish the serving utility. Current registry coverage: Chicago, Charlotte, and Philadelphia's explicit no-discount rule. No account eligibility, bill calculation, or legal advice. National candidate lookup, free and read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["water-utility","owner-programs","billing","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address used to find candidate public water systems.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip geocoding.","type":"number","minimum":-180,"maximum":180},"confirmedPwsid":{"description":"Optional caller-confirmed EPA Public Water System ID from a bill or utility. A supplied ID is labeled caller-confirmed and is not independently verified by Locus.","type":"string","minLength":4,"maxLength":24,"pattern":"^[A-Za-z0-9]+$"}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_water_utility_leak_adjustment_rules","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"free:locus_wetland_context","canonicalId":"locus.wetland.context","callName":"locus_wetland_context","title":"Mapped-wetland proximity and overlap evidence (FWS NWI)","description":"Query the national U.S. Fish & Wildlife Service National Wetlands Inventory for mapped-wetland overlap at a US address/point and mapped polygons within a selected nearby radius. Use for a first wetland-map screen before site work. Map evidence only: never a delineation, jurisdictional determination, parcel boundary, or permit decision. National. Read-only.","tier":"free","rail":"free","category":"infrastructure","tags":["wetlands","nwi","fws","environmental","site-feasibility","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address. Provide this or latitude+longitude.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Decimal latitude; provide with longitude.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Decimal longitude; provide with latitude.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Mapped-wetland proximity search radius in meters; defaults to 250.","type":"integer","minimum":25,"maximum":2000}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_wetland_context","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false}},{"catalogId":"paid:locus-wikimedia-commons-area-context","canonicalId":"locus.wikimedia.commons.area.context","callName":"locus-wikimedia-commons-area-context","title":"Nearby Wikimedia Commons area media context","description":"Geotagged Wikimedia Commons media with allowlisted item-level license metadata. Perfect for: reference research for a paid flyer, place narrative, landmark scan, or area-media shortlist. Returns source/image URLs plus license and attribution leads; Locus stores no pixels. Metadata is not reuse permission. Every item is nearby_context, never premises or condition proof. Charge-free when no eligible media returns or the source is unavailable.","tier":"paid","rail":"paid-atomic","category":"infrastructure","tags":["wikimedia","images","area-context","secondary-source","reference-research","national","read-only","paid","x402","category:infrastructure"],"endpoint":"https://api.locus.report/api/locus-wikimedia-commons-area-context","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address or named place to geocode when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"default":2000,"description":"Bounded Wikimedia Commons geosearch radius in meters; default 2000, minimum 100, maximum 5000.","type":"integer","minimum":100,"maximum":5000},"limit":{"default":15,"description":"Maximum nearby image records with allowlisted item-level license metadata returned; default 15, maximum 25.","type":"integer","minimum":1,"maximum":25}},"required":["radiusMeters","limit"],"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-wikimedia-commons-area-context.json","naming":{"style":"hyphen-paid-route","executableName":"locus-wikimedia-commons-area-context","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"paid:locus-wikipedia-place-context","canonicalId":"locus.wikipedia.place.context","callName":"locus-wikipedia-place-context","title":"Nearby geotagged Wikipedia reference context","description":"Geotagged English Wikipedia articles near a point. Perfect for: bounded community reference research with page, revision, distance, and license provenance. Geosearch is topic-agnostic and may return places, institutions, events, or people. Results are not official, property, resident, screening, or current-condition evidence. Charge-free when no article matches or the source is unavailable.","tier":"paid","rail":"paid-atomic","category":"infrastructure","tags":["wikipedia","history","places","secondary-source","reference-research","national","read-only","paid","x402","category:infrastructure"],"endpoint":"https://api.locus.report/api/locus-wikipedia-place-context","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"US street address or named place to geocode when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"default":1000,"description":"Bounded geosearch radius in meters; default 1000, minimum 100, maximum 10000.","type":"integer","minimum":100,"maximum":10000},"limit":{"default":10,"description":"Maximum geotagged English Wikipedia articles returned; default 10, maximum 20.","type":"integer","minimum":1,"maximum":20}},"required":["radiusMeters","limit"],"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-wikipedia-place-context.json","naming":{"style":"hyphen-paid-route","executableName":"locus-wikipedia-place-context","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_wildfire_history","canonicalId":"locus.wildfire.history","callName":"locus_wildfire_history","title":"Historical wildfire perimeters near a point (WFIGS interagency)","description":"Return WFIGS interagency historical wildfire perimeters within about 5 miles of a US point: incident name, feature category, acres, and discovery year where present. Use when the user asks about past wildfires or fire history near a place. Complements locus_wildfire_risk (the modeled FEMA NRI rating). Most non-Western points return no perimeters, which is the honest answer (out_of_coverage, not an error). National. Realized- event records only, never a risk score or safe/unsafe verdict. Read-only.","tier":"free","rail":"free","category":"hazard","tags":["wildfire","fire","hazard","history","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_wildfire_history","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-wildfire-history","canonicalId":"locus.wildfire.history","callName":"locus-wildfire-history","tier":"paid","endpoint":"https://api.locus.report/api/locus-wildfire-history"}]},{"catalogId":"paid:locus-wildfire-history","canonicalId":"locus.wildfire.history","callName":"locus-wildfire-history","title":"Historical wildfire perimeters near a point (WFIGS interagency)","description":"Historical wildfire perimeters for an address. Perfect for: 'past wildfires near this property', 'fire history for an address', 'historical wildfire perimeters', 'WFIGS fire records', 'has this area burned before'. Returns WFIGS interagency historical wildfire perimeters within ~5 miles of a US point: incident name, category, acres, and discovery year where present. National. Realized-event records only, not a risk score. Charge-free when out of coverage or no perimeters found.","tier":"paid","rail":"promoted-free-dual","category":"hazard","tags":["wildfire","fire","hazard","history","read-only","paid","x402","category:hazard"],"endpoint":"https://api.locus.report/api/locus-wildfire-history","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-wildfire-history.json","naming":{"style":"hyphen-paid-route","executableName":"locus-wildfire-history","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_wildfire_history","canonicalId":"locus.wildfire.history","callName":"locus_wildfire_history","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"free:locus_wildfire_risk","canonicalId":"locus.wildfire.risk","callName":"locus_wildfire_risk","title":"Wildfire risk at a point (FEMA National Risk Index)","description":"Return FEMA National Risk Index wildfire risk for the census tract at a point (rating, 0-100 score, annualized frequency, expected annual loss) for any US address, all 50 states. Use when the user asks about wildfire risk, fire hazard, or WUI exposure for a place. A relative hazard MODEL at tract level, never a per-property prediction, an insurance determination, or a safe/unsafe verdict. Read-only.","tier":"free","rail":"free","category":"hazard","tags":["wildfire","hazard","property","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_wildfire_risk","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-wildfire-risk","canonicalId":"locus.wildfire.risk","callName":"locus-wildfire-risk","tier":"paid","endpoint":"https://api.locus.report/api/locus-wildfire-risk"}]},{"catalogId":"paid:locus-wildfire-risk","canonicalId":"locus.wildfire.risk","callName":"locus-wildfire-risk","title":"Wildfire risk at a point (FEMA National Risk Index)","description":"FEMA wildfire risk rating for an address. Perfect for: 'wildfire risk for a property', 'is this address in a high fire-risk area', 'FEMA NRI wildfire rating', 'fire hazard for a parcel'. Returns the FEMA National Risk Index wildfire risk rating/score at the point, with source provenance. National. Not a fire-insurance quote or a safe/unsafe verdict. Charge-free when no wildfire score is available for the point.","tier":"paid","rail":"promoted-free-dual","category":"hazard","tags":["wildfire","hazard","property","read-only","paid","x402","category:hazard"],"endpoint":"https://api.locus.report/api/locus-wildfire-risk","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-wildfire-risk.json","naming":{"style":"hyphen-paid-route","executableName":"locus-wildfire-risk","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_wildfire_risk","canonicalId":"locus.wildfire.risk","callName":"locus_wildfire_risk","tier":"free","endpoint":"https://api.locus.report/tools/call"}]},{"catalogId":"paid:locus-workplace-employment-context","canonicalId":"locus.workplace.employment.context","callName":"locus-workplace-employment-context","title":"Workplace employment context from Census LODES","description":"Census LODES workplace jobs and broad industry sectors within a radius. Perfect for: commercial site selection, tenant diligence, daytime employment, and labor context near a selected site. Returns annual block-level aggregates only; excludes worker demographics. Jobs are not shoppers, visits, foot traffic, sales, demand, or a forecast. Charge-free when the state snapshot is missing, stale, unavailable, or no workplace block falls in the radius.","tier":"paid","rail":"paid-atomic","category":"economics","tags":["census","lodes","workplace","employment","storefront","site-selection","read-only","paid","x402","category:economics"],"endpoint":"https://api.locus.report/api/locus-workplace-employment-context","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180},"radiusMeters":{"description":"Radius in meters around the resolved point; default 1500.","type":"integer","minimum":250,"maximum":5000},"industrySectors":{"description":"Optional broad LODES industry-sector codes to include.","maxItems":20,"type":"array","items":{"type":"string","enum":["CNS01","CNS02","CNS03","CNS04","CNS05","CNS06","CNS07","CNS08","CNS09","CNS10","CNS11","CNS12","CNS13","CNS14","CNS15","CNS16","CNS17","CNS18","CNS19","CNS20"]}}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-workplace-employment-context.json","naming":{"style":"hyphen-paid-route","executableName":"locus-workplace-employment-context","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true}},{"catalogId":"free:locus_zoning","canonicalId":"locus.zoning","callName":"locus_zoning","title":"Zoning district + overlays at a point","description":"Return the current mapped zoning district + overlays at a point from the governing jurisdiction's official planning layer. Routes automatically to the right city/county zoning layer across wired jurisdictions (AZ, CA, CO, DC, FL, GA, IL, IN, MA, MD, MI, NC, NJ, NV, NY, OK, PA, SC, TN, TX, UT, WA, WI); Raleigh/Wake and Morrisville also return overlays and planning context. Unwired places return a clean not-covered result. Use for 'what is the zoning of this address', 'residential or commercial zoning', 'zoning code lookup'. Zoning is most decision-relevant as a CHANGE and relative to NEIGHBORS, so for 'is this parcel being rezoned', 'zoning changes near an address', or 'is nearby redevelopment changing this area', pair this with the companion free tools (locus_development_cases for active rezonings/site plans, locus_local_legislation for zoning/ADU/STR bills, locus_capital_projects for nearby public investment, locus_parcel_transfers for recently recorded sales nearby) — this tool returns the static district; those show what may change the zoning picture here. Map facts only, never legal advice, buildability approval, permitted-use determination, or value prediction. Read-only.","tier":"free","rail":"free","category":"parcels","tags":["zoning","property","read-only","free"],"endpoint":"https://api.locus.report/tools/call","method":"POST","bodyStyle":"wrapped","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"naming":{"style":"underscore-free-tool","executableName":"locus_zoning","rule":"Use this underscore name inside POST /tools/call as {name, arguments}."},"access":{"accountApiKeyRequired":false,"paymentRequired":false,"chargePossible":false,"unsupportedMayReturnFreeDiagnostic":false},"counterparts":[{"catalogId":"paid:locus-zoning","canonicalId":"locus.zoning","callName":"locus-zoning","tier":"paid","endpoint":"https://api.locus.report/api/locus-zoning"}]},{"catalogId":"paid:locus-zoning","canonicalId":"locus.zoning","callName":"locus-zoning","title":"Zoning district + overlays at a point","description":"Zoning district + overlays for an address. For 'what is the zoning', 'is this parcel being rezoned', 'zoning changes near an address', 'is nearby redevelopment changing this area'. Returns the official district/overlays from wired municipal/county layers. Zoning matters most as a CHANGE (rezonings, zoning bills) and vs NEIGHBORS; pair with development cases, legislation, capital projects, transfers. Not a buildability, variance, entitlement, or value ruling. Charge-free when out of coverage.","tier":"paid","rail":"promoted-free-dual","category":"parcels","tags":["zoning","property","read-only","paid","x402","category:parcels"],"endpoint":"https://api.locus.report/api/locus-zoning","method":"POST","bodyStyle":"flat-json","inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"address":{"description":"Optional US street address or place; NC uses AddressNC first, other areas use the national geocoder fallback when latitude/longitude are not provided.","type":"string","minLength":5,"maxLength":200},"latitude":{"description":"Optional decimal latitude; provide with longitude to skip address geocoding.","type":"number","minimum":-90,"maximum":90},"longitude":{"description":"Optional decimal longitude; provide with latitude to skip address geocoding.","type":"number","minimum":-180,"maximum":180}},"additionalProperties":false},"outputSchema":{"type":"object","additionalProperties":true},"priceUsdc":"0.01","nativeX402Networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"manifestUrl":"https://api.locus.report/.well-known/ai-tool/locus-zoning.json","naming":{"style":"hyphen-paid-route","executableName":"locus-zoning","rule":"Use this hyphenated slug in POST /api/<slug> with a flat JSON body."},"access":{"accountApiKeyRequired":false,"paymentRequired":true,"chargePossible":true,"unsupportedMayReturnFreeDiagnostic":true},"counterparts":[{"catalogId":"free:locus_zoning","canonicalId":"locus.zoning","callName":"locus_zoning","tier":"free","endpoint":"https://api.locus.report/tools/call"}]}]}