Jobber
FreeNot checkedMCP server for Jobber — home service business management (HVAC, plumbing, landscaping). 7 tools for clients, jobs, quotes, invoices, notes. GraphQL via OAuth2.
About
MCP server for Jobber — home service business management (HVAC, plumbing, landscaping). 7 tools for clients, jobs, quotes, invoices, notes. GraphQL via OAuth2.
README
Model Context Protocol (MCP) server for Jobber — home service business management software (HVAC, plumbing, landscaping, etc.).
Talk to Jobber from Claude, Cursor, or any MCP client. Read clients, jobs, quotes, invoices; create new clients and add notes. GraphQL API via OAuth2 bearer token.
Built against the Jobber Developer API. No existing MCP for Jobber — this is the first.
What you can do with it
You: "Show me every active job assigned to Alex."
Claude: *list_jobs(status="active") then filters by assignedTo*
You: "Find every quote awaiting response for over 7 days."
Claude: *list_quotes(status="awaiting_response") then filters by createdAt*
You: "Add a note to client 12345: 'Replaced capacitor, system running.'"
Claude: *add_client_note with body*
You: "Create a new client: Sarah Chen, [email protected], 555-0101."
Claude: *create_client*
Install
pip install -e .
Configure
You need an OAuth2 access token. Get one via the Jobber OAuth flow — register your app, complete the install dance, store the returned token.
export JOBBER_ACCESS_TOKEN="..."
For multi-tenant apps, run multiple MCP server instances — each with its own token. Jobber's tokens expire; you'll need to refresh on your backend and restart the MCP server.
Use with Claude Desktop
{
"mcpServers": {
"jobber_mcp": {
"command": "jobber_mcp",
"env": {
"JOBBER_ACCESS_TOKEN": "..."
}
}
}
}
Tools
| Tool | Type | What it does |
|---|---|---|
health_check |
Diagnostic | Verifies token |
list_clients |
Read | Homeowners / businesses |
list_jobs |
Read | Work orders (filterable by status) |
list_quotes |
Read | Quotes (filterable by status) |
list_invoices |
Read | Invoices (filterable by status) |
create_client |
Write | New client |
add_client_note |
Write | Note on client record |
Why GraphQL, not REST?
Jobber's API is GraphQL-only. The advantage: one HTTP endpoint, ask for exactly the fields you need, no over-fetching, no under-fetching. The MCP tools use minimal field selections so the agent gets the data it needs without pagination churn.
Development
pip install -e ".[dev]"
pytest
jobber_mcp
Need a custom MCP for your SaaS?
I build production-grade MCP servers for vertical SaaS — insurance, dental, veterinary, legal, property mgmt, home services. Typical engagement: 2-4 weeks, $25K-$120K. Source-owned, MIT-licensed, no vendor lock-in.
See sanjibani/mcp-services or email [email protected].
Ships in the sanjibani vertical-MCP portfolio — see also hawksoft-mcp, open-dental-mcp, ezyvet-mcp, jobber-mcp, paid-skills, mcp-vertical-template.
MIT.
Acknowledgements
- Jobber for the GraphQL API + OAuth2 flow
- Built using mcp-vertical-template (the GraphQL client is a small variation of the REST template)
- Inspired by sanjibani/hawksoft-mcp and sanjibani/ezyvet-mcp
See also
Installing Jobber
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/sanjibani/jobber-mcpFAQ
Is Jobber MCP free?
Yes, Jobber MCP is free — one-click install via Unyly at no cost.
Does Jobber need an API key?
No, Jobber runs without API keys or environment variables.
Is Jobber hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Jobber in Claude Desktop, Claude Code or Cursor?
Open Jobber on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Jobber with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
