Document Tools
Genere un PDF imprimable dentrainement depuis JSON ou CSV avec tableaux, cases de suivi et QR optionnels
Appelez cet outil depuis votre code en trois langages.
# 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/fr/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=' \
-F 'programTitle=Client Strength Block' \
-F 'subtitle=Week 1-4 printable training sheet' \
-F 'includeProgressBoxes=true' \
-F 'includeQrCodes=true' \
-F 'pageSize=A4'Envoyez une requête POST avec vos entrées en JSON. Les paramètres de type fichier nécessitent un upload préalable.
POST https://api.elysiatools.com/fr/api/tools/fitness-workout-pdf-generator| Nom | Type | Requis | Description |
|---|---|---|---|
| workoutData | textarea | Non | — |
| workoutFile | fileupload requis | Non | — |
| programTitle | text | Non | — |
| subtitle | text | Non | — |
| includeProgressBoxes | checkbox | Non | — |
| includeQrCodes | checkbox | Non | — |
| pageSize | select | Non | — |
Résultat fichier
{
"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)"
}Ajoutez cet outil à votre serveur Model Context Protocol pour que les agents IA puissent le lister et l'appeler.
Ajoutez ce bloc à la configuration de votre client MCP :
{
"mcpServers": {
"elysiatools-fitness-workout-pdf-generator": {
"name": "fitness-workout-pdf-generator",
"description": "Genere un PDF imprimable dentrainement depuis JSON ou CSV avec tableaux, cases de suivi et QR optionnels",
"baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=fitness-workout-pdf-generator",
"command": "",
"args": [],
"env": {},
"isActive": true,
"type": "sse"
}
}
}Après connexion au point d'accès SSE, listez les outils exposés :
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}Appelez l'outil par son id ; les arguments sont construits à partir de ses paramètres :
{
"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": "",
"programTitle": "Client Strength Block",
"subtitle": "Week 1-4 printable training sheet",
"includeProgressBoxes": true,
"includeQrCodes": true,
"pageSize": "A4"
}
}
}Des questions ou un problème ? Contactez [email protected]