Skip to content

HOUSINGFAX

by housingfax.com · remote · no sign-in to list tools · v1.2.0 · published by com.housingfax

Immediate home report for a building or flat in Spain: 22 checks from official public sources.

Final · 1Changes · 2

8 tools: 1 do something that can't be undone, 2 change things and 5 only read.

Scanned Oct 21, 2026

1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http housingfax https://housingfax.com/mcp

Findings

Matches of fixed checks, with the text they matched.

1 warn
  • The server marks "purchase_report" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "purchase_report" says "purchase": a word that usually means money moves, which cannot be taken back.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

8 tools

Can't be undone 1Claude Code: ask
  • purchase_reportNot available: every report is free; use create_free_report.1 finding

    Why it is in this group

    • The name "purchase_report" says "purchase": a word that usually means money moves, which cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "purchase_report" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "purchase_report" says "purchase": a word that usually means money moves, which cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    Not available: every report is free; use create_free_report. This tool stays in the contract for compatibility and answers NOT_FOR_SALE without creating anything.

    Annotations the server declares

    • title: Not available
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Changes things 2Claude Code: ask
  • check_coverageSays whether HOUSINGFAX can produce a report for a province (name or two-digit INE code) and, optionally, finds the municipality in the official street directory.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Says whether HOUSINGFAX can produce a report for a province (name or two-digit INE code) and, optionally, finds the municipality in the official street directory. Status covered, not_yet_covered (Navarra: foral adapter pending) or unrecognized; not_yet_covered never means no risk. In the Basque Country (Araba, Bizkaia, Gipuzkoa) the report covers the whole building, not a single flat. municipalityLookup unavailable means the directory did not answer: unknown, not missing. Call it before search_address when you are not sure the place is covered.

    Annotations the server declares

    • title: Check coverage
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • create_free_reportQueues the report for the building resolved with resolve_building and returns a private link (previewUrl) and a statusToken for get_report_status.No findings

    Why it is in this group

    • The name "create_free_report" says "create": a word for a change.
    Description, as the server wrote it
    Queues the report for the building resolved with resolve_building and returns a private link (previewUrl) and a statusToken for get_report_status. Every report is free: it is the full report with PDF, with the building condition assessment when the building has an IEE/ITE record, generated in minutes. CONSENT: before calling, show the person the consent text returned by get_products (consent.text, same language) with its terms and privacy links, and set consent=true only if the person has explicitly accepted it in this conversation; pass consent.statementSha256 as consentStatementSha256. Never accept on the person's behalf. The email is optional (ready notice with the link and the PDF; at most 2 reports per email every 14 days) and only with the person's permission. The link is private: give it only to the person, never publish it. Always tell the person: it is a preliminary, automated report built from public records, not a technical inspection, valuation, certificate, safety assessment or legal advice; probabilities are given as words (very low to very high), never as percentages; a check without data (○) means unknown, not negative or safe; Navarra is not covered yet; the report is only available as a private link.

    Annotations the server declares

    • title: Create report
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
Only reads 5Claude Code: allow
  • get_productsReturns the HOUSINGFAX report for a home in Spain (productMode free): a single product, the full report with web view and PDF, free of charge, with the building condition assessmen…No findings

    Why it is in this group

    • The name "get_products" says "get": a word for reading.
    Description, as the server wrote it
    Returns the HOUSINGFAX report for a home in Spain (productMode free): a single product, the full report with web view and PDF, free of charge, with the building condition assessment when the building has an IEE/ITE record. Also returns the report limits and the consent text (with its SHA-256) that the person must accept before create_free_report. Use it when someone asks what HOUSINGFAX offers or before ordering. Always tell the person: it is a preliminary, automated report built from public records, not a technical inspection, valuation, certificate, safety assessment or legal advice; probabilities are given as words (very low to very high), never as percentages; a check without data (○) means unknown, not negative or safe; Navarra is not covered yet; the report is only available as a private link.

    Annotations the server declares

    • title: Get products
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_report_statusReturns the status of a report created with create_free_report: queued, in_progress, ready, failed or expired, with the private link when ready.No findings

    Why it is in this group

    • The name "get_report_status" says "get": a word for reading.
    Description, as the server wrote it
    Returns the status of a report created with create_free_report: queued, in_progress, ready, failed or expired, with the private link when ready. Wait pollAfterSeconds between calls. withLimitations=true means some source did not answer and its check shows ○ no data with the reason (unknown, not negative). Give the link only to the person.

    Annotations the server declares

    • title: Get report status
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_checksLists the 22 numbered checks of the report (title, question it answers and whether its source is integrated yet) and the meaning of the ✓ / ⚠ / ○ marks.No findings

    Why it is in this group

    • The name "list_checks" says "list": a word for reading.
    Description, as the server wrote it
    Lists the 22 numbered checks of the report (title, question it answers and whether its source is integrated yet) and the meaning of the ✓ / ⚠ / ○ marks. Use it to explain what the report looks at. Checks marked pending_integration show as ○ no data, never as a negative result. Always tell the person: it is a preliminary, automated report built from public records, not a technical inspection, valuation, certificate, safety assessment or legal advice; probabilities are given as words (very low to very high), never as percentages; a check without data (○) means unknown, not negative or safe; Navarra is not covered yet; the report is only available as a private link.

    Annotations the server declares

    • title: List checks
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • resolve_buildingIdentifies the building from an address found with search_address (object address) or from a cadastral reference (14 characters = building or plot; 18 or 20 = a single flat).No findings

    Why it is in this group

    • The name "resolve_building" says "resolve": a word for reading.
    Description, as the server wrote it
    Identifies the building from an address found with search_address (object address) or from a cadastral reference (14 characters = building or plot; 18 or 20 = a single flat). Give either cadastralReference or address, not both. status resolved returns a resolutionToken (valid 15 minutes) for create_free_report, the building's public cadastral data and whether an IEE/ITE record exists (ieeAvailability; unverified means the registry did not answer, not that there is none), which decides whether the report includes the building condition assessment. status select_unit lists the units: ask the person which flat, or repeat with the 14-character reference and scope=building for the whole building. Only non-protected cadastral data is returned. Do not publish the address or reference.

    Annotations the server declares

    • title: Resolve building
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • search_addressTwo steps to build an address.No findings

    Why it is in this group

    • The name "search_address" says "search": a word for reading.
    Description, as the server wrote it
    Two steps to build an address. kind=municipality with provinceCode and q returns municipalities and their codes. kind=street with provinceCode, municipalityDgcCode, municipalityIneCode (from the first step) and q returns streets with streetTypeCode and streetCode (and localityId in the Basque Country). Pass the chosen street, the house number and the codes to resolve_building. Only for places check_coverage reports as covered. Do not store or publish the address.

    Annotations the server declares

    • title: Search address
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.2.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http housingfax https://housingfax.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__housingfax__get_products",
      "mcp__housingfax__list_checks",
      "mcp__housingfax__search_address",
      "mcp__housingfax__resolve_building",
      "mcp__housingfax__get_report_status"
    ],
    "ask": [
      "mcp__housingfax__check_coverage",
      "mcp__housingfax__create_free_report",
      "mcp__housingfax__purchase_report"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as housingfax. Review it before you use it.