Jobber MCP logo

Jobber MCP

Reads Jobber Client Hub appointments, invoices, quotes, and work requests through a local browser bridge.

Install Jobber MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "jobber-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@chrischall/jobber-mcp"
      ],
      "env": {
        "JOBBER_HUB_ID": "YOUR_VALUE_HERE",
        "JOBBER_HUB_LABEL": "YOUR_VALUE_HERE",
        "JOBBER_HUBS": "YOUR_VALUE_HERE",
        "JOBBER_WS_PORT": "YOUR_VALUE_HERE",
        "JOBBER_DEBUG_LOG": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Automated check passed— started and listed 7 tools correctly (Today).

Overview

The jobber-mcp MCP server reads a signed-in Jobber Client Hub through the ContextMint Bridge browser extension. It exposes read-only tools for appointments, invoices, quotes, work requests, page text, configured hubs, and diagnostics. Use it when you are a Jobber customer who needs agent-accessible records from one or more provider hubs, not when you run a business on Jobber. Node.js 22 or later, Chrome, the bridge extension, and a provider-issued hub link are required.

Use cases

  • Check upcoming service appointments
  • Review paid and overdue invoices
  • Inspect quote approval status
  • Recall submitted work requests
  • Diagnose bridge or hub failures

Key features

  • Read-only Client Hub access
  • Appointment grouping by date
  • Invoice and quote status sections
  • Readable list and detail pages
  • Multiple labeled hub configuration
  • Bridge, configuration, and hub diagnostics

Tools7

What Jobber MCP lets your agent do. Expand a tool for its parameters.

Verified live~980 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

11/11 checks healthy over the last 56d

What it can do

From the 7 tools this server returned when we ran it; 7 declare their own safety hints.

Handles credentials · 1Makes network requests · 6Read-only tools · 7
Network at startup3 connections
Files written at startupNone
Install scriptsNone
npm provenanceSigned build
Package age84 days
Maintainers1

Observed 2026-11-02 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 10d ago via OSV.dev · @chrischall/jobber-mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

npm downloads1.7kPackage downloads in the last 30 days.
Last commit8d agoMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed7Callable tools this server registers over MCP.

How Jobber MCP works

What jobber-mcp MCP server does

The jobber-mcp MCP server exposes read-only access to the customer-facing Jobber Client Hub. It is intended for people who receive appointments, quotes, invoices, or work-request updates from home-service providers such as cleaners, HVAC companies, landscapers, or pest-control businesses. It does not use Jobber's business-side Developer API and does not provide a combined view across providers.

The server can answer questions such as when a visit is scheduled, whether an invoice is paid or overdue, which quotes are awaiting approval, and what was included in a work request. It reads the records available in the hub and can also return readable text from list and detail pages.

How it works

Each request is sent through a signed-in browser tab using the ContextMint Bridge extension. This browser path is required because the Client Hub is protected by a Cloudflare challenge that rejects direct curl and Node.js requests. The hub is a server-rendered application, and the repository does not rely on a client-facing JSON API.

The setup is local rather than hosted. A future remote hosting path is not implemented because the required browser session and bridge must remain on the user's machine. The hub UUID is treated as the credential for that hub; anyone who has it can read the hub, so it should be protected like a password.

Setup and configuration

Run the server through an MCP client with Node.js 22 or newer. Install the ContextMint Bridge extension from its releases page, allow it to access getjobber.com, and keep a signed-in Client Hub tab open in Chrome. Safari is not available for this setup according to the project documentation.

A single hub can be configured with JOBBER_HUB_ID. JOBBER_HUB_LABEL optionally gives it a label, defaulting to default. For multiple providers, set JOBBER_HUBS to a JSON array containing label and hubId values. There is no combined cross-hub view; pass the selected hub label to a tool when more than one is configured.

JOBBER_WS_PORT selects the bridge concentrator port and defaults to 37149; the documentation says not to change that default. JOBBER_DEBUG_LOG enables bridge debug output on stderr. The MCP launch configuration uses npx -y @chrischall/jobber-mcp and supplies the hub setting through the environment.

Tools and capabilities

The available tools are:

  • jobber_list_appointments: groups visits into Today, Upcoming, and Past.
  • jobber_list_invoices: returns invoice numbers, subjects, and sections such as Paid or Overdue.
  • jobber_list_quotes: lists quotes with their approval sections.
  • jobber_list_work_requests: lists requests submitted by the customer.
  • jobber_read_page: returns readable text from appointment, invoice, quote, and work-request pages, including details.
  • jobber_list_hubs: shows configured hub labels without exposing hub IDs.
  • jobber_healthcheck: identifies whether the bridge, configuration, or hub layer is failing.

List tools preserve each record's metadata rows in a details collection rather than imposing a fixed schema. This allows state-dependent rows, such as an unpaid invoice balance, to remain available.

Limitations and notes

The jobber-mcp MCP server is read-only. It does not submit work requests, approve quotes, or pay invoices. Those actions involve form submissions, CSRF tokens, and sometimes Turnstile tokens; payment also requires entering financial information. The repository keeps those operations out of agent tool calls.

Several hubs must be configured separately, and the server cannot access hubs for which the user does not have a signed-in browser session and valid hub link. The project also warns that its code has not received a human audit, so review the implementation and permissions before use. Jobber's terms govern use of the Client Hub and this server.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Jobber MCP

jobber-mcp is an MCP server that connects agent clients to a signed-in Jobber Client Hub through the ContextMint Bridge browser extension. Its main tools list appointments, invoices, quotes, and work requests, read page text, list configured hubs, and check bridge, configuration, or hub health. It is read-only.

Install Node.js 22 or later, the ContextMint Bridge extension, and configure an MCP client to run `npx -y @chrischall/jobber-mcp`. Allow the extension to access `getjobber.com`, keep a signed-in Client Hub tab open in Chrome, and set `JOBBER_HUB_ID` or `JOBBER_HUBS`.

Set `JOBBER_HUBS` to a JSON array of objects containing `label` and `hubId`. Each provider remains a separate hub with no combined view, and tools can receive the selected label through their `hub` argument. `jobber_list_hubs` returns labels only and does not expose the IDs.

No, jobber-mcp only reads Client Hub data. It does not submit work requests, approve quotes, or pay invoices because those flows require form tokens and, in some cases, Turnstile; payment also involves card or bank details.

The documentation specifically lists Claude Desktop and Claude Code as requirements, not Cursor.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewJobber MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/jobber-mcp?style=directory)](https://allmcps.com/mcp/jobber-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/jobber-mcp"><img src="https://allmcps.com/api/badge/jobber-mcp?style=directory" alt="Jobber MCP on AllMCPs" /></a>