ServiceTitan

Provides direct access to ServiceTitan data and actions via MCP, including customers, jobs, appointments, technicians, and invoices.
  • python

0

GitHub Stars

python

Language

4 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "cahlan-servicetitan-mcp": {
      "command": "servicetitan-mcp",
      "args": [],
      "env": {
        "ST_APP_KEY": "YOUR_APP_KEY",
        "ST_CLIENT_ID": "YOUR_CLIENT_ID",
        "ST_TENANT_ID": "YOUR_TENANT_ID",
        "ST_ENVIRONMENT": "production",
        "ST_CLIENT_SECRET": "YOUR_CLIENT_SECRET"
      }
    }
  }
}

You can use this MCP server to give AI assistants direct access to ServiceTitan, enabling you to manage jobs, look up customers, schedule appointments, dispatch technicians, and track invoices from your AI workflows. It acts as a bridge between your AI client and ServiceTitan’s data and actions, streamlining contractor workflows.

How to use

To use this MCP server, connect it to your MCP client by running the server locally or hosting it in your environment, then reference it in your client configuration. Once connected, you can search for customers, view and manage jobs, check invoices, find appointment slots, and assign technicians all through natural language prompts or structured prompts supported by your AI assistant.

How to install

Prerequisites you need on your machine before installation:

Step by step installation and run flow:

# 1) Install the package in editable mode
pip install -e .

# 2) Run the MCP server (command form)
servicetitan-mcp

# 3) Or run the server directly via Python (module form)
python -m servicetitan_mcp.server

Additional information

Configuration and startup require environment variables for ServiceTitan access. You will typically set these in your environment or in a dedicated .env file used by your process manager. The variables you need are shown in the configuration examples and in the connection setup below.

Security and access

The server uses OAuth2 Client Credentials for authentication with ServiceTitan. Your client credentials and application key must be kept secure and not exposed in client-side code. Use a secure secret store or environment management to inject ST_CLIENT_ID, ST_CLIENT_SECRET, ST_APP_KEY, ST_TENANT_ID, and ST_ENVIRONMENT at runtime.

Notes on environment and usage

The following environment variables are required to run and used by the server. They should be provided to the MCP server process at startup.

Available tools

search_customers

Search customers by name, phone, email, or address.

get_customer

Get full customer details including contacts and service history.

list_jobs

List jobs with filters for status, date range, customer, or technician.

get_job

Get complete job details including notes and assigned tech.

create_job

Create a new job for a customer.

get_available_appointments

Find available appointment slots in a date range.

schedule_appointment

Schedule or reschedule a job appointment.

list_technicians

List active technicians with current status and schedule.

dispatch_technician

Assign a technician to a job appointment.

get_invoice

Get invoice details with line items and payment status.

list_unpaid_invoices

List unpaid/overdue invoices for collections follow-up.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational