🚀 AI驱动的房地产智能平台 - 使用Algolia MCP服务器构建的全面解决方案,用于房产数据收集、智能搜索和AI驱动的市场洞察。
PropTech AI 平台结合现代网络技术和人工智能,提供先进的房地产搜索和分析能力。该平台使用React、AWS Lambda、Algolia MCP服务器和Amazon Bedrock Nova AI构建,提供实时房产数据收集、智能搜索和全面的市场洞察。
# 所需工具
npm install -g aws-cdk
docker --version
aws --version
node --version # v18或更高版本(推荐v22+用于MCP)
# 克隆并设置
git clone <repository-url>
cd proptech-ai-platform
# 配置环境
cp .env.example .env
# 在.env中设置您的配置
ALGOLIA_APPLICATION_ID=your_app_id
ALGOLIA_SEARCH_API_KEY=your_search_key
ALGOLIA_ADMIN_API_KEY=your_admin_key
ALGOLIA_INDEX_NAME=proptech-properties-dev
# Algolia MCP服务器配置
MCP_NODE_PATH=/path/to/your/algolia-mcp-node
MCP_SERVER_PORT=3001
# 部署完整基础设施
./deploy.sh
此自动化部署:
# 克隆官方Algolia MCP服务器
git clone https://github.com/algolia/mcp-node.git
cd mcp-node
npm install
更新您的.env文件,添加MCP服务器路径:
# 添加到您的.env文件
MCP_NODE_PATH=/path/to/your/algolia-mcp-node
独立测试MCP服务器:
# 导航到您的MCP服务器目录
cd /path/to/your/algolia-mcp-node
# 测试服务器启动
node --experimental-strip-types --no-warnings=ExperimentalWarning src/app.ts start-server --help
proptech-ai-platform/
├── src/
│ ├── lambda/
│ │ └── handler.ts # 主Lambda处理器
│ └── services/ # 核心业务逻辑
│ ├── realty-data-service.ts # 房产数据收集
│ ├── algolia-mcp-service.ts # 搜索集成
│ └── bedrock-ai-service.ts # AI洞察服务
├── infrastructure/
│ ├── app.ts # CDK应用入口
│ └── stacks/
│ └── proptech-stack.ts # 完整基础设施堆栈
├── frontend/ # React TypeScript前端
│ ├── src/
│ │ ├── App.tsx # 主应用程序组件
│ │ └── App.css # 应用程序样式
│ └── public/ # 静态资产
├── load-properties-mcp.js # MCP启用的数据收集脚本
├── run-mcp-collection.sh # MCP收集运行器
├── deploy.sh # 自动化部署脚本
├── Dockerfile # Lambda容器定义
├── package.json # Node.js依赖
└── README.md # 此文档
该平台通过AWS API网关提供全面的REST API:
POST /properties/collect - 收集指定地点的房产数据GET /properties/search - 使用高级筛选搜索索引房产GET /properties/:id/insights - 获取AI驱动的房产洞察POST /chat - 与AI助手进行交互式聊天GET /stats - 平台统计和指标GET /health - API健康状态和诊断该平台包含一个MCP启用的脚本用于房产数据收集:
# 快速开始便利脚本
./run-mcp-collection.sh "Austin" "TX" 25
# 或直接运行
node load-properties-mcp.js --city "Austin" --state "TX" --limit 25
# 默认参数
node load-properties-mcp.js
// 示例搜索查询
"3 bedroom houses under $500k in Parma OH"
"Condos with 2+ bathrooms in Fairfield"
"Single family homes over 2000 sqft"
"Properties under $300k in Ohio"
该平台利用Amazon Bedrock Nova进行全面的房产分析:
房产收集器 → MCP客户端 → MCP服务器 → Algolia API
↑
(标准化协议)
// MCP客户端连接
async initializeMCPClient() {
// 启动MCP服务器进程
this.mcpProcess = spawn('node', [
'--experimental-strip-types',
'--no-warnings=ExperimentalWarning',
`${mcpServerPath}/src/app.ts`,
'start-server',
'--credentials', `${this.applicationId}:${process.env.ALGOLIA_ADMIN_API_KEY}`
]);
// 使用stdio传输创建MCP客户端
const transport = new StdioClientTransport({
reader: this.mcpProcess.stdout,
writer: this.mcpProcess.stdin
});
this.mcpClient = new Client({
name: "proptech-property-collector",
version: "1.0.0"
}, {
capabilities: { tools: {} }
});
await this.mcpClient.connect(transport);
}
// MCP工具使用
async indexPropertiesMCP(properties) {
const batchRequests = properties.map(property => ({
action: 'addObject',
body: property
}));
// 使用MCP服务器批量工具
const result = await this.mcpClient.callTool('batch', {
applicationId: this.applicationId,
indexName: this.indexName,
requests: batchRequests
});
}
.env文件中添加MCP_NODE_PATH=/path/to/mcp-nodemcp-node目录ls $MCP_NODE_PATH/src/app.ts应存在.env中:
ALGOLIA_APPLICATION_ID=your_app_id
ALGOLIA_ADMIN_API_KEY=your_admin_key
node --version$API_URL/health以查看系统状态当以下条件满足时,您的设置是正确的:
MCP_NODE_PATH指向有效的MCP服务器目录成功指示符,当运行MCP启用版本时:
🔌 初始化Algolia MCP服务器连接...
启动MCP服务器:node --experimental-strip-types...
✅ MCP客户端连接成功!
📋 可用的MCP工具:批量、保存对象、列出索引、...
📤 使用MCP服务器索引X个房产...
🔧 调用MCP批量工具