Workiz MCP by usefulapi

io.usefulapi/workiz

Manage Workiz jobs and leads: create, update, assign team members and convert leads to jobs.

Yes, your AI can use this right now.Answered a live MCP handshake in 238 ms with no sign-in needed and exposes 19 tools.

Connect it

Settings → Connectors → Add custom connector
URL: https://workiz.usefulapi.io/mcp

19 tools, verified live

Pulled straight from the server with tools/list on 2026-10-17.
workiz_list_jobsread-only

List jobs, most recently scheduled first (sorted by JobDateTime, descending). Filter by start date, open-only, and status; page with offset/records (max 100). Without start_date Workiz returns the last 14 days. Workiz: GET /job/all/.

workiz_get_jobread-only

Fetch one job by UUID: schedule, status, client contact and address, totals and amount due, notes, tags and assigned team. Workiz: GET /job/get/{UUID}/.

workiz_list_leadsread-only

List leads, most recent first (sorted by LeadDateTime, descending). Filter by start date, open-only, and status; page with offset/records (max 100). Workiz: GET /lead/all/.

workiz_get_leadread-only

Fetch one lead by UUID: schedule, status, client contact and address, source, notes and assigned team. Workiz: GET /lead/get/{UUID}/.

workiz_list_teamread-only

List the account's active team members: id, name, role, whether they are a field tech, email, service areas and skills. Use the name to assign people to jobs or leads. Workiz: GET /team/all/.

workiz_get_team_memberread-only

Fetch one team member by user id: name, role, field-tech flag, email, service areas, skills and active status. Workiz: GET /team/get/{USER_ID}.

workiz_list_time_offread-only

List FUTURE time off (start, end, userName — 'Entire Business' for company-wide closures). Set all=true to include every user and company time off. Useful before scheduling. Workiz: GET /TimeOff/get/.

workiz_get_user_time_offread-only

List one team member's FUTURE time off, by their name. Workiz: GET /TimeOff/get/{USER_NAME}.

workiz_create_jobcan modify

WRITE: create a new job (schedule, client contact and address, type, source, notes). Returns the new job's UUID, ClientId and app link. Workiz: POST /job/create/.

workiz_update_jobcan modify

WRITE: update fields on an existing job — status/sub-status, reschedule (JobDateTime/JobEndDateTime), contact, address, type, source, notes, tags. Only the fields you pass are sent. Workiz: POST /job/update/.

workiz_assign_jobcan modify

WRITE: assign a team member (by name) to a job. Reversible with workiz_unassign_job. Workiz: POST /job/assign/.

workiz_unassign_jobcan modify

WRITE: remove a team member (by name) from a job. Reversible with workiz_assign_job. Workiz: POST /job/unassign/.

workiz_create_leadcan modify

WRITE: create a new lead (client contact and address, requested time, job type, source, notes). Returns the new lead's UUID, ClientId and app link. Workiz: POST /lead/create/.

workiz_update_leadcan modify

WRITE: update fields on an existing lead — status, schedule, contact, address, type, source, notes, tags. Only the fields you pass are sent. Workiz: POST /lead/update/.

workiz_assign_leadcan modify

WRITE: assign a team member (by name) to a lead. Reversible with workiz_unassign_lead. Workiz: POST /lead/assign/.

workiz_unassign_leadcan modify

WRITE: remove a team member (by name) from a lead. Reversible with workiz_assign_lead. Workiz: POST /lead/unassign/.

workiz_convert_lead_to_jobcan modify

WRITE (no API undo): convert a lead into a job. Creates a new job from the lead and returns its UUID and link; the API cannot reverse the conversion. Workiz: POST /lead/convert/.

workiz_mark_lead_lostcan modify

WRITE: mark a lead as lost. Reversible with workiz_activate_lead. Workiz: POST /lead/markLost/{UUID}/.

workiz_activate_leadcan modify

WRITE: change a lost lead back to active. Workiz: POST /lead/activate/{UUID}/.

Alternatives in Marketing & SEO

Compare →
Try “Notion”, “Stripe”, “create invoice”, “browser”