# HandledIQ > HandledIQ runs home service shops: heating and cooling, plumbing, electrical, roofing, pest control, junk removal, demolition and more. A person's own AI assistant can find a shop near their house, get the shop's own book price and its real open times, and hold a time for 10 minutes. Nothing is booked on an assistant's word: the shop texts the person, and only their tap on the shop's page books the visit. ## For AI assistants - [HandledIQ's door, MCP](https://app.handlediq.com/agents/mcp): Streamable HTTP with JSON answers, no key. find_help finds the shops near a US ZIP code whose owners take assistants' bookings, each with its book price, soonest open time and signed service record; hold_time holds one of its times; booking_status says whether they booked; move_booking and cancel_booking change a booked visit. - [Its server card](https://app.handlediq.com/agents/mcp/server-card): how to connect, before connecting. - [The same calls as plain JSON, in OpenAPI 3.1](https://app.handlediq.com/agents/openapi.json) - [AI catalog](https://app.handlediq.com/.well-known/ai-catalog.json) - [Business feed](https://app.handlediq.com/v1/businesses): the shops listed in AI apps' local search, each with its Get Quote action (OpenAI's local services Get Quote spec). The action's provider_business_id is the business_id request_service takes on HandledIQ's door; it opens HandledIQ's quote window on that shop (ui://widget/request-service.html, an MCP Apps view). ## For a shop's own AI - [The shop's owner door, MCP](https://app.handlediq.com/mcp): for the AI a shop's owner connects, ChatGPT, Claude or their own. It reads the shop's customers, jobs, schedule, estimates, invoices and signed records, and asks HandledIQ for work; nothing is sent, booked, billed or collected until a person in the shop says yes. - It signs the owner in with OAuth 2.1, as the MCP authorization spec draws it: [where](https://app.handlediq.com/.well-known/oauth-protected-resource/mcp) and [how](https://app.handlediq.com/.well-known/oauth-authorization-server). PKCE with S256; an app is known by its Client ID Metadata Document or registers itself; the issuer rides on every answer (RFC 9207); tokens are for this door only (RFC 8707) and can do only what the owner allowed: shop:read, shop:ask. ## How a booking works - Prices are each shop's own book prices, all in, never a discount: the shop adds no fees, and the person pays after the work. Every price answer carries these terms. Work outside a shop's trade gets no quote. - A held time is real: the shop's schedule offers it to no one else for 10 minutes. - The shop texts the person a link. Only their tap books the visit, and they type their street address there: an assistant sends only their name and mobile. "It wasn't me" frees the time, and that shop texts that phone for an assistant no more for 30 days. - Once booked, cancel_booking cancels the visit for free within 3 days of booking, before the visit, and the shop texts the person that their assistant cancelled it. Past that, the person calls the shop. - move_booking has the shop text the person a link to pick a new time with the same tech. Nothing moves until they pick; booking_status then shows the new time. - A shop texts one phone at most 3 times a day for assistants, and holds at most 30 times an hour. - Each shop's own door is on its price link: /p//mcp, /p//api and /p//openapi.json. ## Records a machine can check - A shop's records come signed by the shop: a W3C Verifiable Credential in a compact JWS (typ vc+jwt, alg Ed25519 as RFC 9864 names it; older libraries call the same signature EdDSA) whose payload is the record in RFC 8785 form. There are three: a house's service record, a technician's work record and the shop's own. - The issuer's id is an address: https://app.handlediq.com/issuers/ answers the shop's W3C Controlled Identifier document (application/cid) with its public key. A signature's kid is that key's own address there, so any machine can check a record from the record alone. - Every door has verify_record, which makes the same check. - A claim in a record says who stands behind it: a person in the shop confirmed it, it was copied from the shop's own records, or HandledIQ worked it out and nobody has confirmed it yet. Every piece of evidence carries its SHA-256, and a house's history is a hash chain. - A homeowner's own link to their house's record, /h/, has a door of its own for their assistant, or anyone they give the link to: /h//mcp, /h//api and /h//openapi.json. It reads the record, signed; it changes nothing. ## Legal - [Legal](https://app.handlediq.com/legal.md): The terms your shop agrees to when it uses HandledIQ, how your records and your customers’ records are handled, and how to reach us. - [Terms of Service](https://app.handlediq.com/legal/terms.md): The agreement between your shop and HandledIQ. - [Privacy Policy](https://app.handlediq.com/legal/privacy.md): What HandledIQ collects, why, where it lives and your choices. Includes a section for homeowners. - [Data Processing terms](https://app.handlediq.com/legal/data-processing.md): How HandledIQ handles your customers’ information on your behalf. - [Acceptable Use](https://app.handlediq.com/legal/acceptable-use.md): What HandledIQ may not be used for. - [Subprocessors](https://app.handlediq.com/legal/subprocessors.md): The outside services that handle data so HandledIQ can work. - [Security](https://app.handlediq.com/legal/security.md): How HandledIQ protects accounts and records. - [Booking from an AI app](https://app.handlediq.com/legal/ai-booking.md): For people who book a shop on HandledIQ from ChatGPT, Claude or another AI app: the terms and what is shared. - [Changes to these terms](https://app.handlediq.com/legal/changes.md): Every published version and what changed. - Each one answers the same text as markdown at its own address too, asked with "Accept: text/markdown". ## For people - Links from a HandledIQ shop open here: a price, a visit's record, a technician on the way, a bill. Open the link your shop sent you.