Plataforma de agentes y API Road User Tools
Calcular tiempo de trayecto
Calcule la duración del trayecto a partir de la distancia y la velocidad media.
Interfaces
POST
Punto final REST
/api/v1/journey-timeMCP
Nombre de la herramienta
calculate_journey_timeSolicitar
Envíe la solicitud como JSON. Los clientes MCP pasan los mismos campos que los argumentos de la herramienta.
cURLshell
curl -X POST https://roaduser.tools/api/v1/journey-time \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "content-type: application/json" \
-d '{
"distance": {
"value": 250,
"unit": "km"
},
"speed": {
"value": 100,
"unit": "kmh"
}
}'Cuerpo de la solicitudjson
{
"distance": {
"value": 250,
"unit": "km"
},
"speed": {
"value": 100,
"unit": "kmh"
}
}Respuesta
REST envuelve el resultado del cálculo en el sobre de éxito estándar. MCP devuelve los mismos datos de cálculo que la salida de herramienta estructurada.
JSON
{
"ok": true,
"data": {
"totalSeconds": 9000,
"totalHours": 2.5,
"duration": {
"hours": 2,
"minutes": 30,
"seconds": 0
},
"formatted": "2:30:00"
}
}{
"ok": false,
"error": {
"code": "invalid_request",
"message": "Invalid request input."
}
}Esquemas
Las siguientes definiciones muestran el esquema JSON completo utilizado para validar entradas y describir salidas.
Esquema de entrada
{
"type": "object",
"additionalProperties": false,
"properties": {
"distance": {
"type": "object",
"additionalProperties": false,
"description": "Journey distance. Must be finite and non-negative.",
"properties": {
"value": {
"type": "number"
},
"unit": {
"type": "string",
"enum": [
"km",
"mi",
"m"
]
}
},
"required": [
"value",
"unit"
]
},
"speed": {
"type": "object",
"additionalProperties": false,
"description": "Average speed. Must be finite and greater than zero.",
"properties": {
"value": {
"type": "number"
},
"unit": {
"type": "string",
"enum": [
"kmh",
"mph",
"ms",
"kn"
]
}
},
"required": [
"value",
"unit"
]
}
},
"required": [
"distance",
"speed"
]
}Esquema de salida
{
"type": "object",
"additionalProperties": false,
"properties": {
"totalSeconds": {
"type": "number",
"description": "Total duration in seconds, full precision."
},
"totalHours": {
"type": "number",
"description": "Total duration in decimal hours."
},
"duration": {
"type": "object",
"additionalProperties": false,
"description": "Duration split into whole hours, minutes, and seconds.",
"properties": {
"hours": {
"type": "number"
},
"minutes": {
"type": "number"
},
"seconds": {
"type": "number"
}
},
"required": [
"hours",
"minutes",
"seconds"
]
},
"formatted": {
"type": "string",
"description": "H:MM:SS presentation of the duration."
}
},
"required": [
"totalSeconds",
"totalHours",
"duration",
"formatted"
]
}