{
  "name": "dispatchnode",
  "version": "1.0.0",
  "protocol": "mcp",
  "protocolVersion": "2025-03-26",
  "description": "DispatchNode MCP Server — AI-powered field service dispatch platform with scheduling, availability, and pricing tools.",
  "transport": {
    "type": "http",
    "url": "https://www.dispatchnode.com/api/mcp"
  },
  "authentication": {
    "customer": {
      "type": "slug",
      "header": "X-Org-Slug",
      "description": "Organization slug for customer-tier tools"
    },
    "operator": {
      "type": "bearer",
      "description": "Org-scoped API key for full access"
    }
  },
  "tools": [
    {
      "name": "calculate_dispatch_tco",
      "description": "Estimate total cost of ownership for field service dispatch platforms based on fleet size and call volume.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "trucks": { "type": "number", "description": "Number of trucks/technicians in the operation" },
          "current_software": { "type": "string", "description": "Name of current software to compare against" }
        },
        "required": ["trucks"]
      }
    },
    {
      "name": "book_job",
      "description": "Schedule a field service job with calendar sync and deposit collection.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "service_type": { "type": "string" },
          "address": { "type": "string" },
          "preferred_date": { "type": "string", "format": "date" },
          "customer_name": { "type": "string" },
          "customer_phone": { "type": "string" }
        },
        "required": ["service_type", "address", "customer_name", "customer_phone"]
      }
    },
    {
      "name": "check_availability",
      "description": "Query crew availability by date and service zone.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "date": { "type": "string", "format": "date" },
          "zip_code": { "type": "string" }
        },
        "required": ["date"]
      }
    },
    {
      "name": "get_pricing",
      "description": "Retrieve pricing for a service category.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "service_type": { "type": "string" },
          "zip_code": { "type": "string" }
        },
        "required": ["service_type"]
      }
    }
  ]
}
