Lokuli: book local pros and get prices

Book local businesses on Lokuli, or get prices from local pros anywhere in the US.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
100%
Naming quality
93%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,515Tokens (tool definitions)
~1.5 KBTypical response size
Moderate attention impact (1.18% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "lokuli": {
      "url": "https://lokuli.com/ask/mcp"
    }
  }
}

Remote endpoints

https://lokuli.com/ask/mcpstreamable-http
https://lokuli.com/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟒 Read-only🟑 WriteπŸ”΄ Deleteβšͺ Unknown
βšͺrequest_quotes(service, zip, date, time, phone, ...)

Has Lokuli phone local service businesses near a US zip code (anywhere in the US) to ask whether they can do a job at the day and time the user wants, and what they'd charge. Lokuli first texts the user a confirmation link; calls start only after they tap it, and prices come back to them by text. Calls go out Monday–Saturday, 11am–6pm local time; a request made outside those hours waits for the next opening. Requires the service, the 5-digit zip, the day and time, and the user's US mobile number. Free for the user. A service that starts with the word "test" (for example "test house cleaning") sends the text and link but calls no business.

Input Schema

{
  "type": "object",
  "properties": {
    "service": {
      "type": "string",
      "description": "What they need, in plain words: \"house cleaning\", \"brake repair\", \"plumber for a leaking water heater\""
    },
    "zip": {
      "type": "string",
      "description": "5-digit zip code where the service is needed"
    },
    "date": {
      "type": "string",
      "description": "The day they want, YYYY-MM-DD (today through 60 days ahead)"
    },
    "time": {
      "type": "string",
      "description": "The time they want that day, like \"10:00 AM\" or \"14:30\""
    },
    "phone": {
      "type": "string",
      "description": "The user's US mobile number; the confirmation link and the prices are texted here"
    },
    "name": {
      "type": "string",
      "description": "The user's first name (optional)"
    },
    "details": {
      "type": "string",
      "description": "Anything a shop needs to quote: size, make/model, problem (optional)"
    },
    "business": {
      "type": "string",
      "description": "Optional: the slug of a business to call first, then nearby pros"
    }
  },
  "required": [
    "service",
    "zip",
    "date",
    "time",
    "phone"
  ]
}
🟒find_businesses(service, zip, city, limit)

Searches Lokuli for local service businesses near a US zip code or city. Most businesses on Lokuli are in California, a few in other states. Understands everyday and Spanish wording ("deep clean", "fade", "mani pedi", "limpieza de casa"). Returns businesses that can be booked through Lokuli, with their services, prices and service ids, each marked with how it matched (name, service, synonym, or trade, meaning the same kind of business), and, separately, businesses from public records that are not on Lokuli and can't be booked.

Input Schema

{
  "type": "object",
  "properties": {
    "service": {
      "type": "string",
      "description": "What the person needs, in plain words: \"haircut\", \"dog grooming\", \"brake repair\""
    },
    "zip": {
      "type": "string",
      "description": "5-digit zip code to search near"
    },
    "city": {
      "type": "string",
      "description": "City, if there's no zip (e.g. \"Montebello\")"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Most results per group (default 6)"
    }
  },
  "required": [
    "service"
  ]
}
🟒get_business(business)

Details of one business on Lokuli: services with prices, lengths and service ids, team members, hours, address, Lokuli reviews, and how booking works there (confirmed by the business or instantly; paid at the business, or on its booking page with a card). Takes the business's slug or its lokuli.com/shop/... link.

Input Schema

{
  "type": "object",
  "properties": {
    "business": {
      "type": "string",
      "description": "The business's slug or its lokuli.com/shop/... link"
    }
  },
  "required": [
    "business"
  ]
}
🟒get_available_times(business, service_id, date, days, staff_id)

Open times for one service at a business, from the business's live Lokuli calendar (the same one its page and apps use). Returns each open slot's start time (ISO) and a label in the business's time zone.

Input Schema

{
  "type": "object",
  "properties": {
    "business": {
      "type": "string",
      "description": "The business slug or lokuli.com/shop/... link"
    },
    "service_id": {
      "type": "string",
      "description": "The id of one of the business's services"
    },
    "date": {
      "type": "string",
      "description": "First day to check, YYYY-MM-DD (default: today)"
    },
    "days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 7,
      "description": "How many days from date (default 3)"
    },
    "staff_id": {
      "type": "string",
      "description": "Optional team member id, to see only their times"
    }
  },
  "required": [
    "business",
    "service_id"
  ]
}
βšͺbook_appointment(business, service_id, start, name, phone, ...)

Holds an open time at a business for a person and texts them a link to confirm it. Nothing is booked, and the business isn't told, until they tap Confirm within 15 minutes; otherwise the time is released. After they confirm, the business accepts the request (or it's confirmed at once at instant-book businesses). Payment is at the business. Requires the person's name and US mobile number; the confirmation link is texted to that number. Businesses that take a card when booking return a booking page link instead of a hold.

Input Schema

{
  "type": "object",
  "properties": {
    "business": {
      "type": "string",
      "description": "The business slug or lokuli.com/shop/... link"
    },
    "service_id": {
      "type": "string",
      "description": "The id of the service to book"
    },
    "start": {
      "type": "string",
      "description": "The open slot's start time (ISO), exactly as listed in the business's open times"
    },
    "name": {
      "type": "string",
      "description": "The person's name"
    },
    "phone": {
      "type": "string",
      "description": "The person's US mobile number; the confirmation link is texted here"
    },
    "email": {
      "type": "string",
      "description": "Optional email for the business's confirmation"
    },
    "staff_id": {
      "type": "string",
      "description": "Optional team member id"
    },
    "notes": {
      "type": "string",
      "description": "Optional note for the business (300 characters max)"
    }
  },
  "required": [
    "business",
    "service_id",
    "start",
    "name",
    "phone"
  ]
}
🟒check_coverage(zip)

Checks whether Lokuli can call pros near a US zip code (any zip code in the 50 states and DC). Returns the place, state and time zone.

Input Schema

{
  "type": "object",
  "properties": {
    "zip": {
      "type": "string",
      "description": "5-digit zip code"
    }
  },
  "required": [
    "zip"
  ]
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools
verifiedversion not recorded6 tools