# Marburg Heart Score (MHS) Calculator

> Marburg Heart Score (MHS) Calculator is a paid API for AI agents from api.magentlab.com, paid per call via x402, $0.005/call, status unknown (last checked 2026-09-13).

Computes the Marburg Heart Score (Bösner 2010) for primary-care chest pain triage, scoring five clinical determinants and returning a positive (3–5) or negative (≤2) discrimination result.

## Facts

- Endpoint: GET https://api.magentlab.com/api/calc/mhs
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/marburg-heart-score-mhs-calculator-456f76ae
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_L4_TitbJ8tIdru5S1OsoL

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability marburg-heart-score-mhs-calculator-456f76ae
```

Example prompt: Run the Marburg Heart Score for a 58-year-old male with known coronary artery disease who thinks his pain is cardiac in origin, says it gets worse with exercise, and whose pain is not reproducible by palpation.

## When to prefer this

Use this endpoint when you need to apply the validated Marburg Heart Score clinical rule for primary-care chest pain evaluation (Bösner 2010). It is specifically designed for general practice / outpatient triage, not for ED ACS rule-out protocols (use HEART score or TIMI for those). Prefer this over manual computation to avoid age/sex criterion logic errors and to get a structured positive/negative output directly.

## Known failure modes

- Missing required query parameters (age, sex, or any of the four boolean flags) returns a validation error
- Age outside the valid range (18–120) may return an error or unexpected result
- Passing pre-computed flag values instead of raw age and sex integers will produce incorrect scoring since the endpoint computes the age/sex criterion internally
- Misclassifying pain reproducibility polarity (true vs false) leads to wrong score — true means pain is NOT reproducible

## How this service works

Marburg Heart Score (Bösner 2010 Table 3): five 1-point determinants (age/sex, known vascular disease, patient assumes cardiac origin, pain worse with exercise, pain not reproducible by palpation), max 5. Returns the published discrimination cut-off: positive (3-5) or negative (<=2). Primary-care chest-pain rule only; not an ED ACS rule-out, diagnosis, or admission order. magent does not interview the patient.

## Output

Returns the computed Marburg Heart Score integer (0–5) and a categorical discrimination result: positive (score 3–5, suggesting referral/further workup) or negative (score ≤2, lower probability of cardiac cause) based on the published Bösner 2010 Table 3 cut-off.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "headers": {
     "type": "object",
     "additionalProperties": {
      "type": "string"
     }
    },
    "queryParams": {
     "type": "object",
     "required": [
      "age",
      "sex",
      "known_vascular_disease",
      "assumes_cardiac_origin",
      "pain_worse_exercise",
      "pain_not_reproducible"
     ],
     "properties": {
      "age": {
       "type": "integer",
       "description": "Age in years (18-120). Combined with sex: female ≥65 or male ≥55 scores 1 (Bösner 2010 Table 3). magent computes this; do not send a precomputed flag."
      },
      "sex": {
       "enum": [
        "female",
        "male"
       ],
       "type": "string",
       "description": "female or male. Combined with age: female ≥65 or male ≥55 scores 1 (Bösner 2010 Table 3)."
      },
      "pain_worse_exercise": {
       "type": "boolean",
       "description": "Pain worse with exercise (Bösner 2010). true or false as assigned by the caller."
      },
      "pain_not_reproducible": {
       "type": "boolean",
       "description": "Pain is not reproducible by palpation (Bösner 2010). true when that published finding is present; false if pain is reproducible. Assigned by the caller."
      },
      "assumes_cardiac_origin": {
       "type": "boolean",
       "description": "Patient assumes the pain is of cardiac origin (Bösner 2010). true or false as assigned by the caller. magent does not interview the patient."
      },
      "known_vascular_disease": {
       "type": "boolean",
       "description": "Known clinical vascular disease: coronary, cerebrovascular, or peripheral (Bösner 2010). true or false as assigned by the caller."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/marburg-heart-score-mhs-calculator-456f76ae/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.magentlab.com](https://www.zero.xyz/host/api.magentlab.com/llms.txt)
