ServiceTitan MCP Server
Connects Claude to ServiceTitan via API, providing 60 tools across CRM, Jobs, Accounting, and more for business management.
README
ServiceTitan MCP Server
Connect Claude to ServiceTitan via API. 60 tools covering CRM, Jobs, Accounting, Estimates, Dispatch, Pricebook, Inventory, Memberships, Payroll, Marketing, Reporting, Timesheets, Telecom, and more.
Built for any ServiceTitan customer — each tenant manages its own credentials independently.
Quick Start
# Clone and install
git clone https://github.com/glassdoc/servicetitan-mcp.git
cd servicetitan-mcp
pip install -e .
Configuration
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, or %APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"servicetitan": {
"command": "python",
"args": ["-m", "servicetitan_mcp.server"],
"env": {
"ST_APP_KEY": "your-app-key",
"ST_CLIENT_ID": "cid.your-client-id",
"ST_CLIENT_SECRET": "cs1.your-client-secret",
"ST_TENANT_ID": "your-tenant-id"
}
}
}
}
For multiple tenants, add separate server entries (see claude_desktop_config_example.json).
Getting Your Credentials
- Go to Settings > Integrations > API Application Access in your ServiceTitan tenant
- Find the Claude MCP Integration app and click Connect
- Fill in the restriction fields (booking_provider, gps_provider, report_category)
- Accept Terms and Conditions
- Copy your Client ID and generate a Client Secret
- Your Tenant ID is shown in the top-right corner of any ServiceTitan page
- The App Key is:
wj8g1SurukhS4
Available Tools (60)
CRM
list_customers— Search and list customersget_customer— Get customer details by IDlist_locations— List service locationsget_location— Get location detailslist_leads— List leads/opportunitieslist_bookings— List bookingslist_contacts— List customer contacts
Job Planning & Management
list_jobs— List jobs with filters (status, customer, date range)get_job— Get full job detailslist_appointments— List appointments by date rangelist_job_types— List configured job typeslist_projects— List projectsget_project— Get project details
Accounting
list_invoices— List invoices (filter by job, customer, date)get_invoice— Get invoice with line itemslist_payments— List payments receivedlist_payment_types— List payment typeslist_inventory_bills— List AP/inventory billslist_journal_entries— List journal entrieslist_payment_terms— List payment termslist_tax_zones— List tax zones
Sales & Estimates
list_estimates— List estimates (filter by job, status, sold date)get_estimate— Get estimate with line items
Dispatch
list_appointment_assignments— Technician-to-appointment assignmentslist_technician_shifts— Shift scheduleslist_zones— Dispatch zoneslist_non_job_appointments— Meetings, training, etc.
Pricebook
list_pricebook_services— Sellable serviceslist_pricebook_materials— Materialslist_pricebook_equipment— Equipmentlist_pricebook_categories— Categories
Inventory
list_purchase_orders— Purchase orderslist_warehouses— Warehouseslist_inventory_vendors— Vendors/supplierslist_trucks— Vehicle inventory
Memberships
list_memberships— Customer membershipslist_membership_types— Membership type definitionslist_recurring_services— Recurring services
Settings
list_employees— Employeesget_employee— Employee detailslist_technicians— Technicianslist_business_units— Business unitslist_tag_types— Tag typeslist_user_roles— User roles
Reporting
list_report_categories— Report categorieslist_reports_in_category— Reports in a categoryrun_report— Run a dynamic report
Payroll
list_payrolls— Payroll runslist_employee_payrolls— Employee payroll detailslist_gross_pay_items— Gross pay line items
Telecom
list_calls— Phone calls
Forms
list_forms— Form templateslist_form_submissions— Submitted forms
Marketing
list_campaigns— Marketing campaignslist_campaign_costs— Campaign costs
Equipment, Tasks, Timesheets
list_installed_equipment— Installed equipment at locationslist_tasks— Task management taskslist_activities— Timesheet activitieslist_activity_categories— Activity categories
Power User
servicetitan_api_call— Make any arbitrary API call (GET/POST/PATCH/PUT)
Authentication
Uses OAuth 2.0 Client Credentials flow. Tokens auto-refresh every 15 minutes. No user interaction required.
Rate Limits
- Regular APIs: 60 calls/second per app per tenant
- Reporting APIs: 5 requests/minute per report per tenant
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.