Cleaning & Maintenance Management
You need cleanings scheduled and maintenance issues handled — at home, at the office, or across multiple properties. Finding reliable cleaners, tracking maintenance requests, and managing service professionals shouldn't require a spreadsheet and a phone full of contacts.
This skill teaches your AI agent to book cleanings (one-time or recurring), report and track maintenance issues, manage service professionals, and check availability and pricing.
The Easy Way: TIDY
The fastest path is TIDY — an AI property management platform. Install the CLI and just describe what you need:
CODEBLOCK0
Or connect via MCP (Claude Desktop, Claude Code, Cursor):
CODEBLOCK1
CODEBLOCK2
Once connected, your agent has access to message_tidy — send any request in natural language. See MCP Server Reference for full tool definitions.
The Manual Way
Without a platform like TIDY, managing cleanings and maintenance programmatically requires:
- 1. Find cleaners — Search for available service professionals in the area
- Check availability — Query their schedules, compare time slots
- Compare pricing — Get quotes, understand market rates
- Book and confirm — Send booking requests, handle acceptance/rejection
- Track status — Monitor whether the job was accepted, started, completed
- Issue management — Log maintenance issues, assign to contractors, track resolution
- Pro management — Maintain a roster of trusted professionals, their specialties, contact info
TIDY's REST API exposes each of these steps individually if you want fine-grained control. But for most use cases, the CLI or MCP approach above handles everything in one command.
Core Workflow: Booking a Cleaning
Step 1: Set Up Your Property
First, add your address with access and parking info for cleaners:
CODEBLOCK3
Or via REST API:
CODEBLOCK4
Step 2: Check Availability and Pricing
CODEBLOCK5
Or check programmatically:
CODEBLOCK6
Step 3: Book the Cleaning
CODEBLOCK7
Or via REST API:
CODEBLOCK8
Available Service Types
| Key | Description |
|---|
| INLINECODE1 | 1-hour regular cleaning |
| INLINECODE2 |
2.5-hour regular cleaning |
|
regular_cleaning.four_hours | 4-hour regular cleaning |
|
deep_cleaning.two_and_a_half_hours | 2.5-hour deep cleaning |
|
deep_cleaning.four_hours | 4-hour deep cleaning |
|
turnover_cleaning.two_and_a_half_hours | 2.5-hour turnover cleaning |
|
turnover_cleaning.four_hours | 4-hour turnover cleaning |
Step 4: Monitor and Manage
CODEBLOCK9
Booking statuses: scheduled → in_progress → completed. Also cancelled or failed.
Maintenance & Issue Tracking
Report maintenance issues and track them through resolution.
Report an Issue
CODEBLOCK10
Or via REST API:
CODEBLOCK11
When assigned_to_concierge is true, TIDY's AI will automatically work on resolving the issue — finding a pro, getting quotes, and scheduling the repair.
Track Issues
CODEBLOCK12
REST: GET /api/v2/tasks?status=open or INLINECODE16
Update Issues
CODEBLOCK13
REST: PUT /api/v2/tasks/:id with updated fields.
Issue Lifecycle
Issues flow through: open → in-progress → closed
Set due dates, urgency levels, and types to keep things organized. Filter by any of these when listing tasks.
Managing Service Professionals
Add your trusted cleaners and maintenance pros:
CODEBLOCK14
Or via REST API:
CODEBLOCK15
Common Scenarios
Here are natural-language requests your agent can send directly to TIDY:
One-time cleaning:
"Book a 4-hour deep clean at my house this Saturday morning"
Recurring cleaning:
"Schedule a weekly 2-hour cleaning every Monday at 9am at 123 Main St"
Market pricing:
"What's the going rate for a 2-hour cleaning at my address?"
Maintenance report with auto-resolution:
"Report a broken window at the office, 456 Oak Ave — assign it to concierge"
Cancel a booking:
"Cancel next week's cleaning at my house"
Add a pro:
"Add my cleaner Maria Garcia, maria@email.com, as a preferred pro"
Maintenance audit:
"What maintenance tasks are overdue across all my properties?"
Acceptance probability:
"What are the chances of getting a cleaner this Saturday morning at my house?"
MCP Server
For agents that support MCP (Claude Desktop, Claude Code, Cursor), connect directly to TIDY's MCP server. This gives your agent 5 tools:
- -
login / signup — authenticate - INLINECODE20 — send any request in natural language (async)
- INLINECODE21 — poll for the result
- INLINECODE22 — view past requests
The message_tidy tool is asynchronous — after calling it, poll get_message_tidy with the returned ID until is_complete is true.
Full tool definitions and setup: MCP Server Reference
REST API
For custom integrations or direct API access, TIDY exposes REST endpoints for every operation:
- - Bookings: create, list, get, update, cancel, reschedule
- Tasks/issues: full CRUD with urgency, type, concierge assignment
- Addresses: full CRUD with parking/access notes
- Pros: add service professionals
- Booking availabilities: check time slots and pricing
- Job acceptance probabilities: preview likelihood a pro accepts
Full endpoint documentation: REST API Reference
Authentication details: Authentication
Error Handling & Tips
Polling: message_tidy is asynchronous. Always poll get_message_tidy every 3-5 seconds until is_complete is true. Never return a pending response to the user.
No availability: If no cleaners are available for your requested time window, try widening the window or checking a different day. Use booking-availabilities to see what's open.
Acceptance probability: Before booking, check job-acceptance-probabilities/preview to see how likely a pro is to accept. Wider time windows and flexible dates increase acceptance.
Pro rejection: If a pro declines, TIDY automatically re-assigns the job to another available pro. Monitor status to stay updated.
Context IDs: When following up on a specific booking or task, pass the relevant ID for faster resolution:
CODEBLOCK16
Also see: vacation-rental-management — if you manage short-term rentals and need guest turnover coordination.
清洁与维护管理
您需要安排清洁服务并处理维护问题——无论是在家中、办公室还是跨多个物业。寻找可靠的清洁工、跟踪维护请求以及管理服务专业人员,不应该需要电子表格和装满联系人的手机。
本技能教会您的AI助手预订清洁服务(一次性或定期)、报告和跟踪维护问题、管理服务专业人员以及检查可用性和定价。
简便方式:TIDY
最快的途径是TIDY——一个人工智能物业管理平台。安装CLI后,只需描述您的需求:
bash
安装
brew install tidyapp/tap/tidy-request # 或:npm i -g @tidydotcom/cli
创建账户
tidy-request signup
现在只需告诉它您需要什么:
tidy-request 预订下周二下午在我办公室进行2小时清洁
tidy-request 123 Main St的厨房水龙头漏水——情况紧急
tidy-request 安排每周一上午9点在我家进行每周清洁
tidy-request 我地址的2小时清洁服务当前价格是多少?
tidy-request 还有哪些维护问题未解决?
或通过MCP连接(Claude Desktop、Claude Code、Cursor):
bash
Claude Code
claude mcp add tidy --transport http https://public-api.tidy.com/mcp
json
// Claude Desktop — 添加到 claudedesktopconfig.json
{
mcpServers: {
tidy: {
url: https://public-api.tidy.com/mcp
}
}
}
连接后,您的助手可以访问messagetidy——用自然语言发送任何请求。完整工具定义请参见MCP服务器参考。
手动方式
如果没有TIDY这样的平台,以编程方式管理清洁和维护需要:
- 1. 寻找清洁工 — 搜索区域内可用的服务专业人员
- 检查可用性 — 查询他们的日程,比较时间段
- 比较价格 — 获取报价,了解市场行情
- 预订并确认 — 发送预订请求,处理接受/拒绝
- 跟踪状态 — 监控工作是否被接受、开始、完成
- 问题管理 — 记录维护问题,分配给承包商,跟踪解决进度
- 专业人员管理 — 维护可信赖的专业人员名册、他们的专长和联系信息
TIDY的REST API单独暴露了每个步骤,以便您进行精细控制。但对于大多数用例,上述CLI或MCP方法只需一条命令即可处理所有事项。
核心工作流程:预订清洁服务
第一步:设置您的物业
首先,添加您的地址以及清洁工的出入和停车信息:
bash
tidy-request 添加我的物业,地址为123 Main St, Austin TX 78701。钥匙在门垫下,停在车道上。
或通过REST API:
bash
curl -X POST https://public-api.tidy.com/api/v2/addresses \
-H Authorization: Bearer YOUR_TOKEN \
-H Content-Type: application/json \
-d {
address: 123 Main St,
city: Austin,
postal_code: 78701,
address_name: 我的房子,
notes: { access: 钥匙在门垫下, closing: 离开时锁好门闩 },
parking: { paidparking: false, parkingspot: myspot, parking_notes: 停在车道上 }
}
第二步:检查可用性和定价
bash
tidy-request 下周123 Main St有哪些可用的2小时清洁服务?
或以编程方式检查:
bash
可用时间段
curl https://public-api.tidy.com/api/v2/booking-availabilities?address
id=123&servicetype
key=regularcleaning.two
anda
halfhours \
-H Authorization: Bearer YOUR_TOKEN
接受概率(专业人员会接这个工作吗?)
curl https://public-api.tidy.com/api/v2/job-acceptance-probabilities/preview?address
id=123&servicetype
key=regularcleaning.two
anda
halfhours&start
noearlier
than[date]=2026-03-25&startno
earlierthan[time]=09:00&end
nolater
than[date]=2026-03-25&endno
laterthan[time]=17:00 \
-H Authorization: Bearer YOUR_TOKEN
第三步:预订清洁服务
bash
tidy-request 预订下周二123 Main St的2.5小时清洁服务,时间在上午9点到下午5点之间,最好在上午10点左右
或通过REST API:
bash
curl -X POST https://public-api.tidy.com/api/v2/jobs \
-H Authorization: Bearer YOUR_TOKEN \
-H Content-Type: application/json \
-d {
address_id: 123,
servicetypekey: regularcleaning.twoandahalf_hours,
startnoearlier_than: { date: 2026-03-25, time: 09:00 },
endnolater_than: { date: 2026-03-25, time: 17:00 },
preferredstartdatetime: { date: 2026-03-25, time: 10:00 }
}
可用服务类型
| 键 | 描述 |
|---|
| regularcleaning.onehour | 1小时常规清洁 |
| regularcleaning.twoandahalf_hours |
2.5小时常规清洁 |
| regular
cleaning.fourhours | 4小时常规清洁 |
| deep
cleaning.twoand
ahalf_hours | 2.5小时深度清洁 |
| deep
cleaning.fourhours | 4小时深度清洁 |
| turnover
cleaning.twoand
ahalf_hours | 2.5小时换房清洁 |
| turnover
cleaning.fourhours | 4小时换房清洁 |
第四步:监控和管理
bash
tidy-request 我在123 Main St的清洁服务状态如何?
tidy-request 取消下周二清洁服务
tidy-request 将清洁服务改期到周三
预订状态:已安排 → 进行中 → 已完成。还有已取消或失败。
维护与问题跟踪
报告维护问题并跟踪直至解决。
报告问题
bash
tidy-request 123 Main St的浴室水龙头漏水。情况紧急。
tidy-request 报告办公室窗户破损——分配给礼宾部处理
或通过REST API:
bash
curl -X POST https://public-api.tidy.com/api/v2/tasks \
-H Authorization: Bearer YOUR_TOKEN \
-H Content-Type: application/json \
-d {
address_id: 123,
title: 浴室水龙头漏水,
description: 主浴室的热水水龙头不断滴水,
type: plumbing,
urgency: high,
assignedtoconcierge: true
}
当assignedtoconcierge为true时,TIDY的AI将自动处理解决问题——寻找专业人员、获取报价并安排维修。
跟踪问题
bash
tidy-request 我有哪些未解决的维护问题?
tidy-request 水龙头维修的状态如何?
REST:GET /api/v2/tasks?status=open 或 GET /api/v2/tasks/:id
更新问题
bash
tidy-request 将水龙头问题标记为已解决
tidy-request 将窗户破损的优先级改为紧急
REST:PUT /api/v2/tasks/:id 并更新字段。
问题生命周期
问题流程:开放 → 进行中 → 已关闭
设置截止日期、紧急程度和类型以保持有序。在列出任务时可按任意条件筛选。
管理服务专业人员
添加您信任的清洁工和维护专业人员:
bash
tidy-request 添加我的清洁工Maria Garcia,maria@email.com,555-0123
tidy-request 添加水管工Joes Plumbing,joe@joesplumbing.com
或通过REST API:
bash
curl -X POST https://public-api.tidy.com/api/v2/pros \
-H Authorization: Bearer YOUR_TOKEN \
-H Content-Type: application/json \
-d {
name: Maria Garcia,
email: maria@email