ServiceTitan
ServiceTitan is field service management software for home and commercial service contractors, covering customers, jobs, dispatch, estimates, invoicing, inventory, memberships, payroll, and reporting.
Integration
- Vendor
- ServiceTitan
- Category
- other
- Auth
- OAUTH2
- Tools
- 50
- Composio slug
servicetitan
Tools
- Activate Employee Account
Activate a ServiceTitan employee's login account.
- Activate Technician Account
Activate a ServiceTitan technician's login account with the required license type and, optionally, assign a truck.
- Add Credit Memo Splits
Apply a credit memo to one or more invoices in ServiceTitan by adding splits, each an invoice id and an amount. Splits are added to the memo's existing ones; this operation does not remove or replace them.
- Add Customer Tag
Add one tag type to one customer in ServiceTitan. Both ids go in the path and no request body is sent; use ADD_TAGS_TO_CUSTOMERS for several at once.
- Add Equipment to Equipment System
Attach existing installed equipment to a ServiceTitan equipment system, by system id and a list of installed equipment ids. Returns the updated system.
- Add Location Tag
Add one tag type to one location in ServiceTitan. Both ids go in the path and no request body is sent. There is no bulk variant for locations; call once per location and tag.
- Add Tags To Customers
Add one or more tag types to several customers in ServiceTitan in one call. Every tag type listed is added to every customer listed; use ADD_CUSTOMER_TAG for a single customer and tag.
- Approve Purchase Order Request
Approve a ServiceTitan purchase order request by its request id. Takes the request id from LIST_PURCHASE_ORDER_REQUESTS, not a purchase order id. No way to withdraw an approval is documented.
- Assign Technician Skills
Assign existing skills to a ServiceTitan technician. With replace_existing_skills true the technician's current skills are replaced by the given list; with false the list is added.
- Assign Technicians to Appointment
Assign one or more technicians to a ServiceTitan job appointment. Returns the appointment.
- Attach Job Equipment
Attach one or more equipment items to a ServiceTitan job. Returns the full list of equipment IDs attached after the change. The spec does not say which equipment ids these are; they are not the equipment system ids of the equipment-system t
- Attach Job to Project
Attach an existing ServiceTitan job to a project. Takes no body.
- Bulk Create Installed Equipment
Create up to 1000 installed equipment records in ServiceTitan in one atomic request. If any record is invalid the whole batch is rolled back and nothing is created.
- Bulk Create Pricebook Items
Create many ServiceTitan pricebook items in one request: services, equipment, materials, and discounts and fees. At least one of those four collections must contain an item. Give each item a customId; links inside the same request (serviceM
- Bulk Delete Technician Shiftsdestructive
Delete every ServiceTitan technician shift in a date range, for all technicians. The only criteria are start and end; there is no technician filter, so check the range with List Technician Shifts first.
- Bulk Update Pricebook Items
Update many ServiceTitan pricebook items in one request: services, equipment, materials, and discounts and fees. At least one of those four collections must contain an item. Each item must carry its id and the documented full set of fields,
- Cancel Inventory Receipt
Cancel a ServiceTitan inventory receipt by id, optionally recording a cancellation reason. This cannot be undone through the API: no way to reopen a canceled inventory receipt is documented.
- Cancel Inventory Return
Cancel a ServiceTitan vendor return by id, optionally recording a cancellation reason. This cannot be undone through the API: no way to reopen a canceled vendor return is documented.
- Cancel Job
Cancel a ServiceTitan job with a cancel reason and memo. Jobs cannot be deleted, only canceled; get the reason ID from List Job Cancel Reasons.
- Cancel Purchase Order
Cancel a ServiceTitan purchase order by id, optionally recording a cancellation reason. This cannot be undone through the API: no way to reopen a canceled purchase order is documented.
- Cancel Report Data Query
Cancel a long-running report data query in ServiceTitan and release its query_token. Succeeds even if the query had already finished; the result can no longer be fetched afterwards.
- Confirm Appointment
Mark a ServiceTitan job appointment as confirmed. Takes no body; the appointment's isConfirmed flag becomes true.
- Create Adjustment Invoice
Create an adjustment invoice against an existing invoice in ServiceTitan, for example a refund or a write-off; adjustment_to_id names the invoice being adjusted. It cannot create an ordinary job invoice, and the response is a bare integer t
- Create Appointment
Add a new appointment to an existing ServiceTitan job, with start and end times and optional technicians. A job's first appointment is created by Create Job; use this only for additional visits.
- Create Arrival Window
Create a ServiceTitan arrival window with a start time and duration for a set of business units.
- Create Booking
Create a booking in ServiceTitan, an incoming request that office staff later book as a job or dismiss. It does not create a job; send at least one phone or email in contacts so staff can follow up.
- Create Booking Contact
Add a contact entry (phone, email or fax) to a booking in ServiceTitan for a given booking provider. This is the booking's own contact list, separate from the GUID person contacts managed with CREATE_CONTACT and CREATE_CONTACT_METHOD.
- Create Booking Provider Tag
Create a booking provider tag in ServiceTitan, the label that identifies one source of bookings. Both tag_name and description are required.
- Create Budget Code
Create a full ServiceTitan budget code from a list of segment item IDs. Use Create Partial Budget Code when some segments have no item chosen.
- Create Business Hours
Set the ServiceTitan business hours by sending the open time ranges for weekdays, Saturday and Sunday. All three lists are required; whether this replaces existing hours is not documented.
- Create Campaign
Create a marketing campaign in ServiceTitan. name, business_unit_id, category_id and active are required.
- Create Campaign Category
Create a marketing campaign category in ServiceTitan. Returns only the new category's id.
- Create Campaign Cost
Create the cost record of a marketing campaign for one month in ServiceTitan. The amount is given as a daily cost, not a monthly total.
- Create Contact
Create a contact (a person record with name and title) in ServiceTitan. It is not linked to anything yet; add phone or email with CREATE_CONTACT_METHOD and link it with CREATE_CONTACT_RELATIONSHIP.
- Create Contact Method
Add a contact method (phone, mobile phone, email or fax) to a contact in ServiceTitan. contact_id is the GUID of a person contact from CREATE_CONTACT or LIST_CONTACTS; to add a phone or email directly to a customer, location or booking use
- Create Contact Relationship
Link a contact to a customer, location or booking in ServiceTitan. All three values go in the path and no request body is sent.
- Create Customer
Create a customer in ServiceTitan together with its first location or locations. name, address and at least one entry in locations are required; merging or deactivating customers is not available through the API.
- Create Customer Contact
Add a contact entry (phone, mobile phone, email or fax) to a customer in ServiceTitan. It is not copied to the customer's locations. This is the customer's own contact list, separate from the GUID person contacts managed with CREATE_CONTACT
- Create Customer Note
Add a note to a customer in ServiceTitan. Set add_to_locations to copy the same note to the customer's active locations.
- Create Employee
Create an office employee in ServiceTitan with a role and positions; returns the new employee id. account_creation_method picks CreateLater, SendInvite or AssignLoginAndPassword; the spec does not describe what each one does.
- Create Equipment System
Create an equipment system at a ServiceTitan customer location, optionally attaching installed equipment to it. The name must be unique within the location.
- Create Equipment Type
Create an equipment type in ServiceTitan for classifying installed equipment.
- Create Estimate
Create an estimate in ServiceTitan on a job or project, with its line items. Use it to quote work before it is sold; every field is optional in the spec, and which ones ServiceTitan actually needs (such as job_id or project_id) is not docum
- Create Estimate Template
Create an estimate template in ServiceTitan from a list of pricebook items. Static templates need a unitPrice on every item; Dynamic templates take prices from the pricebook.
- Create External Call Attribution
Attribute a phone call tracked by outside call-tracking software to a web session in ServiceTitan Marketing Ads. It records attribution only; it does not create a call, lead or job.
- Create Finding
Create a finding in ServiceTitan to record an issue or observation at a customer location, with an urgency level and optional links to installed equipment and the job where it was found. Attachments link file URLs; no file content is upload
- Create Finding Attachment
Add an attachment to a ServiceTitan finding by linking a file URL with a file name and media type. No file content is sent; the spec expects the URL returned by ServiceTitan's findings upload endpoint, which is not available as a tool.
- Create GL Account
Create a general ledger (GL) account in ServiceTitan and return the created account. The spec marks no field as required; use LIST_GL_ACCOUNT_TYPES for valid type names.
- Create GPS Pings
Send GPS location pings for technician vehicles or units to ServiceTitan for a configured GPS provider, so they plot on the Dispatch Map. Returns a per-ping result; a ping can fail while the call succeeds.
- Create Gross Pay Item
Create a gross pay item inside an existing payroll in ServiceTitan and return its id. payroll_id, amount, activity_code_id and date are required; find the payroll id with LIST_PAYROLLS.
Setup
- Create or open a Switchy Project.
- Open Integrations and connect ServiceTitan.
- Authorise through oauth2. Switchy stores the connection against your org.
- Everyone in the Project can now @-mention the ServiceTitan tools in chat.
What teammates see: by default, memories from ServiceTitan are scoped to the Project (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.
Works well with
Top models
Compatibility data appears once enough Projects have used this MCP together with a given model.