ServiceTitan

ServiceTitan

ServiceTitan field service management for HVAC, plumbing, electrical and other trades: customers and locations, leads, jobs and appointments, dispatch, capacity and technician shifts, technicians and business units, invoices and payments, estimates, pricebook services and materials, memberships and phone calls. Can create customers, book jobs, add appointments, reschedule, assign technicians, add notes and cancel jobs.

7-day free trial · No credit card · EU-hosted

Ask ServiceTitan anything

Try a real prompt against ServiceTitan via AnythingMCP — Claude calls the tools, returns the answer. Press Enter on your own message to install on Cloud.

Install ServiceTitan on Cloud
ServiceTitan · live via MCP
Share
Opus 4.7

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

Setup in 2 minutes

  1. 1Start a free trial on cloud.anythingmcp.com.
  2. 2Click ServiceTitan in the connector store. Paste credentials when prompted.
  3. 3Mint an MCP API key and point your AI client at the generated MCP URL.
Install ServiceTitan now

Guides for ServiceTitan

Step-by-step setup for the most popular AI clients.

Setting up ServiceTitan

From the connector definition itself: where to find the credentials, what they need to be allowed to do, and which API this adapter talks to.

ServiceTitan

This connector works with the ServiceTitan API v2 (https://api.servicetitan.io) of one ServiceTitan account (tenant), for home and commercial service businesses (HVAC, plumbing, electrical, roofing, pest control): customers and locations (CRM), jobs and appointments (job planning), dispatch and capacity, technicians and settings, invoices and payments, estimates, the pricebook, memberships and phone calls.

Setup (about 15 minutes, needs a ServiceTitan admin)

  1. Sign in to the ServiceTitan Developer Portal (https://developer.servicetitan.io) with an account that may create apps for your company and create a custom app for your own tenant. Under the app's API scopes tick the read scopes of the modules you want (CRM customers, locations, contacts and leads; JPM jobs, appointments, job notes, job history, job types, job cancel reasons, projects; Dispatch appointment assignments, teams, zones, technician shifts; Settings technicians, employees, business units, tag types; Accounting invoices, payments, payment types; Sales estimates; Pricebook services, materials, equipment, categories; Memberships; Telecom calls; Marketing campaigns) and the write scopes only for what the AI may change (CRM customers and locations, JPM jobs and appointments, Dispatch appointment assignments and tn.dis.capacity:w for capacity checks, Sales estimates). Copy the app's App Key into SERVICETITAN_APP_KEY.
  2. In ServiceTitan go to Settings, Integrations, API Application Access, connect the app (Connect New App, allow access) and click Generate to create the Client ID and Client Secret. Paste them into SERVICETITAN_CLIENT_ID and SERVICETITAN_CLIENT_SECRET. The same page shows the Tenant ID (a number): paste it into SERVICETITAN_TENANT_ID.
  3. Install. AnythingMCP gets an access token from https://auth.servicetitan.io/connect/token (OAuth client credentials, renewed automatically about every 15 minutes) and sends the App Key as the ST-App-Key header on every call. The check runs servicetitan_list_customers.

Credentials of ServiceTitan's integration (sandbox) environment do not work here: this connector talks to production.

Workflow

  • Find a customer: servicetitan_list_customers (name, phone, address), then servicetitan_get_customer, servicetitan_list_customer_contacts, servicetitan_list_customer_notes. Locations: servicetitan_list_locations (customer_id), servicetitan_get_location, servicetitan_list_location_contacts. Leads that did not book yet: servicetitan_list_leads.
  • New customer: servicetitan_create_customer (with at least one location), more sites with servicetitan_create_location; change with servicetitan_update_customer; notes with servicetitan_add_customer_note.
  • Book work: look up servicetitan_list_business_units, servicetitan_list_job_types and servicetitan_list_campaigns, check free slots with servicetitan_get_capacity, then servicetitan_create_job with the first appointment. More visits: servicetitan_add_appointment; move one: servicetitan_reschedule_appointment.
  • Jobs: servicetitan_list_jobs (status, customer, technician, dates), servicetitan_get_job, servicetitan_get_job_history, servicetitan_list_job_notes, servicetitan_add_job_note, servicetitan_update_job. Cancel with a reason from servicetitan_list_job_cancel_reasons via servicetitan_cancel_job (confirm with the user first). Larger work: servicetitan_list_projects.
  • Schedule and dispatch: servicetitan_list_appointments, servicetitan_get_appointment, servicetitan_list_appointment_assignments, servicetitan_assign_technicians, servicetitan_unassign_technicians, servicetitan_list_technician_shifts, servicetitan_list_teams, servicetitan_list_zones.
  • People and setup: servicetitan_list_technicians, servicetitan_get_technician, servicetitan_list_employees, servicetitan_list_tag_types.
  • Money: servicetitan_list_invoices (by customer, job or ids), servicetitan_list_payments, servicetitan_list_payment_types.
  • Sales: servicetitan_list_estimates, servicetitan_get_estimate, servicetitan_list_estimate_items; servicetitan_sell_estimate marks one sold.
  • Pricebook: servicetitan_list_pricebook_services, servicetitan_list_pricebook_materials, servicetitan_list_pricebook_equipment (search_text), servicetitan_list_pricebook_categories.
  • Memberships: servicetitan_list_memberships, servicetitan_get_membership, servicetitan_list_membership_types, servicetitan_list_recurring_service_events (maintenance visits due).
  • Calls: servicetitan_list_calls, servicetitan_get_call.

Reading the answers: ids are integers. Times are UTC in ISO 8601 (2026-10-30T14:00:00Z); convert to the business's time zone before quoting them, and send UTC when booking. Accounting amounts (total, balance, subTotal) come as decimal strings in the account currency. A customer is the bill-to account; work happens at its locations, and every job belongs to one location.

Paging: lists answer { page, pageSize, hasMore, totalCount, data }. Ask for the next page while hasMore is true; include_total adds totalCount. ids filters take at most 50 comma-separated ids. Most lists return only active records unless active is Any or False. modified_on_or_after picks up changes since a date.

Writes: updates change only the fields passed; list fields such as tag_type_ids replace the whole list. Show the user what will be booked, cancelled or changed and wait for a yes. Nothing here deletes records.

Limits and errors: ServiceTitan limits requests per app and tenant and answers 429 when they come too fast; wait and retry. 401 means the client ID or secret is wrong or the app was disconnected; 403 means the app lacks the scope for that module (add it in the Developer Portal, then reconnect in API Application Access) or the App Key is missing or wrong; 404 an unknown id or a wrong tenant ID; 400 lists the invalid fields.

Your AI is two clicks away from ServiceTitan.

Install the connector, paste your credentials, ask your AI a question. 7-day free trial, no credit card.