Skip to main content
Glama
chrischall
by chrischall

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
JOBBER_HUBSNoJSON array of {label, hubId} for several providers
JOBBER_HUB_IDNoThe UUID from your hub URL (e.g., clienthub.getjobber.com/client_hubs/<UUID>/)
JOBBER_WS_PORTNofetchproxy concentrator port (default: 37149)37149
JOBBER_DEBUG_LOGNoBridge debug logging to stderr (set to any value to enable)
JOBBER_HUB_LABELNoName for the single hub (default: 'default')default

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

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
jobber_list_appointmentsA

Scheduled visits from a provider's Jobber Client Hub, grouped Today / Upcoming / Past. Each visit carries date, weekday, time, arrival window, location and confirmation state. time is null when the provider chooses not to show times. Read-only.

jobber_list_invoicesA

Invoices a provider has sent through Jobber. Each carries its number, subject, the list section it sits under (Paid, Overdue, …) and the provider's own metadata rows verbatim in details — amounts and dates live there, kept raw because which rows appear depends on invoice state. Read-only; this cannot pay anything.

jobber_list_quotesA

Quotes a provider has sent through Jobber, with number, subject, section (approval state) and the raw metadata rows. Read-only — approving a quote is not possible through this server.

jobber_list_work_requestsA

Work requests you have raised with a provider through their Jobber Client Hub, with their current section (state) and metadata rows. Read-only.

jobber_read_pageA

Fetch a read page of a Jobber Client Hub — appointments, invoices, quotes or work_requests, optionally with a numeric id — and return its readable text. Use for detail pages (e.g. invoices/150208512, appointments/2236612358) whose layout has no pinned schema, and to inspect a page when a list tool returns nothing. Other hub routes (logout, forms, payment pages) are refused. Read-only.

jobber_list_hubsA

The provider hubs this server is configured for, by label, and which is the default. Each Jobber-using business shares its own hub; there is no combined view across providers. Never returns hub ids, which are credentials. Read-only.

jobber_healthcheckA

Checks the ContextMint Bridge browser connection and, if a hub is configured, fetches its appointments page. Reports which layer failed and what to do about it. Read-only.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.1/5.0

Scored across 7 tools

Disambiguation4/5

The five list_* tools each target a clearly distinct resource (invoices, appointments, hubs, quotes, work requests), and healthcheck is unique. The only overlap is jobber_read_page, which can also surface invoices/quotes/appointments pages, so an agent must decide between a list tool and the generic page reader, though the description frames it as a detail-page/fallback path.

Naming Consistency5/5

Every tool uses the same jobber_ prefix with snake_case and a verb_noun shape (list_invoices, list_appointments, list_hubs, list_quotes, list_work_requests, read_page), with healthcheck the sole minor deviation as a single-word diagnostic.

Tool Count5/5

Seven tools is well-scoped for a read-only Jobber Client Hub bridge: five list tools, one raw page reader, and one connectivity check, each earning its place with no redundancy.

Completeness4/5

The surface covers the read-only hub domain across invoices, quotes, appointments, work requests, hubs, and diagnostics, and read_page backstops anything not directly listed. Gaps are minor: no filtered/search listing and no dedicated single-item getter beyond read_page, and write operations are intentionally absent.

Maintenance

ActivityActive
ResponsivenessUnresponsive