Fitness Tools

Deterministic fitness calculators — TDEE, adaptive TDEE, body fat, 1RM, macros — with consensus.

사용해야 할까요

품질 및 안전성

B
설명 품질
93%
스키마 완전성
69%
이름 품질
62%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (7)

  • LOWTool 'activity-multiplier' description lacks action verbactivity-multiplier에서
  • LOWTool 'adaptive-tdee' doesn't follow camelCase/snake_caseadaptive-tdee에서
  • LOWTool 'body-fat' doesn't follow camelCase/snake_casebody-fat에서
  • LOWTool 'one-rep-max' doesn't follow camelCase/snake_caseone-rep-max에서
  • LOWTool 'activity-multiplier' doesn't follow camelCase/snake_caseactivity-multiplier에서
  • LOWTool 'powerlifting-attempts' doesn't follow camelCase/snake_casepowerlifting-attempts에서
  • LOWTool 'muscle-potential' doesn't follow camelCase/snake_casemuscle-potential에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~5,341토큰 (도구 정의)
~5.2 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 4.17%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "fitness-tools": {
      "command": "npx",
      "args": [
        "@almostjacked/fitness-tools-mcp"
      ]
    }
  }
}

실행 가능한 패키지

npm@almostjacked/fitness-tools-mcp0.3.4stdio

원격 엔드포인트

https://fitness-tools-mcp.ajwallacemusic.workers.dev/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (10)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢tdee(sex, age, height, weight, activity, ...)

Estimate BMR and TDEE via Mifflin-St Jeor, Harris-Benedict, Katch-McArdle, and Cunningham. Provide body_fat or lean_mass to unlock the LBM-based methods.

입력 스키마

