Zenbooker MCP by usefulapi

io.usefulapi/zenbooker · v1.0.0 · finance-and-payments

Zenbooker MCP by usefulapi is healthy: it completed an MCP handshake in 1453 ms and exposes 21 tools.

Read Zenbooker jobs, customers, invoices and timeslots; add customers and job notes.

Endpoint: https://zenbooker.usefulapi.io/mcp (streamable-http)

Repository · Website · JSON · Add to my inventory

Facts

Users (last 30 days)0
HandshakeHealthy
Auth neededNone
Tool count21
Latency1453 ms
Last checked (UTC)2026-10-21T10:30:59.347Z

Health history

Checked (UTC)StatusLatencyError
2026-10-21T10:30:59.347ZHealthy1453

Tools (21)

zenbooker_list_jobsList jobs (booked appointments), by start time by default, with filters: customer id, assigned team member id, territory id, recurring booking id, status, canceled flag, creation time and scheduled start window. Returns { results, count, has_more, next_cursor }; pass next_cursor as cursor for the ne
zenbooker_get_jobOne job by id: appointment time, status, customer, service address, services and fields, assigned providers, notes and invoice summary. GET /v1/jobs/{id}.
zenbooker_add_job_noteWRITE: add an internal note (text) to a job. Notes are appended, never replaced, and cannot be deleted through this server, so check the job first. POST /v1/jobs/{id}/notes.
zenbooker_list_recurring_bookingsList recurring bookings (repeating job series), by status (active or canceled), customer id, assigned team member id, territory id or creation time. Max 40 per page. Returns { results, count, has_more, next_cursor }. GET /v1/recurring.
zenbooker_get_recurring_bookingOne recurring booking by id: first job date, job count, time slot, status, territory, service, pricing and its job ids. GET /v1/recurring/{id}.
zenbooker_list_customersList or search customers by name, email or phone, by creation time, or by default address near a place (location + radius in miles). Returns { results, count, has_more, next_cursor }. GET /v1/customers.
zenbooker_get_customerOne customer by id: contact details, notes, addresses, job and recurring booking ids and linked Stripe customer. GET /v1/customers/{id}.
zenbooker_create_customerWRITE: create a new customer record in Zenbooker (name required; phone and email optional). It does not look for an existing customer, so search with zenbooker_list_customers first to avoid duplicates. POST /v1/customers.
zenbooker_list_invoicesList invoices, optionally by status (draft, unpaid, partial_paid, paid, void), customer id, territory id or creation time. Each invoice has line items, totals, amount paid and due and its transactions. Returns { results, count, has_more, next_cursor }. GET /v1/invoices.
zenbooker_get_invoiceOne invoice by id: recipient, line items, discounts, tax, totals, amount paid and due, status and transactions. GET /v1/invoices/{id}.
zenbooker_list_transactionsList payment transactions, optionally by type (stripe_payment, external_transaction), payment method, status (succeeded, failed, voided), customer id, territory id, creation time or payment date. Returns { results, count, has_more, next_cursor }. GET /v1/transactions.
zenbooker_get_transactionOne payment transaction by id: status, type, method, amount, invoice and customer ids, Stripe references. GET /v1/transactions/{id}.
zenbooker_list_servicesList the services a business offers, with pricing method, base price and duration, option sections and recurring frequencies. GET /v1/services.
zenbooker_get_serviceOne service by id: pricing, duration, option sections and their options. GET /v1/services/{id}.
zenbooker_list_territoriesList the service territories (areas a business serves) with timezone, service area, providers and operating hours. Use the ids to filter jobs and invoices or to look up time slots. GET /v1/territories.
zenbooker_get_territoryOne service territory by id. GET /v1/territories/{id}.
zenbooker_list_team_membersList team members (staff and service providers) with role, status, assigned territories, skill tags and work hours. Use the ids to filter jobs by assigned provider. GET /v1/team_members.
zenbooker_get_team_memberOne team member by id: contact details, role, status, territories, skill tags and work hours. GET /v1/team_members/{id}.
zenbooker_list_service_requestsList incoming service requests (booking requests and quote requests) with status, customer, territory, duration, requested dates, services and pricing. Returns { results, count, has_more, next_cursor }. GET /v1/service_requests.
zenbooker_check_service_areaCheck whether a location is inside the business's service area: returns in_service_area, the matching territory and other territories that serve it (or the closest territory when it is outside every area). Give a postal code, an address, or lat + lng. GET /v1/scheduling/service_area_check.
zenbooker_get_timeslotsAvailable booking time slots for a service territory, grouped by day (days[].timeslots[] with start, end and id). Needs the territory id (zenbooker_list_territories or zenbooker_check_service_area) and the service duration in minutes. GET /v1/scheduling/timeslots.