Skip to content
Elaichi Elaichi

CRM

Jobber

Connect Jobber once and hand every teammate a governed MCP endpoint with 15 tools ready to call from Claude, ChatGPT, Cursor, or any MCP client, inside the same permissions they already have, with every call checked and logged.

Jobber

Automations & dashboards

From answering questions to doing the work

A person no longer has to ask. A trigger starts the work, inside the same permissions and the same audit log as everything else. Automations and live dashboards ship on the Black plan.

Automations

Put Jobber work on a schedule.

A trigger starts a sequence of steps: call a Jobber tool, transform the result, branch, wait, and ask a person when it matters.

Jobber digest

Run 418 · started 2 minutes ago · on behalf of Emma Laurent

  1. Schedule

    Every weekday at 08:00

    0.2s
  2. Fetch clients

    Jobber

    1.4s
  3. Group by owner

    Transform

    0.1s
  4. Draft the digest

    Agent step

    Ran with 4 tools, returned a structured summary

    6.2s
  5. Approve the digest

    Needs approval

    Assigned to Michael Brennan

    Approve
  6. Post the digest

    Jobber

    Queued

Collections and dashboards

Report on Jobber without asking.

Collections hold your own data, written by an automation and read by a dashboard that refreshes on a schedule.

Jobber health

Refreshed 4 minutes ago · every 15 minutes · from the clients collection

Live

Clients

1,284 ↓ 12%

Requests

96 ↓ 8%

Needs attention

3 ↑ 2

Updated this week

412 ↑ 9%

Clients created

Last 14 days

By workspace

Share of activity

Engineering 34%

Product 27%

Support 21%

Sales 18%

AI tools

Jobber tools for your AI agents

15 tools are ready to call through Elaichi's MCP endpoint the moment you connect Jobber, governed by the same roles, restrictions, and audit log as everything else in Elaichi.

list_all_jobber_account

Get information about the authorized Jobber account. Returns: id, name, countryCode, phone. No required parameters — the account is determined by the access token.

list_all_jobber_clients

List Jobber clients. Returns: id, name, isLead, leadSource, email, phone, balance, tags, billingAddress, and totalCount rollups for jobs, requests, quotes and invoices. Filter with the filter param, e.g. {"isLead": true} for leads only. A client whose jobs.totalCount is 0 has never had work booked.

get_single_jobber_client_by_id

Get a single Jobber client by id. Returns: id, name, isLead, leadSource, email, phone, balance, tags, billingAddress, and jobs/requests/quotes/invoices totalCount. Required: id.

jobber_clients_count

Count Jobber clients matching a filter, without fetching the records. Returns: totalCount. Use filter {"isLead": true} to count how many leads have come through, optionally narrowed by createdAt.

create_a_jobber_client

Create a Jobber client, e.g. to lodge a qualifying lead. Returns the created client; new clients start with isLead true. Accepts scalar fields only — to set emails, phones, addresses or custom fields, use the graphql tool with the clientCreate mutation.

update_a_jobber_client_by_id

Update a Jobber client's scalar details. Returns the updated client. Required: id. Status tags (tagsToAdd / tagsToDelete) are not settable here — use the graphql tool with the clientEdit mutation. isLead is managed by Jobber and cannot be set at all.

jobber_clients_archive

Archive a Jobber client. Required: client_id. Jobber refuses while the client has open jobs or work requests, returning a userErrors message.

list_all_jobber_requests

List Jobber requests (incoming work enquiries). Returns: id, title, requestStatus, contactName, companyName, email, phone, source, client, salesperson, and jobs/quotes totalCount. Filter with e.g. {"status": "new"}.

get_single_jobber_request_by_id

Get a single Jobber request by id. Returns: id, title, requestStatus, contact details, source, client, salesperson, and jobs/quotes totalCount. Required: id.

jobber_requests_count

Count Jobber requests matching a filter, without fetching the records. Returns: totalCount. Use filter {"status": "new"} to count new leads awaiting action.

create_a_jobber_request

Create a Jobber request (work enquiry) against an existing client. Returns the created request with requestStatus "new". Required in body: client_id. Accepts scalar fields only — for requestDetails, lineItems or formIds use the graphql tool with the requestCreate mutation.

update_a_jobber_request_by_id

Update a Jobber request. Returns the updated request. Required: id. Only title, property, salesperson and referring client are editable — requestStatus is driven by Jobber workflow, not set directly.

list_all_jobber_jobs

List Jobber jobs (booked work). Returns: id, jobNumber, title, jobStatus, jobType, total, scheduling timestamps, client and property. Use this to see which customers have actually had services delivered.

get_single_jobber_job_by_id

Get a single Jobber job by id. Returns: id, jobNumber, title, jobStatus, jobType, total, scheduling timestamps, client and property. Required: id.

create_a_jobber_graphql

Send an arbitrary GraphQL query or mutation to Jobber. Body: {query, variables}. Use this for anything the typed tools cannot express — setting client emails/phones/addresses, adding or removing status tags, or any mutation with a nested input object. Returns Jobber's raw response including data, errors and userErrors.

How it works

From Jobber account to governed MCP endpoint

Connect

Link a Jobber account through Elaichi's hosted connect flow. Credentials are vaulted, so nobody, including the AI, ever sees them.

Compose

The connection becomes a toolbox instantly. Curate which Jobber tools are exposed, rename them, or freeze arguments.

Authorize

Point Claude, ChatGPT, Cursor, or any MCP client at the one Elaichi endpoint and sign in with OAuth, governed by roles, restrictions, and audit logs.

Put your agents to work in the tools you already use

Start a 14-day Gold trial. Connect a product, curate a toolbox, and paste a governed MCP endpoint into Claude, ChatGPT, or Cursor in minutes.