mcpengine/infra/factory-tools/test-configs/servicetitan-tests.json
Jake Shore f3c4cd817b Add all MCP servers + factory infra to MCPEngine — 2026-02-06
=== NEW SERVERS ADDED (7) ===
- servers/closebot — 119 tools, 14 modules, 4,656 lines TS (Stage 7)
- servers/google-console — Google Search Console MCP (Stage 7)
- servers/meta-ads — Meta/Facebook Ads MCP (Stage 8)
- servers/twilio — Twilio communications MCP (Stage 8)
- servers/competitor-research — Competitive intel MCP (Stage 6)
- servers/n8n-apps — n8n workflow MCP apps (Stage 6)
- servers/reonomy — Commercial real estate MCP (Stage 1)

=== FACTORY INFRASTRUCTURE ADDED ===
- infra/factory-tools — mcp-jest, mcp-validator, mcp-add, MCP Inspector
  - 60 test configs, 702 auto-generated test cases
  - All 30 servers score 100/100 protocol compliance
- infra/command-center — Pipeline state, operator playbook, dashboard config
- infra/factory-reviews — Automated eval reports

=== DOCS ADDED ===
- docs/MCP-FACTORY.md — Factory overview
- docs/reports/ — 5 pipeline evaluation reports
- docs/research/ — Browser MCP research

=== RULES ESTABLISHED ===
- CONTRIBUTING.md — All MCP work MUST go in this repo
- README.md — Full inventory of 37 servers + infra docs
- .gitignore — Updated for Python venvs

TOTAL: 37 MCP servers + full factory pipeline in one repo.
This is now the single source of truth for all MCP work.
2026-02-06 06:32:29 -05:00

288 lines
7.4 KiB
JSON

