---
name: corex-booking
description: Find a local home-service business that takes AI bookings through Corex, show the homeowner real open times, hold one, and give them a card payment link for the deposit. Use when a homeowner asks you to find or book a plumber, HVAC tech, electrician, appliance repair, cleaner, pest control, lawn care, landscaper, roofer or auto repair.
---

# Corex Booking (for homeowners)

This skill is for acting on behalf of a homeowner. Its tools come from the public MCP server at https://corexai.co/api/consumer-mcp, which needs no sign-in. If those tools are not available, tell the homeowner to add it as a custom connector (steps at https://corexai.co/book-with-ai#setup) and stop. If you are helping a business owner run their own Corex account instead, use https://corexai.co/ai-agents/SKILL.md.

## How to work

1. Get the trade and the homeowner's 5-digit zip first. Call `search_businesses`.
2. If it returns no businesses, say so plainly: no Corex business in that area is taking AI bookings yet. Do not suggest one from memory or imply Corex has one. Offer to help another way.
3. If it returns several, show the name, town and deposit for each and let the homeowner pick. Use `get_business` for services, hours and the refund policy if they ask.
4. Call `get_open_times` and offer only times it returns, in the labels it gives you. Never guess or invent availability. Pass the exact `start` value of the chosen time as `slot_start` to `book_with_deposit`. You cannot ask for a specific future date: it returns only the soonest times. If the homeowner wants a later day, say these are the business's soonest open times and suggest they contact the business directly, using its booking_url if search_businesses returned one. This connector does not give out the business's phone number, so never guess one.
5. Before booking, confirm with the homeowner: the business, the time, the deposit amount, their name, phone number, service address and a short description of the problem. Email is optional. Ask for anything missing; do not make up details.
6. Say the refund policy verbatim: "The deposit comes off your final bill. Refunds are up to the business." Do not promise refunds or any other terms.
7. Only then call `book_with_deposit`. It holds the time for 20 minutes and returns a payment link.
8. Always give the homeowner the payment link, and tell them the time is booked only when they pay the deposit by card on that page within 20 minutes. Do not say the appointment is confirmed before they pay. You cannot see whether they paid.
9. If a tool says a time was just taken, offer the fresh times it returns. If a tool returns an error, relay it plainly rather than retrying blindly.
10. If `book_with_deposit` says "There's already a time held for this phone number", do not try to hold another. Have the homeowner pay the link they already have, or wait 20 minutes for that hold to lapse. Each phone number can have one held time per business, and can only start a few holds a day.
11. If the homeowner says the link expired, the hold lapsed: offer fresh times and book again. A checkout they opened before the hold lapsed can still finish; if that time was taken meanwhile, the business is alerted to call them to rebook or refund.

## Tools

- `search_businesses(trade, zip)`: Find businesses that take AI bookings, by trade (plumbing, hvac, electrical, appliance repair, cleaning, pest control, lawn care, landscaping, roofing, auto repair) and 5-digit zip. Returns a business_id for each match, with its name, town and deposit.
- `get_business(business_id)`: Details for one business_id: name, services, hours, deposit and the refund policy.
- `get_open_times(business_id, days?)`: Returns up to 12 of the soonest open times, starting at least 2 hours out, within the requested number of days (default 7, max 14). There is no way to ask for a specific date. Each time has a start value; pass it unchanged as slot_start to book_with_deposit.
- `book_with_deposit(business_id, slot_start, name, phone, address, problem, email?)`: Hold one open time and return a card payment link for the deposit. Needs the homeowner's name, phone, service address and a short description of the problem; email is optional. The time is held for 20 minutes and is booked only when the deposit is paid.

## Example

- "Find me an appliance repair company near 89101 and book my dryer." -> `search_businesses` with trade "appliance repair" and zip "89101", present the matches, `get_open_times` for the one they pick, confirm details and deposit, `book_with_deposit`, then hand over the payment link.
