Elysia Tools Docs
ES
Idioma
ZHESPTRUFRDEEN
Volver al sitio
Explorar herramientas

Document Tools

Generador PDF de entrenamiento fitness

Genera un PDF imprimible de entrenamiento desde JSON o CSV con tablas, casillas de progreso y QR opcionales

file· Resultado de archivoAbrir herramienta

Inicio rápido

Llama a esta herramienta desde tu código en tres lenguajes.

cURL
# 1) Request a presigned URL → returns { uploadUrl, storageKey }
curl -X POST 'https://api.elysiatools.com/api/upload/presign/fitness-workout-pdf-generator' \
  -H 'Content-Type: application/json' \
  -d '{"filename":"workoutFile.ext","contentType":"application/octet-stream","size":12345}'

# 2) PUT the file bytes directly to the presigned uploadUrl
curl -X PUT '<presigned uploadUrl>' \
  --data-binary @/path/to/file.ext

# 3) Call the tool, passing the returned storageKey for each file field
curl -X POST 'https://api.elysiatools.com/es/api/tools/fitness-workout-pdf-generator' \
  -F 'workoutData=[
  {
    "day": "Push Day",
    "exercise": "Bench Press",
    "sets": "4",
    "reps": "8",
    "rest": "90s",
    "notes": "Pause on chest",
    "videoUrl": "https://example.com/bench"
  },
  {
    "day": "Push Day",
    "exercise": "Incline Dumbbell Press",
    "sets": "3",
    "reps": "10",
    "rest": "75s",
    "notes": "Controlled eccentric",
    "videoUrl": "https://example.com/incline"
  },
  {
    "day": "Pull Day",
    "exercise": "Pull-Up",
    "sets": "4",
    "reps": "AMRAP",
    "rest": "90s",
    "notes": "Full hang each rep",
    "videoUrl": "https://example.com/pullup"
  }
]' \
  -F 'workoutFile=uploads/2026/01/01/your-tool-1700000000000-abc123.ext' \
  -F 'programTitle=Client Strength Block' \
  -F 'subtitle=Week 1-4 printable training sheet' \
  -F 'includeProgressBoxes=true' \
  -F 'includeQrCodes=true' \
  -F 'pageSize=A4'

© 2026 Elysia Tools. Documentación para desarrolladores.

Volver al sitioExplorar herramientas

Referencia de la API

Envía una petición POST con tus entradas en JSON. Los parámetros de tipo archivo requieren una subida previa.

Endpoint

HTTP
POST https://api.elysiatools.com/es/api/tools/fitness-workout-pdf-generator

Parámetros

NombreTipoObligatorioDescripción
workoutDatatextareaNo—
workoutFilefilesubida requeridaNo—
programTitletextNo—
subtitletextNo—
includeProgressBoxescheckboxNo—
includeQrCodescheckboxNo—
pageSizeselectNo—
Los parámetros de tipo archivo deben subirse primero mediante POST /upload/fitness-workout-pdf-generator; el filePath devuelto se pasa luego al campo correspondiente.

Formato de respuesta

Resultado de archivo

JSON
{
  "filePath": "/public/processing/randomid.ext",
  "fileName": "output.ext",
  "contentType": "application/octet-stream",
  "size": 1024,
  "metadata": {
    "key": "value"
  },
  "error": "Error message (optional)",
  "message": "Notification message (optional)"
}

Integración MCP

Añade esta herramienta a tu servidor Model Context Protocol para que los agentes de IA puedan listarla y llamarla.

Configuración del servidor

Añade este bloque a la configuración de tu cliente MCP:

mcp.json
{
  "mcpServers": {
    "elysiatools-fitness-workout-pdf-generator": {
      "name": "fitness-workout-pdf-generator",
      "description": "Genera un PDF imprimible de entrenamiento desde JSON o CSV con tablas, casillas de progreso y QR opcionales",
      "baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=fitness-workout-pdf-generator",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

Listar herramientas disponibles

Tras conectar al endpoint SSE, lista las herramientas expuestas:

tools/list
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list"
}

Llamar a esta herramienta

Invoca la herramienta por su id; los argumentos se construyen a partir de sus parámetros:

tools/call
{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "fitness-workout-pdf-generator",
    "arguments": {
  "workoutData": "[\n  {\n    \"day\": \"Push Day\",\n    \"exercise\": \"Bench Press\",\n    \"sets\": \"4\",\n    \"reps\": \"8\",\n    \"rest\": \"90s\",\n    \"notes\": \"Pause on chest\",\n    \"videoUrl\": \"https://example.com/bench\"\n  },\n  {\n    \"day\": \"Push Day\",\n    \"exercise\": \"Incline Dumbbell Press\",\n    \"sets\": \"3\",\n    \"reps\": \"10\",\n    \"rest\": \"75s\",\n    \"notes\": \"Controlled eccentric\",\n    \"videoUrl\": \"https://example.com/incline\"\n  },\n  {\n    \"day\": \"Pull Day\",\n    \"exercise\": \"Pull-Up\",\n    \"sets\": \"4\",\n    \"reps\": \"AMRAP\",\n    \"rest\": \"90s\",\n    \"notes\": \"Full hang each rep\",\n    \"videoUrl\": \"https://example.com/pullup\"\n  }\n]",
  "workoutFile": "https://example.com/file.ext",
  "programTitle": "Client Strength Block",
  "subtitle": "Week 1-4 printable training sheet",
  "includeProgressBoxes": true,
  "includeQrCodes": true,
  "pageSize": "A4"
}
  }
}
Encadena varias herramientas en una sesión con una lista toolId separada por comas, p. ej. /mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp (máx. 20).
Los parámetros de archivo aceptan únicamente una URL de archivo pública (https://…). No se admiten rutas locales, data: URI ni cadenas Base64.

¿Dudas o problemas? Contacta con [email protected]

Explorar herramientas
Abrir herramienta