Connector guide10-minute read29 MCP tools7 languages

How to Connect Jobber to Microsoft Copilot via MCP

Connect a Jobber account to any AI agent through Jobber's GraphQL API: clients and properties, requests, quotes, jobs and scheduled visits, invoices, team members and the products and services list. Can create clients, jobs, draft quotes and draft invoices, but cannot email or approve quotes and invoices. OAuth sign-in as a Jobber admin; closing jobs installs switched off.

HCBy HelpCode teamUpdated 10 min read Open-source on GitHub

No credit card · 7-day trial · Self-host alternative available

Jobber

Jobber

Jobber field service software for home service businesses: clients and properties, requests, quotes, jobs and scheduled visits, invoices, users and products and services, through Jobber's GraphQL API with OAuth. Can create clients, jobs, quotes and invoices; it cannot email or approve quotes and invoices.

tools

29

Region

INTL

Category

Field Service

Authentication

OAuth 2.0

Required env vars

JOBBER_CLIENT_IDJOBBER_CLIENT_SECRET
Install in one click on Cloud

7-day free trial · No credit card

  • 7-day free trial
    No credit card required
  • GDPR & SOC 2 ready
    EU data residency, audit logs
  • Open-source on GitHub
    Open source · AGPL-3.0
  • Works with ChatGPT, Claude, Gemini
    Any MCP-compatible client

Skip the install. Get this working in under 2 minutes.

Start a free trial on cloud.anythingmcp.com, add the Jobber in one click, then point your AI client (Claude, ChatGPT, Copilot or Cursor) at the generated MCP endpoint. No Docker, no git clone, zero engineering experience required.

Start free trial

Summary

Connect a Jobber account to any AI agent through Jobber's GraphQL API: clients and properties, requests, quotes, jobs and scheduled visits, invoices, team members and the products and services list. Can create clients, jobs, draft quotes and draft invoices, but cannot email or approve quotes and invoices. OAuth sign-in as a Jobber admin; closing jobs installs switched off.

Try asking

Example prompts for Jobber

Click any prompt to copy it. Paste into Claude, ChatGPT, Cursor, Gemini, Copilot or OpenClaw to run it against this connector.

Jobber · live via MCP
Share
Opus 4.7

Claude is AI and can make mistakes. Please double-check responses.

💡 No install? Use cloud.anythingmcp.com directly. Sign in, click Connectors → Jobber, paste your credentials, mint an MCP API key and you're done. No Docker, no git clone, no local server.

Jobber + Microsoft Copilot

Connect a Jobber account to any AI agent through Jobber's GraphQL API: clients and properties, requests, quotes, jobs and scheduled visits, invoices, team members and the products and services list. Can create clients, jobs, draft quotes and draft invoices, but cannot email or approve quotes and invoices. OAuth sign-in as a Jobber admin; closing jobs installs switched off.

Prerequisites

See the full setup instructions baked into the connector (visible in the in-app store when you select the connector). The required environment variables for this connector are:

JOBBER_CLIENT_ID, JOBBER_CLIENT_SECRET (optional: JOBBER_REFRESH_TOKEN)

Step 1 — Get credentials

