jobber-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| JOBBER_CLIENT_ID | Yes | Your Jobber client ID. Required for OAuth authentication. | |
| JOBBER_READ_ONLY | No | Set to 'false' to enable write tools. Defaults to 'true' (read-only). | true |
| JOBBER_CLIENT_SECRET | Yes | Your Jobber client secret. Required for OAuth authentication. | |
| JOBBER_WRITE_CAPABILITIES | No | Comma-separated allowlist of write capabilities: 'records', 'scheduling', 'communications'. Only effective when JOBBER_READ_ONLY=false. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| auth_statusA | Check whether the connector is authenticated with Jobber and when the token expires |
| authenticateB | Trigger the Jobber OAuth login flow |
| logoutA | Log out of Jobber. Attempts to revoke the access token at Jobber via the appDisconnect mutation (best-effort - local tokens are always cleared even if remote revocation fails). |
| find_clientB | Search Jobber clients by name, email, or phone. Returns contact info and addresses. |
| client_historyA | Return a Jobber client's jobs, quotes, invoices, and payments. Pass payments_cursor alone (with client_id) to continue fetching payments for an invoice that had more than fit on the original page - that call returns only the payments section, not a fresh jobs/quotes/invoices page. |
| overdue_invoicesA | Return unpaid Jobber invoices past their due date, oldest first, with the total owed on this page at the top (use total_count/next_cursor to page through the rest). |
| quotes_outstandingA | Return Jobber quotes awaiting client response, with quote age and amounts. Excludes quotes the client has already approved but that have not yet been converted to a job. |
| jobs_summaryA | Return Jobber jobs grouped by status, filtered by job creation date (not scheduling or completion date), with counts and totals per status. |
| revenue_summaryB | Return paid Jobber invoices grouped by month and by quarter, with totals. |
| schedule_lookupB | Return Jobber visits and assessments for a date range, grouped by day. Days are grouped by the server's local calendar day unless a |
| requests_inboxB | Return new and unscheduled Jobber requests. |
| get_audit_logA | Read this server's own local audit log (every tool call, success or error). Useful for reviewing what this connector has done. Entries are already redacted (see the audit log docs) before being read. |
| search_recordsC | Search a bounded Jobber record type using fixed reviewed queries. Use get_record before any write. |
| get_recordA | Get one Jobber client, property, request, quote, job, invoice, or visit with the workflow fields needed to prepare a safe change. |
| catalog_searchA | List a bounded page of Jobber products and services for selecting approved line items. |
| team_listA | List Jobber team members available for assignment. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| auth-status | Current authentication state with Jobber |
| safety-notice | Plain-language notice about this connector's default-safe scope |
TDQS
Scored across 16 tools
Tools are mostly distinct by domain: auth, clients, invoices, quotes, jobs, schedule, requests, catalog, and team. There is mild overlap potential among find_client, search_records, and get_record, but their descriptions generally separate search-by-contact, bounded record search, and single-record fetch.
Names are readable and consistently snake_case, but the naming convention is mixed: some tools use verb-led names like find_client and get_record, while others use noun-phrase names like jobs_summary and revenue_summary. There is no consistent verb_noun pattern across the set.
16 tools is slightly above the ideal compact range, but the server covers a broad Jobber domain and each tool serves a distinct reporting, lookup, or auth purpose. The count feels reasonable rather than bloated.
The tool surface is almost entirely read-only: searches, summaries, history, and lookups. There are no create, update, delete, or workflow tools such as creating a quote, scheduling a visit, or recording a payment, so many common Jobber management tasks would dead-end.