{
  "type": "object",
  "properties": {
    "sex": {
      "type": "string",
      "enum": [
        "male",
        "female"
      ]
    },
    "age": {
      "type": "number",
      "exclusiveMinimum": 0,
      "maximum": 120
    },
    "height": {
      "type": "object",
      "properties": {
        "value": {
          "type": "number",
          "exclusiveMinimum": 0
        },
        "unit": {
          "type": "string",
          "enum": [
            "cm",
            "in",
            "mm"
          ],
          "default": "cm"
        }
      },
      "required": [
        "value"
      ],
      "additionalProperties": false
    },
    "weight": {
      "type": "object",
      "properties": {
        "value": {
          "$ref": "#/properties/height/properties/value"
        },
        "unit": {
          "type": "string",
          "enum": [
            "kg",
            "lb"
          ],
          "default": "kg"
        }
      },
      "required": [
        "value"
      ],
      "additionalProperties": false
    },
    "activity": {
      "anyOf": [
        {
          "type": "string",
          "enum": [
            "sedentary",
            "light",
            "moderate",
            "active",
            "very_active"
          ]
        },
        {
          "type": "number"
        }
      ]
    },
    "body_fat": {
      "anyOf": [
        {
          "type": "number",
          "minimum": 2,
          "maximum": 70
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "lean_mass": {
      "anyOf": [
        {
          "$ref": "#/properties/weight"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "methods": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "string"
        }
      ],
      "default": "all"
    }
  },
  "required": [
    "sex",
    "age",
    "height",
    "weight",
    "activity"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "value": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "detail": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": {}
              },
              {
                "type": "null"
              }
            ],
            "default": null
          }
        },
        "required": [
          "method",
          "value",
          "unit"
        ],
        "additionalProperties": false
      }
    },
    "consensus": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "mean": {
              "type": "number"
            },
            "median": {
              "type": "number"
            },
            "min": {
              "type": "number"
            },
            "max": {
              "type": "number"
            },
            "n": {
              "type": "integer"
            }
          },
          "required": [
            "mean",
            "median",
            "min",
            "max",
            "n"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "skipped": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "method",
          "reason"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "results",
    "consensus",
    "skipped"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢adaptive-tdee(entries, window_days, prior_tdee_kcal, methods)

Measure actual TDEE from a logged history of daily weight and/or calorie intake. Default method (kalman) is a joint Kalman filter over true weight and TDEE — handles missing days, gates outliers, and reports uncertainty (CI95) alongside denoised true weight; regression/endpoints are simple window-based estimates kept for comparison. Use instead of formula TDEE once real logged data exists. Each entry needs at least one of weight/kcal (not necessarily both). Entry dates must span 10 years or less (earliest to latest). Note: all methods need at least one weigh-in (kalman) or two (regression/endpoints) — a history with zero weight entries throws under the kalman default; pass methods:'all' to get a graceful empty/skipped result instead.

입력 스키마

{
  "type": "object",
  "properties": {
    "entries": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
          },
          "weight": {
            "type": "object",
            "properties": {
              "value": {
                "type": "number",
                "exclusiveMinimum": 0
              },
              "unit": {
                "type": "string",
                "enum": [
                  "kg",
                  "lb"
                ],
                "default": "kg"
              }
            },
            "required": [
              "value"
            ],
            "additionalProperties": false
          },
          "kcal": {
            "type": "number",
            "exclusiveMinimum": 0,
            "maximum": 20000
          }
        },
        "required": [
          "date"
        ],
        "additionalProperties": false
      },
      "minItems": 10,
      "maxItems": 400
    },
    "window_days": {
      "type": "integer",
      "minimum": 3,
      "maximum": 14,
      "default": 7
    },
    "prior_tdee_kcal": {
      "type": "number",
      "minimum": 500,
      "maximum": 10000,
      "description": "Optional starting TDEE estimate, e.g. from the tdee tool; speeds early convergence."
    },
    "methods": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "string"
        }
      ],
      "default": "kalman"
    }
  },
  "required": [
    "entries"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "value": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "detail": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": {}
              },
              {
                "type": "null"
              }
            ],
            "default": null
          }
        },
        "required": [
          "method",
          "value",
          "unit"
        ],
        "additionalProperties": false
      }
    },
    "consensus": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "mean": {
              "type": "number"
            },
            "median": {
              "type": "number"
            },
            "min": {
              "type": "number"
            },
            "max": {
              "type": "number"
            },
            "n": {
              "type": "integer"
            }
          },
          "required": [
            "mean",
            "median",
            "min",
            "max",
            "n"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "skipped": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "method",
          "reason"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "results",
    "consensus",
    "skipped"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢body-fat(sex, age, height, weight, neck, ...)

Estimate body-fat % via US Navy circumference, Jackson-Pollock 3-site skinfold, and Deurenberg (BMI-based) methods.

입력 스키마

{
  "type": "object",
  "properties": {
    "sex": {
      "type": "string",
      "enum": [
        "male",
        "female"
      ]
    },
    "age": {
      "anyOf": [
        {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 120
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "height": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "value": {
              "type": "number",
              "exclusiveMinimum": 0
            },
            "unit": {
              "type": "string",
              "enum": [
                "cm",
                "in",
                "mm"
              ],
              "default": "cm"
            }
          },
          "required": [
            "value"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "weight": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "value": {
              "$ref": "#/properties/height/anyOf/0/properties/value"
            },
            "unit": {
              "type": "string",
              "enum": [
                "kg",
                "lb"
              ],
              "default": "kg"
            }
          },
          "required": [
            "value"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "neck": {
      "anyOf": [
        {
          "$ref": "#/properties/height/anyOf/0"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "waist": {
      "anyOf": [
        {
          "$ref": "#/properties/height/anyOf/0"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "hip": {
      "anyOf": [
        {
          "$ref": "#/properties/height/anyOf/0"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "skinfold_sum": {
      "anyOf": [
        {
          "type": "number",
          "exclusiveMinimum": 0
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "methods": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "string"
        }
      ],
      "default": "all"
    }
  },
  "required": [
    "sex"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "value": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "detail": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": {}
              },
              {
                "type": "null"
              }
            ],
            "default": null
          }
        },
        "required": [
          "method",
          "value",
          "unit"
        ],
        "additionalProperties": false
      }
    },
    "consensus": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "mean": {
              "type": "number"
            },
            "median": {
              "type": "number"
            },
            "min": {
              "type": "number"
            },
            "max": {
              "type": "number"
            },
            "n": {
              "type": "integer"
            }
          },
          "required": [
            "mean",
            "median",
            "min",
            "max",
            "n"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "skipped": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "method",
          "reason"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "results",
    "consensus",
    "skipped"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢one-rep-max(weight, reps, methods)

Estimate 1RM from a submaximal set via Epley, Brzycki, Lombardi, Wathan, O'Conner, and Mayhew; returns a %1RM load chart.

입력 스키마

{
  "type": "object",
  "properties": {
    "weight": {
      "type": "object",
      "properties": {
        "value": {
          "type": "number",
          "exclusiveMinimum": 0
        },
        "unit": {
          "type": "string",
          "enum": [
            "kg",
            "lb"
          ],
          "default": "kg"
        }
      },
      "required": [
        "value"
      ],
      "additionalProperties": false
    },
    "reps": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 20
    },
    "methods": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "string"
        }
      ],
      "default": "all"
    }
  },
  "required": [
    "weight",
    "reps"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "value": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "detail": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": {}
              },
              {
                "type": "null"
              }
            ],
            "default": null
          }
        },
        "required": [
          "method",
          "value",
          "unit"
        ],
        "additionalProperties": false
      }
    },
    "consensus": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "mean": {
              "type": "number"
            },
            "median": {
              "type": "number"
            },
            "min": {
              "type": "number"
            },
            "max": {
              "type": "number"
            },
            "n": {
              "type": "integer"
            }
          },
          "required": [
            "mean",
            "median",
            "min",
            "max",
            "n"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "percent_table": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "percent": {
            "type": "number"
          },
          "load": {
            "type": "number"
          }
        },
        "required": [
          "percent",
          "load"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "results",
    "consensus",
    "percent_table"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢macros(calories, weight, goal, protein_g_per_kg, fat_g_per_kg, ...)

Compute protein/fat/carb grams for a calorie target using the g-per-kg-bodyweight method, with goal-based protein defaults.

입력 스키마

{
  "type": "object",
  "properties": {
    "calories": {
      "type": "number",
      "exclusiveMinimum": 0
    },
    "weight": {
      "type": "object",
      "properties": {
        "value": {
          "type": "number",
          "exclusiveMinimum": 0
        },
        "unit": {
          "type": "string",
          "enum": [
            "kg",
            "lb"
          ],
          "default": "kg"
        }
      },
      "required": [
        "value"
      ],
      "additionalProperties": false
    },
    "goal": {
      "type": "string",
      "enum": [
        "cut",
        "maintain",
        "bulk"
      ],
      "default": "maintain"
    },
    "protein_g_per_kg": {
      "anyOf": [
        {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 4
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "fat_g_per_kg": {
      "anyOf": [
        {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 3
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "methods": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "string"
        }
      ],
      "default": "all"
    }
  },
  "required": [
    "calories",
    "weight"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "value": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "detail": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": {}
              },
              {
                "type": "null"
              }
            ],
            "default": null
          }
        },
        "required": [
          "method",
          "value",
          "unit"
        ],
        "additionalProperties": false
      }
    },
    "consensus": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "mean": {
              "type": "number"
            },
            "median": {
              "type": "number"
            },
            "min": {
              "type": "number"
            },
            "max": {
              "type": "number"
            },
            "n": {
              "type": "integer"
            }
          },
          "required": [
            "mean",
            "median",
            "min",
            "max",
            "n"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "results",
    "consensus"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢activity-multiplier(activity_level, bmr, weight, sessions_per_week, session_minutes, ...)

Estimate the TDEE activity multiplier via the classic lookup table or a NEAT+EAT model (occupation/steps for non-exercise, training volume for exercise).

입력 스키마

{
  "type": "object",
  "properties": {
    "activity_level": {
      "anyOf": [
        {
          "type": "string",
          "enum": [
            "sedentary",
            "light",
            "moderate",
            "active",
            "very_active"
          ]
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "bmr": {
      "anyOf": [
        {
          "type": "number",
          "exclusiveMinimum": 0
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "weight": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "value": {
              "type": "number",
              "exclusiveMinimum": 0
            },
            "unit": {
              "type": "string",
              "enum": [
                "kg",
                "lb"
              ],
              "default": "kg"
            }
          },
          "required": [
            "value"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "sessions_per_week": {
      "anyOf": [
        {
          "type": "integer",
          "minimum": 0,
          "maximum": 21
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "session_minutes": {
      "anyOf": [
        {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 600
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "intensity": {
      "anyOf": [
        {
          "type": "string",
          "enum": [
            "light",
            "moderate",
            "vigorous"
          ]
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "steps_per_day": {
      "anyOf": [
        {
          "type": "integer",
          "minimum": 0,
          "maximum": 100000
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "occupation": {
      "anyOf": [
        {
          "type": "string",
          "enum": [
            "desk",
            "standing",
            "manual",
            "heavy"
          ]
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "methods": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "string"
        }
      ],
      "default": "all"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "value": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "detail": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": {}
              },
              {
                "type": "null"
              }
            ],
            "default": null
          }
        },
        "required": [
          "method",
          "value",
          "unit"
        ],
        "additionalProperties": false
      }
    },
    "consensus": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "mean": {
              "type": "number"
            },
            "median": {
              "type": "number"
            },
            "min": {
              "type": "number"
            },
            "max": {
              "type": "number"
            },
            "n": {
              "type": "integer"
            }
          },
          "required": [
            "mean",
            "median",
            "min",
            "max",
            "n"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "skipped": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "method",
          "reason"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "results",
    "consensus",
    "skipped"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢powerlifting-attempts(one_rep_max, bar_weight, available_plates, aggressiveness)

Deterministic opener/second/third attempts from an estimated 1RM, plus a warmup ramp and per-side plate loading. Tunable by aggressiveness and available plates.

입력 스키마

{
  "type": "object",
  "properties": {
    "one_rep_max": {
      "type": "object",
      "properties": {
        "value": {
          "type": "number",
          "exclusiveMinimum": 0
        },
        "unit": {
          "type": "string",
          "enum": [
            "kg",
            "lb"
          ],
          "default": "kg"
        }
      },
      "required": [
        "value"
      ],
      "additionalProperties": false
    },
    "bar_weight": {
      "anyOf": [
        {
          "$ref": "#/properties/one_rep_max"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "available_plates": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "number"
          }
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "aggressiveness": {
      "type": "string",
      "enum": [
        "conservative",
        "standard",
        "aggressive"
      ],
      "default": "standard"
    }
  },
  "required": [
    "one_rep_max"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "attempts": {
      "type": "object",
      "properties": {
        "opener": {
          "type": "object",
          "properties": {
            "weight": {
              "type": "number"
            },
            "plates_per_side": {
              "type": "array",
              "items": {
                "type": "number"
              }
            }
          },
          "required": [
            "weight",
            "plates_per_side"
          ],
          "additionalProperties": false
        },
        "second": {
          "$ref": "#/properties/attempts/properties/opener"
        },
        "third": {
          "$ref": "#/properties/attempts/properties/opener"
        }
      },
      "required": [
        "opener",
        "second",
        "third"
      ],
      "additionalProperties": false
    },
    "warmups": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "weight": {
            "type": "number"
          },
          "reps": {
            "type": "integer"
          },
          "plates_per_side": {
            "type": "array",
            "items": {
              "type": "number"
            }
          }
        },
        "required": [
          "weight",
          "reps",
          "plates_per_side"
        ],
        "additionalProperties": false
      }
    },
    "bar_weight": {
      "type": "number"
    },
    "unit": {
      "type": "string",
      "enum": [
        "kg",
        "lb"
      ]
    },
    "aggressiveness": {
      "type": "string",
      "enum": [
        "conservative",
        "standard",
        "aggressive"
      ]
    }
  },
  "required": [
    "attempts",
    "warmups",
    "bar_weight",
    "unit",
    "aggressiveness"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢muscle-potential(sex, height, wrist, ankle, target_body_fat_pct, ...)

Estimate drug-free maximum bodyweight at a target body-fat % via Casey Butt (wrist+ankle), the FFMI~25 natural cap, and Berkhan's max-contest-weight model. Men only in v1.

입력 스키마

{
  "type": "object",
  "properties": {
    "sex": {
      "type": "string",
      "enum": [
        "male",
        "female"
      ]
    },
    "height": {
      "type": "object",
      "properties": {
        "value": {
          "type": "number",
          "exclusiveMinimum": 0
        },
        "unit": {
          "type": "string",
          "enum": [
            "cm",
            "in",
            "mm"
          ],
          "default": "cm"
        }
      },
      "required": [
        "value"
      ],
      "additionalProperties": false
    },
    "wrist": {
      "anyOf": [
        {
          "$ref": "#/properties/height"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "ankle": {
      "anyOf": [
        {
          "$ref": "#/properties/height"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "target_body_fat_pct": {
      "type": "number",
      "minimum": 3,
      "maximum": 40,
      "default": 10
    },
    "methods": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "string"
        }
      ],
      "default": "all"
    }
  },
  "required": [
    "sex",
    "height"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "value": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "detail": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": {}
              },
              {
                "type": "null"
              }
            ],
            "default": null
          }
        },
        "required": [
          "method",
          "value",
          "unit"
        ],
        "additionalProperties": false
      }
    },
    "consensus": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "mean": {
              "type": "number"
            },
            "median": {
              "type": "number"
            },
            "min": {
              "type": "number"
            },
            "max": {
              "type": "number"
            },
            "n": {
              "type": "integer"
            }
          },
          "required": [
            "mean",
            "median",
            "min",
            "max",
            "n"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "skipped": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "method",
          "reason"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "results",
    "consensus",
    "skipped"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢ffmi(height, weight, body_fat, lean_mass, methods)

Compute the Fat-Free Mass Index (FFMI) and its height-adjusted form from weight and body fat (or lean mass), and flag whether it exceeds the ~25 natural ceiling.

입력 스키마

{
  "type": "object",
  "properties": {
    "height": {
      "type": "object",
      "properties": {
        "value": {
          "type": "number",
          "exclusiveMinimum": 0
        },
        "unit": {
          "type": "string",
          "enum": [
            "cm",
            "in",
            "mm"
          ],
          "default": "cm"
        }
      },
      "required": [
        "value"
      ],
      "additionalProperties": false
    },
    "weight": {
      "type": "object",
      "properties": {
        "value": {
          "$ref": "#/properties/height/properties/value"
        },
        "unit": {
          "type": "string",
          "enum": [
            "kg",
            "lb"
          ],
          "default": "kg"
        }
      },
      "required": [
        "value"
      ],
      "additionalProperties": false
    },
    "body_fat": {
      "anyOf": [
        {
          "type": "number",
          "minimum": 2,
          "maximum": 70
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "lean_mass": {
      "anyOf": [
        {
          "$ref": "#/properties/weight"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "methods": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "string"
        }
      ],
      "default": "all"
    }
  },
  "required": [
    "height",
    "weight"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "value": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "detail": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": {}
              },
              {
                "type": "null"
              }
            ],
            "default": null
          }
        },
        "required": [
          "method",
          "value",
          "unit"
        ],
        "additionalProperties": false
      }
    },
    "consensus": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "mean": {
              "type": "number"
            },
            "median": {
              "type": "number"
            },
            "min": {
              "type": "number"
            },
            "max": {
              "type": "number"
            },
            "n": {
              "type": "integer"
            }
          },
          "required": [
            "mean",
            "median",
            "min",
            "max",
            "n"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "results",
    "consensus"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢rsmi(sex, height, weight, age, asm_kg, ...)

Estimate the appendicular skeletal muscle index (RSMI) from a DXA value (direct) and/or an anthropometric estimate (Wen 2011), and flag low muscle mass against EWGSOP2, AWGS, and Baumgartner sarcopenia cutoffs.

입력 스키마

{
  "type": "object",
  "properties": {
    "sex": {
      "type": "string",
      "enum": [
        "male",
        "female"
      ]
    },
    "height": {
      "type": "object",
      "properties": {
        "value": {
          "type": "number",
          "exclusiveMinimum": 0
        },
        "unit": {
          "type": "string",
          "enum": [
            "cm",
            "in",
            "mm"
          ],
          "default": "cm"
        }
      },
      "required": [
        "value"
      ],
      "additionalProperties": false
    },
    "weight": {
      "type": "object",
      "properties": {
        "value": {
          "$ref": "#/properties/height/properties/value"
        },
        "unit": {
          "type": "string",
          "enum": [
            "kg",
            "lb"
          ],
          "default": "kg"
        }
      },
      "required": [
        "value"
      ],
      "additionalProperties": false
    },
    "age": {
      "type": "number",
      "exclusiveMinimum": 0,
      "maximum": 120
    },
    "asm_kg": {
      "anyOf": [
        {
          "type": "number",
          "exclusiveMinimum": 0
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "methods": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "string"
        }
      ],
      "default": "all"
    }
  },
  "required": [
    "sex",
    "height",
    "weight",
    "age"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "value": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "detail": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": {}
              },
              {
                "type": "null"
              }
            ],
            "default": null
          }
        },
        "required": [
          "method",
          "value",
          "unit"
        ],
        "additionalProperties": false
      }
    },
    "consensus": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "mean": {
              "type": "number"
            },
            "median": {
              "type": "number"
            },
            "min": {
              "type": "number"
            },
            "max": {
              "type": "number"
            },
            "n": {
              "type": "integer"
            }
          },
          "required": [
            "mean",
            "median",
            "min",
            "max",
            "n"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "skipped": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "method",
          "reason"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "results",
    "consensus",
    "skipped"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 10개
검증됨버전이 기록되지 않음도구 10개