{
"server": {
"command": "node",
"args": [
"/Users/jakeshore/.clawdbot/workspace/mcp-diagrams/mcp-servers/servicetitan/dist/index.js"
],
"env": {
"SERVICETITAN_CLIENT_ID": "factory_discovery_dummy",
"SERVICETITAN_CLIENT_SECRET": "factory_discovery_dummy",
"SERVICETITAN_TENANT_ID": "factory_discovery_dummy"
}
},
"tests": {
"tools": {
"list_jobs": {
"args": {
"page": 50,
"pageSize": 50,
"status": "test_value",
"customerId": 50,
"technicianId": 50,
"createdOnOrAfter": "test_value",
"completedOnOrAfter": "test_value"
},
"expect": "content && content.length > 0"
},
"list_jobs:empty-status": {
"args": {
"page": 50,
"pageSize": 50,
"status": "",
"customerId": 50,
"technicianId": 50,
"createdOnOrAfter": "test_value",
"completedOnOrAfter": "test_value"
},
"expect": "exists"
},
"list_jobs:empty-createdOnOrAfter": {
"args": {
"page": 50,
"pageSize": 50,
"status": "test_value",
"customerId": 50,
"technicianId": 50,
"createdOnOrAfter": "",
"completedOnOrAfter": "test_value"
},
"expect": "exists"
},
"list_jobs:empty-completedOnOrAfter": {
"args": {
"page": 50,
"pageSize": 50,
"status": "test_value",
"customerId": 50,
"technicianId": 50,
"createdOnOrAfter": "test_value",
"completedOnOrAfter": ""
},
"expect": "exists"
},
"get_job": {
"args": {
"job_id": 50
},
"expect": "content && content.length > 0"
},
"create_job": {
"args": {
"customerId": 50,
"locationId": 50,
"jobTypeId": 50,
"priority": "test_value",
"businessUnitId": 50,
"campaignId": 50,
"summary": "test_value",
"scheduledStart": "test_value",
"scheduledEnd": "test_value"
},
"expect": "content && content.length > 0"
},
"create_job:empty-priority": {
"args": {
"customerId": 50,
"locationId": 50,
"jobTypeId": 50,
"priority": "",
"businessUnitId": 50,
"campaignId": 50,
"summary": "test_value",
"scheduledStart": "test_value",
"scheduledEnd": "test_value"
},
"expect": "exists"
},
"create_job:empty-summary": {
"args": {
"customerId": 50,
"locationId": 50,
"jobTypeId": 50,
"priority": "test_value",
"businessUnitId": 50,
"campaignId": 50,
"summary": "",
"scheduledStart": "test_value",
"scheduledEnd": "test_value"
},
"expect": "exists"
},
"create_job:empty-scheduledStart": {
"args": {
"customerId": 50,
"locationId": 50,
"jobTypeId": 50,
"priority": "test_value",
"businessUnitId": 50,
"campaignId": 50,
"summary": "test_value",
"scheduledStart": "",
"scheduledEnd": "test_value"
},
"expect": "exists"
},
"create_job:empty-scheduledEnd": {
"args": {
"customerId": 50,
"locationId": 50,
"jobTypeId": 50,
"priority": "test_value",
"businessUnitId": 50,
"campaignId": 50,
"summary": "test_value",
"scheduledStart": "test_value",
"scheduledEnd": ""
},
"expect": "exists"
},
"list_customers": {
"args": {
"page": 50,
"pageSize": 50,
"name": "Test Name",
"email": "test@example.com",
"phone": "test_value",
"createdOnOrAfter": "test_value",
"active": true
},
"expect": "content && content.length > 0"
},
"list_customers:empty-name": {
"args": {
"page": 50,
"pageSize": 50,
"name": "",
"email": "test@example.com",
"phone": "test_value",
"createdOnOrAfter": "test_value",
"active": true
},
"expect": "exists"
},
"list_customers:empty-email": {
"args": {
"page": 50,
"pageSize": 50,
"name": "Test Name",
"email": "",
"phone": "test_value",
"createdOnOrAfter": "test_value",
"active": true
},
"expect": "exists"
},
"list_customers:empty-phone": {
"args": {
"page": 50,
"pageSize": 50,
"name": "Test Name",
"email": "test@example.com",
"phone": "",
"createdOnOrAfter": "test_value",
"active": true
},
"expect": "exists"
},
"list_customers:empty-createdOnOrAfter": {
"args": {
"page": 50,
"pageSize": 50,
"name": "Test Name",
"email": "test@example.com",
"phone": "test_value",
"createdOnOrAfter": "",
"active": true
},
"expect": "exists"
},
"get_customer": {
"args": {
"customer_id": 50
},
"expect": "content && content.length > 0"
},
"list_invoices": {
"args": {
"page": 50,
"pageSize": 50,
"status": "test_value",
"customerId": 50,
"jobId": 50,
"createdOnOrAfter": "test_value",
"total_gte": 50
},
"expect": "content && content.length > 0"
},
"list_invoices:empty-status": {
"args": {
"page": 50,
"pageSize": 50,
"status": "",
"customerId": 50,
"jobId": 50,
"createdOnOrAfter": "test_value",
"total_gte": 50
},
"expect": "exists"
},
"list_invoices:empty-createdOnOrAfter": {
"args": {
"page": 50,
"pageSize": 50,
"status": "test_value",
"customerId": 50,
"jobId": 50,
"createdOnOrAfter": "",
"total_gte": 50
},
"expect": "exists"
},
"list_technicians": {
"args": {
"page": 50,
"pageSize": 50,
"active": true,
"businessUnitId": 50
},
"expect": "content && content.length > 0"
},
"list_appointments": {
"args": {
"page": 50,
"pageSize": 50,
"startsOnOrAfter": "test_value",
"startsOnOrBefore": "test_value",
"technicianId": 50,
"jobId": 50
},
"expect": "content && content.length > 0"
},
"list_appointments:empty-startsOnOrAfter": {
"args": {
"page": 50,
"pageSize": 50,
"startsOnOrAfter": "",
"startsOnOrBefore": "test_value",
"technicianId": 50,
"jobId": 50
},
"expect": "exists"
},
"list_appointments:empty-startsOnOrBefore": {
"args": {
"page": 50,
"pageSize": 50,
"startsOnOrAfter": "test_value",
"startsOnOrBefore": "",
"technicianId": 50,
"jobId": 50
},
"expect": "exists"
}
},
"resources": {},
"prompts": {},
"timeout": 30000
}
}