loading…
Search for a command to run...
loading…
Provides AI assistants with direct access to ServiceTitan's field service management platform for home services contractors. It enables users to manage customer
Provides AI assistants with direct access to ServiceTitan's field service management platform for home services contractors. It enables users to manage customers, jobs, appointments, technician dispatching, and invoices through natural language.
AI-native interface to ServiceTitan for home services contractors
An MCP (Model Context Protocol) server that gives AI assistants direct access to ServiceTitan — the leading field service management platform. Built for HVAC, plumbing, electrical, and other home services contractors who want their AI to manage jobs, look up customers, schedule appointments, dispatch technicians, and track invoices.
| Tool | Description |
|---|---|
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 |
cp .env.example .env
# Edit .env with your credentials:
# ST_CLIENT_ID=your_client_id
# ST_CLIENT_SECRET=your_client_secret
# ST_APP_KEY=your_app_key
# ST_TENANT_ID=your_tenant_id
# ST_ENVIRONMENT=production # or "integration" for sandbox
# Install
pip install -e .
# Run the MCP server
servicetitan-mcp
# Or run directly
python -m servicetitan_mcp.server
Add to your MCP client configuration (e.g., Claude Desktop):
{
"mcpServers": {
"servicetitan": {
"command": "servicetitan-mcp",
"env": {
"ST_CLIENT_ID": "your_client_id",
"ST_CLIENT_SECRET": "your_client_secret",
"ST_APP_KEY": "your_app_key",
"ST_TENANT_ID": "your_tenant_id",
"ST_ENVIRONMENT": "production"
}
}
}
}
ServiceTitan uses OAuth2 Client Credentials grant:
https://auth.servicetitan.io/connect/token (production) or https://auth-integration.servicetitan.io/connect/token (sandbox)https://api.servicetitan.io (production) or https://api-integration.servicetitan.io (sandbox)Authorization: Bearer {token} + ST-App-Key: {app_key}| Variable | Description |
|---|---|
ST_CLIENT_ID |
OAuth2 Client ID |
ST_CLIENT_SECRET |
OAuth2 Client Secret |
ST_APP_KEY |
ServiceTitan Application Key |
ST_TENANT_ID |
Your ServiceTitan Tenant ID |
ST_ENVIRONMENT |
production or integration (default: production) |
| Module | Base Path | Entities |
|---|---|---|
| CRM | /crm/v2/tenant/{id}/ |
Customers, Contacts, Locations, Bookings |
| Job Planning | /jpm/v2/tenant/{id}/ |
Jobs, Appointments, Job Types |
| Dispatch | /dispatch/v2/tenant/{id}/ |
Technician Shifts, Appointment Assignments |
| Accounting | /accounting/v2/tenant/{id}/ |
Invoices, Payments |
| Settings | /settings/v2/tenant/{id}/ |
Technicians, Employees, Business Units |
# Install with dev dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Lint
ruff check src/ tests/
Coming Day 3 — pay-per-event billing on Apify
The apify_actor/ directory contains the deployment scaffold for the Apify platform.
Coming — listing at mcp.so
Coming — listing at smithery.ai
MIT
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"servicetitan-mcp-server": {
"command": "npx",
"args": []
}
}
}Web content fetching and conversion for efficient LLM usage.
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also