mcpField
A
Attom

Attom

Remote
pipeworx.ioBusiness & Marketing0Updated 6d ago

About Attom

Attom is an MCP server that provides ATTOM property and real-estate data for analysts and applications working with US properties. Its tools cover valuations, tax history, comparable sales, ownership, and market context; ATTOM access requires a key or a Pipeworx Housing Vertical subscription.

Key features

  1. 01Automated property valuations with confidence bands
  2. 02Property tax history
  3. 03Nearby comparable sales
  4. 04Property details and ownership history
  5. 05Market statistics and risk overlays

Use cases

  1. 01Estimate a US property's value
  2. 02Review a property's tax assessments
  3. 03Compare recent nearby home sales

MCP support

Exposes ATTOM property-data tools to MCP clients through the Pipeworx gateway or a local stdio MCP server. Calls can use an ATTOM API key or Pipeworx Housing Vertical access.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://gateway.pipeworx.io/attom/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

49
ParameterTypeRequiredDescription
qstringNoAlias for question.
askstringNoAlias for question.
textstringNoAlias for question.
inputstringNoAlias for question.
packsarrayNoOPTIONAL. Restrict routing to these pack slugs (e.g. ["sec-form-d","sec-13f"]) — the router then picks only from tools in those packs. Omit for the default full-catalog routing. Slugs come from list_packs / search_packs / https://pipeworx.io/directory; unlisted or unknown slugs are ignored and named in _meta.pack_scope.ignored, and if none of them resolves the question is routed across the whole catalog with _meta.pack_scope.full_catalog:true (never an empty answer).
querystringNoAlias for question.
promptstringNoAlias for question.
messagestringNoAlias for question.
questionstringYesYour question or request in natural language. Accepts query, q, prompt, text, input, ask, message as aliases.

Details

From the project README

ATTOM — Property and Real Estate Data

ATTOM (formerly Onboard) is a commercial property data provider covering 99% of US single- and multi-family parcels. The data behind tax records, valuations (AVMs), comparables, ownership history, neighborhood demographics, and risk overlays (flood, wildfire). It's what most real-estate analytics products sit on top of.

Part of Pipeworx — an MCP gateway connecting AI agents to 1872+ live data sources. This is an independent, unofficial integration — not affiliated with, endorsed by, or published by the upstream provider.

Why this matters for AI agents

Anything about a specific US property — its value, taxes, sale history, who owns it, what it sold for last — flows from ATTOM. Commercial-grade data with national coverage; competing public sources (Zillow public data, county assessor sites) have spotty coverage and inconsistent schemas.

Common use cases:

  • AVM lookup. "What's 123 Main St worth?" → attom_avm({address1, address2}) → automated valuation with confidence band.
  • Tax history. "What's the property tax been?" → attom_tax_history → annual tax assessments.
  • Comps. "What have similar homes sold for nearby?" → attom_comps.
  • Market context. "What's typical for this metro?" → attom_market_stats.

For a one-call combined view, use the Housing Vertical's housing_property_report compound — wraps ATTOM AVM + tax + Altos market + FEMA flood.

Auth

ATTOM is a paid commercial API. Two options:

  1. BYO key: get an ATTOM key directly at https://api.developer.attomdata.com, pass via _apiKey:

    attom_avm({
      address1: "123 Main St",
      address2: "Denver, CO 80202",
      _apiKey: "your-attom-api-key"
    })
    
  2. Pipeworx Housing Vertical: subscribe at pipeworx.io/account and Pipeworx fronts the ATTOM relationship. No _apiKey needed; calls bill against your Pipeworx account.

The vertical option is simpler if you're using ATTOM alongside FRED, BLS, Altos, and FEMA — they're all packaged.

Coverage and freshness

  • Coverage: ~155M residential parcels, plus commercial records in major metros. National.
  • Update cadence: County assessor data updates as counties update their records (varies — most update annually, some more often). AVMs recalibrate monthly. ATTOM is the lag, not Pipeworx.
  • Address normalization: ATTOM is finicky about addresses. Use address1 for the street part and address2 for "City, ST ZIP" — works most consistently. Apartment numbers, abbreviations, and PO boxes all behave subtly differently.

Common pitfalls

  • AVM bands matter. A point estimate without the confidence band is misleading. Always report both. ATTOM gives you valueLow / valueHigh — pass both through to the user.
  • Tax history isn't always current-year. Counties report at different cadences. The most-recent year in attom_tax_history may be 6–18 months behind reality.
  • Comps need filters. Default attom_comps returns recent sales near the address but doesn't filter by similarity. Filter client-side by sqft, beds, baths, and date range to make comps useful.
  • Commercial vs. residential. Most ATTOM tools default to residential. Commercial properties have different schemas; use the dedicated commercial endpoints (or the Housing Vertical's compound, which handles both).
  • Rural and tribal land. Coverage gaps exist for some rural counties and tribal lands. If a valid-looking address returns no match, the parcel may not be in ATTOM's coverage.

Quick Start

Add to your MCP client (Claude Desktop, Cursor, Windsurf, etc.):

{
  "mcpServers": {
    "attom": {
      "url": "https://gateway.pipeworx.io/attom/mcp"
    }
  }
}
What this endpoint actually serves

tools/list at https://gateway.pipeworx.io/attom/mcp returns the tools in the table above plus the shared Pipeworx meta-tools — ask_pipeworx, discover_tools, search_within, remember/recall and the rest of the gateway-wide set. So the tool count you see is larger than this table: a single-pack endpoint currently lists roughly 30 shared tools alongside the pack's own. The connection's initialize response states its exact scope, and is the authoritative answer for a given day.

This is deliberate, not multiplexing by accident. The meta-tools are what let a scoped connection answer a question this pack does not cover — via ask_pipeworx, which routes across the whole catalog — without you adding a second MCP server. There is currently no way to mount a pack endpoint without them; if the extra schemas cost you more context than the routing is worth, connect to the full gateway once rather than to several pack endpoints.

Or connect to the full Pipeworx gateway to get every pack's tools listed directly, instead of just this one's:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

Both URLs reach the same gateway and the same 1872+ data sources. The only difference is which pack's tools are listed directly; ask_pipeworx reaches all of them from either one.

No MCP client? Call it over HTTP

This pack takes your own API key (_apiKey) — we don't front one for it, so there's no curl here that would run without it. Inspect any tool: GET https://gateway.pipeworx.io/v1/tools/attom_property_detail. Find one: POST https://gateway.pipeworx.io/v1/tools/search_packs with {"query":"..."}.

Standalone (no gateway account)

This package also runs as a local stdio MCP server — no Pipeworx account, no gateway round-trip:

{
  "mcpServers": {
    "attom": {
      "command": "npx",
      "args": ["-y", "@pipeworx/mcp-attom"]
    }
  }
}

Or run it directly to confirm it starts:

npx -y @pipeworx/mcp-attom

It speaks MCP over stdin/stdout and answers initialize/tools/list/tools/call for only this pack's tools — none of the shared meta-tools the gateway connection above adds. Same source, same tools, no ask_pipeworx routing.

Using with ask_pipeworx

Instead of calling tools directly, you can ask questions in plain English — this works on the pack endpoint above as well as on the full gateway:

ask_pipeworx({ question: "your question about Attom data" })

The gateway picks the right tool and fills the arguments automatically.

More

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.