ATTOM API MCP Server について
ATTOM API MCP Serverは、ATTOMの不動産データAPIをMCPツールとしてAIエージェントや開発者に提供します。物件、評価額、査定、売買、地域データを扱います。
主な機能
- 01物件情報と住所の検索
- 02評価額、査定、売買データ
- 03地域、位置、コミュニティ情報
- 04APIとログ設定の構成
- 05Pythonコマンドラインでのデプロイ
活用シーン
- 01住所や識別子から物件情報を取得
- 02評価額や売買履歴を確認
- 03地域や周辺施設を検索
MCP 対応
ATTOM Data APIのエンドポイントをMCPツールとして提供し、MCPクライアントから利用できます。stdio通信に対応し、ホストとポートを指定して起動することもできます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ATTOM API MCP サーバー
ATTOM API 向けの MCP サーバーで、MCP プロトコルを介して不動産データを提供します。このサーバーはミドルウェアとして機能し、ATTOM API のエンドポイントを、AI エージェントが使用できる MCP ツールとして公開します。
機能
- ATTOM API エンドポイント用の MCP インターフェース
- 物件データ、評価、査定、売買に関する包括的な API カバレッジ
- 構造化されたエラー処理とロギング
- 環境変数による設定
- 簡単にデプロイできる Python CLI ツールとしてパッケージ化
前提条件
- Python 3.11 以降
- 依存関係管理用の uv
- ATTOM API キー
インストール
UVX を使用する(推奨)
ATTOM API MCP サーバーをインストールして実行する最も簡単な方法は、uvx を使用することです。
uvx mcp-server-attom --help
これにより、ツールがダウンロードされ、恒久的なインストールなしで直接実行されます。
恒久的にインストールするには:
uv tool install mcp-server-attom
ローカル開発
- このリポジトリをクローンします。
git clone https://github.com/nkbud/mcp-server-attom.git
cd mcp-server-attom
- 依存関係をインストールします。
uv sync --locked --all-extras --dev
- ATTOM API キーを設定した
.envファイルを作成します。
cp .env.example .env
# Edit .env and add your ATTOM API key
使用方法
MCP クライアントとの統合
このサーバーをさまざまな MCP クライアント(Claude Desktop、mcp-inspector、mcp-cli)と stdio 通信で使用する詳細な手順については、クライアント統合ガイドを参照してください。
クイックスタートの例:
# With Claude Desktop - add to configuration file
{
"mcpServers": {
"attom-api": {
"command": "uvx",
"args": ["mcp-server-attom"],
"env": {"ATTOM_API_KEY": "your_api_key_here"}
}
}
}
# With MCP Inspector
npx @modelcontextprotocol/inspector uvx mcp-server-attom
# With MCP CLI
mcp list tools uvx mcp-server-attom
mcp call uvx mcp-server-attom property_detail '{"attom_id": "145423726"}'
# Direct stdio communication
export ATTOM_API_KEY=your_api_key_here
uvx mcp-server-attom
CLI ツールとして実行する
mcp-server-attom コマンドを使用してサーバーを起動します。
# If installed via uv tool install
mcp-server-attom --port 8000 --host 0.0.0.0
# Or run directly via uvx
uvx mcp-server-attom --port 8000 --host 0.0.0.0
使用可能なコマンドラインオプション:
--host:サーバーをバインドするホスト(デフォルト:0.0.0.0)--port:サーバーをバインドするポート(デフォルト:8000)--log-level:ログレベル(debug、info、warning、error)--reload:コード変更時の自動リロードを有効にします
開発中にローカルで実行する
開発中にサーバーを起動します。
python -m src.server
これにより、MCP 通信に stdio トランスポートを使用してサーバーが起動します。
リクエストを送信する
このサーバーは、さまざまな ATTOM API エンドポイント用の MCP ツールを公開します。以下は、property_detail ツールの使用例です。
await mcp.tools.property_detail(
attom_id="145423726" # OR
# address="123 Main St, New York, NY 10001" # OR
# address1="123 Main St", address2="New York, NY 10001" # OR
# fips="36061", apn="12345"
)
設定
サーバーは、以下の環境変数を使用して設定できます。
| 変数 | 説明 | 必須 | デフォルト |
|---|---|---|---|
| ATTOM_API_KEY | ATTOM API キー | はい | - |
| ATTOM_HOST_URL | ATTOM API のベース URL | いいえ | https://api.gateway.attomdata.com |
| ATTOM_PROP_API_PREFIX | 物件 API エンドポイントのプレフィックス | いいえ | /propertyapi/v1.0.0 |
| ATTOM_DLP_V2_PREFIX | DLP v2 API エンドポイントのプレフィックス | いいえ | /property/v2 |
| ATTOM_DLP_V3_PREFIX | DLP v3 API エンドポイントのプレフィックス | いいえ | /property/v3 |
| LOG_LEVEL | ログレベル(DEBUG、INFO、WARNING、ERROR) | いいえ | INFO |
| LOG_FORMAT | ログ形式(json または console) | いいえ | json |
使用可能なツール
この MCP サーバーは、主要なすべてのカテゴリにわたる55 以上のエンドポイントで、ATTOM の Data API を完全に 1 対 1 でカバーします。API カバレッジの詳細な対応表については、ATTOM_API_COVERAGE.mdを参照してください。
主なカテゴリ
- 物件ツール(14 エンドポイント):住所検索、物件詳細、プロファイル、建築許可、売買履歴
- 査定ツール(3 エンドポイント):査定の詳細、スナップショット、履歴
- 売買ツール(6 エンドポイント):売買の詳細、履歴、比較物件、トレンド分析
- 評価ツール(6 エンドポイント):AVM データ、住宅資産、賃貸評価
- エリアと位置情報のツール(8 エンドポイント):地理的境界、階層検索、CBSA データ
- POI ツール(2 エンドポイント):14 以上の業種カテゴリによる関心地点の検索
- コミュニティツール(1 エンドポイント):包括的な近隣データ(犯罪、人口、教育、天候、通勤時間)
- 学校ツール(3 エンドポイント):学校のプロファイル、学区、検索機能
- イベントツール(2 エンドポイント):物件イベントとスナップショット
- ユーティリティツール(3 エンドポイント):フィールド定義、交通騒音、差し押さえ前のデータ
ツールのパラメーター
すべての物件関連ツールでは、複数の識別方法に対応しています。
- AttomID:物件の直接識別子
- Address:物件の完全な住所文字列
- Address1 + Address2:分割された住所形式(番地+市区町村・州・郵便番号)
- FIPS + APN:郡の FIPS コード+査定用地番
エリアおよび位置情報ツールでは、地理識別子に対応しています。
- GeoIDv4:バージョン 4 の地理識別子
- Latitude/Longitude:座標ベースの検索
- WKT Strings:Well-Known Text による幾何表現
- Radius:位置情報ベースのクエリに使用する検索半径
開発
テストの実行
uv run pytest
リント
uv run ruff check .
uv run black .
uv run isort .
ビルドと公開
パッケージをビルドして PyPI に公開するには、次の手順に従います。
uvの最新バージョンを使用していることを確認します。
pip install -U uv
-
PyPI トークンを設定します。
- アカウントをお持ちでない場合は、PyPI でアカウントを作成します
- Account Settings > API Tokens に移動します
- スコープを
mcp-server-attomプロジェクトに限定したトークンを作成します - トークンを安全に保存します
-
パッケージをビルドします。
uv build --no-sources
- PyPI トークンを使用してパッケージを公開します。
uv publish --token YOUR_PYPI_TOKEN
または、トークンを .pypirc ファイル、あるいは環境変数に保存できます。
export PYPI_TOKEN=YOUR_PYPI_TOKEN
uv publish
ライセンス
MIT
サポート
この MCP サーバーに関する問題については、GitHub リポジトリで issue を作成してください。
ATTOM API 自体に関する問題については、ATTOM Data Solutions のサポートにお問い合わせください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。