What it is
The job app many small home-service businesses run on: requests, quotes, scheduled jobs, crew visits and invoices, with clients, properties, photos and payments.
How an agent connects
- Through the gateway (the default for client work). The owner presses "Connect Jobber" on their agents page and approves our app in Jobber. We keep the sign-in in our vault; the agent gets a token and calls the
jobber.*actions below. Our app is a draft app until Jobber reviews it, and a draft app can connect at most five Jobber accounts. - Jobber's GraphQL API with OAuth, with an app of the intern's own in the Jobber Developer Center, for building and testing against the developer test account. Ask only for the scopes the job needs.
- Exports for one-off analysis (route sheets, renewals, budget checks). Nothing is connected at all.
- Zapier has triggers for new clients, requests, quotes, jobs and invoices.
Jobber publishes no MCP server of its own on any page we opened.
What agents may do
agent_access: write-with-approval. The agent reads clients, jobs, quotes, invoices, visits and requests. It may ask to add a note to a client, job, quote or request, or to create a quote that the owner reviews and sends from Jobber; each waits for the owner's approval. The owner sets every price and sends every quote and invoice; the agent never marks a job complete or takes a payment.
Through the gateway
| Action | What it does | Held? |
|---|---|---|
jobber.list | Clients, jobs, quotes, invoices, visits or requests: up to 50 a page, by status, text or date | No (read, logged) |
jobber.read | One of them in more detail (a client's properties, a quote's line items) | No |
jobber.create_note | Adds a note to a client, job, quote or request | Always |
jobber.draft_quote | Creates a quote for a client's property; it is not sent | Always |
The gateway holds a fixed GraphQL query per action and fills in only the values. Reads are on when the owner connects; each change is off until the owner ticks it. Payments, sending quotes or invoices, deletes and user changes are refused by name (403 never_automated). Messages to customers still go through a held gmail.draft, manual.draft or manual.send. Examples are in docs/GATEWAY.md, "Business systems".
Watch out for
- The API token can see every client. Store it in the gateway or the owner's secret store, never in a prompt or a repository.
- Jobber throttles by query cost and requests per five minutes; a tight loop of queries will be refused.
- None of the community MCP servers is approved for client data. One is archived, one drives a logged-in browser session, and one is new.
- Jobber's terms put marketplace apps under separate developer terms. Our gateway app needs Jobber's app review before it can connect more than five accounts.
- Jobber does not say on any page we opened that a quote made through the API starts as a draft; the gateway reports the status Jobber gives back, and never sends it.
Used in workflows
Skills that use it
- quote-from-price-list Approved for client work
Sources
- Jobber: Terms of ServiceChecked 6 Oct 2026
- Jobber: Jobber-AppTemplate-RailsAPI (GitHub)Checked 6 Oct 2026
- Jobber: Help CenterChecked 6 Oct 2026
- Zapier: Jobber integrationsChecked 6 Oct 2026
- GitHub: opsconduit/jobber-mcpChecked 6 Oct 2026
- GitHub: chrischall/jobber-mcpChecked 6 Oct 2026
- GitHub: friendlygeorge/jobber-mcp-serverChecked 6 Oct 2026
- Jobber: App Authorization (OAuth 2.0)Checked 6 Oct 2026
- Jobber: Refresh Token RotationChecked 6 Oct 2026
- Jobber: API Rate LimitsChecked 6 Oct 2026
- Jobber: App Review ProcessChecked 6 Oct 2026