UK Property Data
Property Shared
英国の不動産データを1つのパッケージにまとめました。土地登記所の売買データ、EPC証明書、Rightmoveの物件リスト、賃貸利回り、印紙税計算、都市計画ポータルへのリンク、Companies Houseの記録を取得します。
Pythonライブラリ、CLI、HTTP API、またはAIエージェント用MCPサーバーとして使用できます。
提供機能
データソース | 返される内容 |
土地登記所 PPD | 売却価格、日付、物件タイプ、中央値/パーセンタイルを含むエリア比較 |
EPCレジスター | エネルギー評価、床面積、建築年、暖房費 |
Rightmove | 現在の物件リスト(売買・賃貸)、価格、仲介業者、物件詳細 |
利回り分析 | PPD売買データとRightmove賃貸データを組み合わせたグロス利回り |
印紙税 | 2025年4月時点の税率区分、BTL(賃貸用物件)追加税、FTB(初回購入者)減税を考慮したSDLT計算 |
ブロックアナライザー | 投資家の売却動向を把握するための建物ごとのフラット売却グループ化 |
都市計画 | 地方自治体の都市計画ポータル検索(検証済み99自治体) |
Companies House | 企業名または番号による企業検索と詳細照会 |
スキル
生のデータではなく構造化された不動産レポートが必要ですか?これらのツールを組み合わせて投資サマリーを作成するClaudeスキルが bouch.dev/products で利用可能です。
インストール
pip install property-shared
# or with uv
uv add property-sharedオプション: MCPサーバー用 [mcp]、CLI用 [cli]、HTTPサーバー用 [api]、テスト用 [dev]。
pip install property-shared[mcp,cli]
# or
uv add property-shared --extra mcp --extra cliPythonライブラリとしての使用
from property_core import PPDService, calculate_yield, calculate_stamp_duty
# Get comparable sales for a postcode
comps = PPDService().comps("SW1A 1AA", months=24, property_type="F")
print(f"Median flat price: {comps.median:,}")
# Calculate rental yield
import asyncio
result = asyncio.run(calculate_yield("NG1 1AA", property_type="F"))
print(f"Gross yield: {result.gross_yield_pct}%")
# Stamp duty
sdlt = calculate_stamp_duty(250000, additional_property=True)
print(f"SDLT: {sdlt.total_sdlt:,.0f} ({sdlt.effective_rate}%)")すべてのモデルはトップレベルで利用可能です:
from property_core import (
PPDTransaction, PPDCompsResponse, EPCData,
RightmoveListing, RightmoveListingDetail,
PropertyReport, YieldAnalysis, RentalAnalysis,
BlockAnalysisResponse, CompanyRecord, StampDutyResult,
)解釈ヘルパー(コアは数値を返します。ラベル付けの方法はユーザーが決定します):
from property_core import classify_yield, classify_data_quality, generate_insightsCLIとしての使用
pip install property-shared[cli] # or: uv add property-shared --extra cli
# Comparable sales
property-cli ppd comps "SW1A 1AA" --months 24 --property-type F
# Rental yield
property-cli analysis yield "NG1 1AA" --property-type F
# Stamp duty
property-cli calc stamp-duty 300000
# Rightmove search (with sort)
property-cli rightmove search-url "NG1 1AA" --sort-by most_reduced
# Full property report
property-cli report generate "10 Downing Street, SW1A 2AA" --property-type F任意のコマンドに --api-url http://localhost:8000 を追加すると、コアを直接呼び出す代わりにHTTP API経由でルーティングされます。
MCPサーバーとしての使用(AIエージェント)
Claude.ai、Claude Code、ChatGPT、またはMCP互換ホスト用。
pip install property-shared[mcp] # or: uv add property-shared --extra mcp
property-mcp # starts stdio transport12個のツールが利用可能です:property_report, property_comps, ppd_transactions, property_yield, rental_analysis, property_epc, rightmove_search, rightmove_listing, property_blocks, stamp_duty, planning_search, company_search。
リモートサーバーは https://property-shared.fly.dev/mcp (Streamable HTTP) にデプロイされています。
接続設定とツールの詳細については mcp_server/README.md を参照してください。
HTTP APIとしての使用
pip install property-shared[api] # or: uv add property-shared --extra api
property-api # starts on port 8000インタラクティブなドキュメントは http://localhost:8000/docs にあります。
主要なエンドポイント:
GET /v1/ppd/comps?postcode=SW1A+1AA&property_type=F&enrich_epc=trueGET /v1/analysis/yield?postcode=NG1+1AA&property_type=FGET /v1/analysis/rental?postcode=NG1+1AA&purchase_price=200000GET /v1/rightmove/search-url?postcode=NG1+1AA&sort_by=newestGET /v1/calculators/stamp-duty?price=300000&additional_property=truePOST /v1/property/report({ "address": "10 Downing Street, SW1A 2AA" }を指定)
エンドポイントの全リストは USER_GUIDE.md を参照してください。
環境変数
.env.example を .env にコピーしてください。主要な変数:
変数 | 必須用途 | 説明 |
| EPC検索 | EPC Register からの無料キー |
| EPC検索 | 上記メールアドレスとペアで使用 |
| 企業検索 | Companies House からの無料キー |
| 不要 (デフォルト0.6秒) | Rightmoveスクレイピングのレート制限遅延 |
| 都市計画スクレイパー | ビジョンガイド付き都市計画ポータルスクレイパー |
土地登記所PPDとRightmoveは認証情報なしで動作します。
開発
# Install with dev extras
uv sync --extra dev
# Run API with reload
uv run uvicorn app.main:app --reload
# Run tests (mocked, no network)
uv run --extra dev pytest -v
# Run live integration tests (real network calls)
RUN_LIVE_TESTS=1 uv run --extra dev pytest -vアーキテクチャ
3層分離 — コアはフレームワークに依存しません:
property_core/ Pure Python library (all business logic)
app/ FastAPI wrapper (thin HTTP layer)
property_cli/ Typer CLI (thin CLI layer)
mcp_server/ FastMCP wrapper (thin MCP layer for AI hosts)3つのコンシューマーすべてが property_core から直接インポートします。アダプター層はありません。
デプロイ (Fly.io)
fly secrets set EPC_API_EMAIL=... EPC_API_KEY=...
fly deployhttps://property-shared.fly.dev にデプロイ済み。APIドキュメントは /docs、MCPエンドポイントは /mcp にあります。
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/paulieb89/property-shared'
If you have feedback or need assistance with the MCP directory API, please join our Discord server