Spec → MCP binding
uklsp_discover, uklsp_get_slots and uklsp_create_booking. Tool input schemas are the published JSON Schemas, unchanged — one source of truth across both bindings.Tools
| Tool | Input | Returns |
|---|---|---|
uklsp_discover | service_code, postcode_district | Ranked providers with pricing, credentials, certification level and demo flag. |
uklsp_get_slots | provider_id, service_code | Open AvailabilitySlots. |
uklsp_create_booking | A full booking_request | A booking_confirmation or a canonical error. |
Rules for agent implementers
Agents MUST surface demo:true and MUST NOT call uklsp_create_booking against demo listings. Agents MUST confirm price, slot window and cancellation policy with their human principal before booking, and MUST pass on_behalf_of_human=true only when that is genuinely the case. On SLOT_TAKEN, re-fetch slots and re-confirm with the principal rather than silently rebooking a different window. Agents SHOULD prefer providers whose statutory credentials are verified_by_operator=true and MAY present the public register link alongside.
Server discovery
An MCP server advertising UKLSP tools SHOULD also serve /.well-known/uklsp.json over HTTP so non-MCP agents find the same inventory. The reference server exposes both from one Worker.