Skip to main content
Glama
noahw345

Property MCP Server

by noahw345

Property MCP Server

A minimal Model Context Protocol server that connects Claude AI to real estate data via the ATTOM Data API.

Quick Start

# Install dependencies
pip install -r requirements.txt

# Set up .env file
echo "ATTOM_API_KEY=your_key_here" > .env

# Test the tool
python test_tool.py "1600 Amphitheatre Parkway, Mountain View, CA 94043"

# Run the server (for Claude Desktop)
python -m mcp_server.server

Architecture

mcp_server/
├── server.py            # Entry point
├── tools/
│   └── property_info_tool.py  # tool interface
├── services/
│   └── attom_client.py  # HTTP client
├── config.py            # Environment config
└── utils/
    └── errors.py        # Exceptions

Error Handling

Errors are caught and returned as structured JSON responses:

{
  "error": True,
  "message": "ATTOM API error: 400 Bad Request",
  "status_code": 400
}
  • API errors: HTTP errors parsed from ATTOM API responses

  • Network errors: Connection failures wrapped in APIError

  • Config errors: Missing API key raises ConfigError at startup

  • Tool layer: Catches APIError and returns error dict (never raises)

Claude Desktop Configuration

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "property-mcp": {
      "command": "/path/to/venv/bin/python3.12",
      "args": ["-m", "mcp_server.server"],
      "cwd": "/path/to/property-MCP",
      "env": {
        "PYTHONPATH": "/path/to/property-MCP"
      }
    }
  }
}

Attom API Docs

https://api.developer.attomdata.com/

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/noahw345/property-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server