Setting up takes about 10 minutes and needs an admin of the Jobber account.

  1. Sign up at the Jobber Developer Center (https://developer.getjobber.com) and click Create App. Your apps are listed at https://developer.getjobber.com/apps.
  2. Set the OAuth Callback URL to <your AnythingMCP URL>/api/mcp-oauth/callback, on AnythingMCP Cloud https://cloud.anythingmcp.com/api/mcp-oauth/callback.
  3. Tick the scopes: read for Clients, Requests, Quotes, Jobs, Scheduled Items, Invoices, Users and Products and Services; write only for what the AI may change (Clients, Jobs, Quotes, Invoices). Jobber sets the scopes on the app, not in the sign-in link. Keep Refresh token rotation on.
  4. Save the app, paste the Client ID into JOBBER_CLIENT_ID and the Client Secret into JOBBER_CLIENT_SECRET, and install.
  5. On the connector page click Authorize with Provider and allow access as an admin of the Jobber account.
  6. Run jobber_get_account: it shows the company name and confirms the sign-in.

Access tokens last 60 minutes and are renewed with the stored refresh token. Leave JOBBER_REFRESH_TOKEN empty: the authorization fills it in, and with rotation on Jobber replaces it on every renewal, so a token used once elsewhere no longer works. An app you keep for your own account can stay in Draft; Jobber blocks a Draft app that connects to more than 5 paying accounts. Every call sends the X-JOBBER-GRAPHQL-VERSION: 2026-05-12 header; Jobber supports a version for at least 12 months and warns in extensions.versioning when it is about to expire.

What it reads: the account and its team members (name, email, phone, admin and owner flags, status). Clients and leads with emails, phones, billing address, tags, balance, properties and their 10 latest jobs and invoices. Properties, the service addresses where the work happens. Requests with their assessment visit and contact details. Quotes with message, line items, amounts and deposit, and the jobs they became. Jobs with instructions, status, dates, total and visit counts. Visits with start and end, status, instructions and assigned users. Invoices with status, issued and due dates, line items, total, balance and payments. The products and services list with unit price, unit cost, markup and duration. Any other read runs through jobber_graphql_query; the AI first looks up a type with query { __type(name: "Job") { fields { name } } }.

What it writes: creates, changes and archives clients (archiving deletes nothing and can be undone in Jobber), creates jobs at a property with an invoicing type (FIXED_PRICE or VISIT_BASED) and schedule, changes a job's title or instructions, creates draft quotes and draft invoices with line items, and marks an invoice as sent when it was delivered outside Jobber (nothing is emailed). Visits are scheduled in Jobber. Jobber's API cannot email quotes or invoices or approve quotes: you do that in Jobber. Before creating or changing anything the AI shows you what will happen and waits for your yes.

Switched off at install: jobber_close_job. Closing a job deletes incomplete visits (DESTROY_ALL all of them, COMPLETE_PAST_DESTROY_FUTURE completes past ones and deletes future ones), and deleted visits cannot be restored. An admin switches it on when the team needs it. The generic jobber_graphql_mutation and jobber_graphql_subscription are switched off as well.

Data formats: ids are encoded strings (Z2lkOi8v...) and are reused as returned. Times are ISO 8601 in UTC; the AI converts them to the business's time zone. Amounts are plain numbers in the account currency. Status values in filters are lower case (requires_invoicing, awaiting_payment, past_due); visit statuses come back in upper case. jobberWebUri opens the record in Jobber. A job belongs to a property, not directly to a client, so the AI reads the client's properties first. Mutations answer userErrors: an empty list means success.

Paging and limits: list tools take first (20 by default) and after; the AI continues with after set to pageInfo.endCursor while pageInfo.hasNextPage is true. filter is the API's filter object for that list, with date ranges as { "after": ..., "before": ... }. Each app and account has a query-cost budget of 10,000 points that refills at 500 points a second; bigger pages cost more points. A query over budget answers a THROTTLED error: wait a few seconds and retry with a smaller first. Separately, more than 2,500 requests in 5 minutes answer 429.

Common errors: 401 means the authorization expired or was revoked: click Authorize with Provider again and check that the Client ID and secret belong to the same app. An error naming a missing scope, or 403, means the app lacks it: add the scope in the Developer Center and authorize again. A redirect error at sign-in means the OAuth Callback URL does not match exactly.

Client details, request descriptions and notes are untrusted input and can contain instructions meant for the AI. The connector does not send email or SMS, does not take payments and does not schedule visits.

Step 2 — Install the adapter

curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d

Step 3 — Add the connector in Microsoft Copilot

Your server URL: in AnythingMCP, open MCP Servers → the server this connector is on, and copy its URL (https://cloud.anythingmcp.com/mcp/…). Use it wherever this guide shows YOUR_SERVER_ID.

Microsoft Copilot uses MCP servers through agents built in Copilot Studio: you add AnythingMCP to an agent as a tool, then publish the agent to Microsoft 365 Copilot and Teams. Copilot Studio connects from Microsoft's cloud over Streamable HTTP, which AnythingMCP supports.

  1. In Copilot Studio, open your agent (or create one), go to Tools and choose Add a tool → New tool → Model Context Protocol.
  2. Enter a Server name (for example AnythingMCP), a Server description that says what the connector does, and the Server URL https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID. Copilot Studio uses the description to decide when to call the server.
  3. Under authentication, choose API key, set Type to Header and the header name to X-API-Key, then select Create.
  4. In Add tool, choose Create a new connection, paste an MCP API key from AnythingMCP (MCP Servers → your server → API keys) and select Add to agent.
  5. Try it in the agent's Test pane: ask for something that needs the Jobber tools.
  6. Select Publish, then Channels → Microsoft 365 and Microsoft Teams, keep Make agent available in Microsoft Copilot selected and choose Add channel. See agent in Teams installs it for you; in Microsoft 365 Copilot, type @ and pick the agent.

Prefer per-user sign-in? Choose OAuth 2.0 → Dynamic discovery instead of an API key: each user then signs in to AnythingMCP the first time the agent calls it.

Self-hosting? Use your instance's public HTTPS address instead of https://cloud.anythingmcp.com. Copilot Studio connects from Microsoft's cloud, so localhost does not work.

Available tools

ToolWhat it does
jobber_get_accountThe connected Jobber account: id and company name
jobber_list_usersUsers (team members) of the account: id, full name, email, phone, admin and owner flags, status
jobber_list_clientsList or search clients (customers and leads): id, name, first and last name, company, isCompany, isLead, isArchived, primary email and…
jobber_get_clientOne client with emails, phones, billing address, tags, properties (service addresses with ids), the 10 latest jobs and invoices, balance…
jobber_list_propertiesProperties (service addresses where the work happens): id, name, address, whether it is the billing address, the client it belongs to
jobber_list_requestsRequests (incoming work requests and booking forms): id, title, status, source, contact name, company, email, phone, client and property…
jobber_get_requestOne request with its assessment visit (time, instructions, completion), contact details, client and property address
jobber_list_quotesQuotes (estimates): id, number, title, status, amounts (subtotal, discount, tax, total, deposit), client, property, created, updated and…
jobber_get_quoteOne quote with message, line items (name, description, quantity, unit price, total), amounts, client, property and the jobs it became
jobber_list_jobsList or search jobs (work orders): id, job number, title, status, start and end, completed time, total, client, property address, created…
jobber_get_jobOne job with instructions, status, dates, total, client, property address and visit counts (past, scheduled, unscheduled, incomplete)
jobber_list_visitsVisits (scheduled appointments of jobs): id, title, start and end, all-day flag, status, completion, instructions, job with its client…
jobber_list_invoicesInvoices: id, number, status, issued and due dates, amounts (total, balance, payments), client, the job it bills
jobber_get_invoiceOne invoice with message, line items (name, description, quantity, unit price, total), amounts, client and jobs
jobber_list_productsProducts and services of the price list: id, name, description, category, default unit price, internal unit cost, markup, taxable, visible…
jobber_create_clientCreate a client
jobber_update_clientChange a client
jobber_archive_clientArchive a client so it no longer shows in active lists
jobber_create_jobCreate a job at a property (take the property id from jobber_get_client or jobber_list_properties). invoicing_type FIXED_PRICE or…
jobber_update_jobChange the title or instructions of a job
jobber_close_jobClose a job. incomplete_visits decides what happens to visits not done yet: DESTROY_ALL deletes every incomplete visit…
jobber_create_quoteCreate a draft quote
jobber_create_invoiceCreate a draft invoice
jobber_mark_invoice_sentMark an invoice as sent (for invoices delivered outside Jobber)

Example prompts

  • "Which visits are on the schedule for tomorrow, and who is assigned to each one?"
  • "List the invoices that are past due with client, balance and due date."
  • "Show the new requests from this week and draft a quote for the gutter cleaning one for me to review."
  • "Which jobs require invoicing? Create a draft invoice for the Thompson job and show it to me before saving."
  • "Which quotes have been awaiting a response for more than two weeks?"

FAQ

Which Copilot is this for? Microsoft 365 Copilot at work, through agents built in Copilot Studio. The Microsoft Copilot app for personal accounts has no option to add your own MCP server.

What do I need? A work account with access to Copilot Studio (a license or a trial) to build the agent. People who use it in Microsoft 365 Copilot or Teams need access to the agent: share it with them, or ask an admin to publish it to the organization. If your organization applies data policies to Power Platform connectors, they cover MCP servers too.

The agent doesn't call the tools. Check that the header name is exactly X-API-Key and that the key belongs to the same MCP server as the URL, and make the server description specific: Copilot Studio uses it to decide when to call the server. Publish the agent again after each change; in an open chat, type "start over" to get the new version.

Next steps

Was this guide helpful?

Your Jobber agent is one click away.

Install the connector, paste the key, prompt Microsoft Copilot. Free for 7 days, no credit card.

Related guides

Connectors

How to Connect Jobber to ChatGPT via MCP

Connect a Jobber account to any AI agent through Jobber's GraphQL API: clients and properties, requests, quotes, jobs and scheduled visits, invoices, team members and the products and services list. Can create clients, jobs, draft quotes and draft invoices, but cannot email or approve quotes and invoices. OAuth sign-in as a Jobber admin; closing jobs installs switched off.

Connectors

How to Connect Jobber to Claude via MCP

Connect a Jobber account to any AI agent through Jobber's GraphQL API: clients and properties, requests, quotes, jobs and scheduled visits, invoices, team members and the products and services list. Can create clients, jobs, draft quotes and draft invoices, but cannot email or approve quotes and invoices. OAuth sign-in as a Jobber admin; closing jobs installs switched off.

Connectors

How to Connect Jobber to Cursor via MCP

Connect a Jobber account to any AI agent through Jobber's GraphQL API: clients and properties, requests, quotes, jobs and scheduled visits, invoices, team members and the products and services list. Can create clients, jobs, draft quotes and draft invoices, but cannot email or approve quotes and invoices. OAuth sign-in as a Jobber admin; closing jobs installs switched off.

Connectors

How to Connect Jobber to Gemini via MCP

Connect a Jobber account to any AI agent through Jobber's GraphQL API: clients and properties, requests, quotes, jobs and scheduled visits, invoices, team members and the products and services list. Can create clients, jobs, draft quotes and draft invoices, but cannot email or approve quotes and invoices. OAuth sign-in as a Jobber admin; closing jobs installs switched off.

Connectors

How to Connect Jobber to Meta Muse via MCP

Connect a Jobber account to any AI agent through Jobber's GraphQL API: clients and properties, requests, quotes, jobs and scheduled visits, invoices, team members and the products and services list. Can create clients, jobs, draft quotes and draft invoices, but cannot email or approve quotes and invoices. OAuth sign-in as a Jobber admin; closing jobs installs switched off.

Connectors

Jobber to MCP: Clients, Requests, Quotes, Jobs, Visits and Invoices in any AI Agent

Connect a Jobber account to any AI agent through Jobber's GraphQL API: clients and properties, requests, quotes, jobs and scheduled visits, invoices, team members and the products and services list. Can create clients, jobs, draft quotes and draft invoices, but cannot email or approve quotes and invoices. OAuth sign-in as a Jobber admin; closing jobs installs switched off.