MAGENT

Infection / VTE · LIVE

IMPROVE bleeding risk score

IMPROVE Bleed

Sum the Decousus 2011 IMPROVE admission bleeding-risk points from age, sex, renal-failure band, and eight caller-assigned flags, and return whether the published >=7 high-risk cutoff is met.

LIVE $0.005 USDC GET /api/calc/improve_bleed

Markdown: /docs/improve-bleed.md · Canonical: https://magentlab.com/docs/improve-bleed

Not a medical device. Not a diagnosis, dose, or listing recommendation.

What it computes

Sum the Decousus 2011 IMPROVE admission bleeding-risk points from age, sex, renal-failure band, and eight caller-assigned flags, and return whether the published >=7 high-risk cutoff is met.

When to use

When an agent needs the published Decousus 2011 IMPROVE admission bleeding-risk score (not Hostler 2016 validation, not IMPROVE VTE, not IMPROVEDD, not Padua). magent does not examine the patient and does not issue a VTE-prophylaxis order.

When not to use

  • Not a medical device.
  • Not a VTE-prophylaxis order. This tool does not recommend a drug, start pharmacologic prophylaxis, or choose mechanical prophylaxis.
  • Decousus 2011 derivation score only. Half-points as published (not integer-rounded). Increased bleeding risk at score >=7 from that paper. Not Hostler 2016 external validation or doubled integer weights.
  • Not IMPROVE VTE (Spyropoulos 2011) and not IMPROVEDD.
  • Age bands are mutually exclusive (<40 / 40-84 / >=85). Renal-failure bands are mutually exclusive (none / moderate / severe). magent does not compute GFR or assay INR or platelets.
  • magent does not examine the patient. Flags, sex, age, and renal_failure are caller-assigned.

Formula

IMPROVE bleed (Decousus 2011 admission) = active_gastroduodenal_ulcer (4.5) + prior_bleeding (4) + platelet_count_lt_50 (4) + age>=85 (3.5) + hepatic_failure INR>1.5 (2.5) + severe_renal_failure GFR<30 (2.5) + icu_ccu (2.5) + central_venous_catheter (2) + rheumatic_disease (2) + current_cancer (2) + age 40-84 (1.5) + male (1) + moderate_renal_failure GFR 30-59 (1); max 30.5; <7 not_increased, >=7 increased; half-points not integer-rounded; not Hostler 2016; not IMPROVE VTE

Citation

Title
Factors at admission associated with bleeding risk in medical patients: findings from the IMPROVE investigators
Authors
Decousus H, Tapson VF, Bergmann JF, Chong BH, Froehlich JB, Kakkar AK, et al.
Source
Chest. 2011;139(1):69-79
DOI
10.1378/chest.09-3081

Worked example

All lowest bands

Given: active_gastroduodenal_ulcer=falseage=35central_venous_catheter=falsecurrent_cancer=falsehepatic_failure=falseicu_ccu=falseplatelet_count_lt_50=falseprior_bleeding=falserenal_failure=nonerheumatic_disease=falsesex=female

  1. Age 35 is <40 → 0; female → 0; renal_failure none → 0; all eight flags false → 0
  2. Score = 0 (max 30.5); bleed_band not_increased (<7)

Active ulcer plus hepatic failure is >=7

Given: active_gastroduodenal_ulcer=trueage=35central_venous_catheter=falsecurrent_cancer=falsehepatic_failure=trueicu_ccu=falseplatelet_count_lt_50=falseprior_bleeding=falserenal_failure=nonerheumatic_disease=falsesex=female

  1. active_gastroduodenal_ulcer → 4.5; hepatic_failure → 2.5
  2. Score = 7 (max 30.5); bleed_band increased (>=7)

Also searched as

  • IMPROVE bleeding risk score
  • IMPROVE bleed
  • Decousus IMPROVE
  • admission bleeding risk
  • IMPROVE hemorrhage score
  • medical inpatient bleeding score
  • Decousus 2011 bleed
  • IMPROVE bleed score

Try

Opens the live endpoint. Unpaid browser requests show the paywall; agents should send Accept: application/json.

/api/calc/improve_bleed?age=35&sex=female&renal_failure=none&active_gastroduodenal_ulcer=false&prior_bleeding=false&platelet_count_lt_50=false&hepatic_failure=false&icu_ccu=false&central_venous_catheter=false&rheumatic_disease=false&current_cancer=false

Full URL: https://api.magentlab.com/api/calc/improve_bleed?age=35&sex=female&renal_failure=none&active_gastroduodenal_ulcer=false&prior_bleeding=false&platelet_count_lt_50=false&hepatic_failure=false&icu_ccu=false&central_venous_catheter=false&rheumatic_disease=false&current_cancer=false

Call

Expect HTTP 402 until you retry with PAYMENT-SIGNATURE. Incomplete query params return HTTP 400 before any quote or charge.

curl -i -H "Accept: application/json" "https://api.magentlab.com/api/calc/improve_bleed?age=35&sex=female&renal_failure=none&active_gastroduodenal_ulcer=false&prior_bleeding=false&platelet_count_lt_50=false&hepatic_failure=false&icu_ccu=false&central_venous_catheter=false&rheumatic_disease=false&current_cancer=false"

Parameters

Name Type Required Description
age integer required Age in years (18-120). Decousus 2011 bands: <40 scores 0, 40-84 scores 1.5, >=85 scores 3.5. Age 39 scores 0; age 40 scores 1.5; age 84 scores 1.5; age 85 scores 3.5. Bands are mutually exclusive.
sex string required male or female (Decousus 2011). Male scores 1; female scores 0. magent does not examine the patient.
renal_failure string required none, moderate, or severe as assigned by the caller (Decousus 2011). none is GFR >=60 mL/min/m2 (0 points); moderate is GFR 30-59 (1 point); severe is GFR <30 (2.5 points). Bands are mutually exclusive. magent does not compute GFR.
active_gastroduodenal_ulcer boolean required Active gastroduodenal ulcer as assigned by the caller (Decousus 2011). true or false. 4.5 points if true. magent does not examine the patient.
prior_bleeding boolean required Bleeding during the 3 months before admission as assigned by the caller (Decousus 2011). true or false. 4 points if true. magent does not take a bleeding history.
platelet_count_lt_50 boolean required Platelet count <50 x 10^9/L at admission as assigned by the caller (Decousus 2011). true or false. 4 points if true. magent does not assay platelets.
hepatic_failure boolean required Hepatic failure (INR >1.5) as assigned by the caller (Decousus 2011). true or false. 2.5 points if true. magent does not assay INR.
icu_ccu boolean required ICU or CCU stay as assigned by the caller (Decousus 2011). true or false. 2.5 points if true. magent does not assign level of care.
central_venous_catheter boolean required Central venous catheter as assigned by the caller (Decousus 2011). true or false. 2 points if true. magent does not examine the patient.
rheumatic_disease boolean required Rheumatic disease as assigned by the caller (Decousus 2011). true or false. 2 points if true. magent does not diagnose rheumatic disease.
current_cancer boolean required Current cancer as assigned by the caller (Decousus 2011). true or false. 2 points if true. magent does not diagnose cancer.

Bulk (POST)

POST the same path with a JSON items array. The first item is the GET unit; each additional item is $0.002. Invalid items return HTTP 400 before settlement.

POST /api/calc/improve_bleed Max 25 unit_amount + extra_item_amount * (n - 1) extra $0.002 PREVIEW

  • 1 to 25 items. Each item uses the same keys as the GET query parameters.
  • POST of 1 item costs the same as GET. Lists longer than 25: chunk into multiple POSTs. Extra items still execute; do not pad dummy rows.
  • The first invalid item fails the whole request (index in the 400 JSON). You are not charged.
  • HTTP 200 is {count, path, items}. Each items[i] is the GET 200 body for that row.
  • Catalog misses (empty matches, found=false) stay paid 200s inside that slot.
  • x402 resource URL is this path plus n and body_sha256. Browsers that prefer text/html get the same paywall as GET; Pay retries POST with the same items.

Example request (fixture)

{
  "items": [
    {
      "active_gastroduodenal_ulcer": "false",
      "age": "35",
      "central_venous_catheter": "false",
      "current_cancer": "false",
      "hepatic_failure": "false",
      "icu_ccu": "false",
      "platelet_count_lt_50": "false",
      "prior_bleeding": "false",
      "renal_failure": "none",
      "rheumatic_disease": "false",
      "sex": "female"
    },
    {
      "active_gastroduodenal_ulcer": "false",
      "age": "35",
      "central_venous_catheter": "false",
      "current_cancer": "false",
      "hepatic_failure": "false",
      "icu_ccu": "false",
      "platelet_count_lt_50": "false",
      "prior_bleeding": "false",
      "renal_failure": "none",
      "rheumatic_disease": "false",
      "sex": "female"
    }
  ]
}

Open bulk paywall →

Opens a two-item fixture on the API host. Unpaid browsers get the same MetaMask paywall as GET; Pay retries POST with those items.

Example 200 (fixture)

{
  "count": 2,
  "path": "/api/calc/improve_bleed",
  "items": [
    {
      "components": [
        {
          "factor": "active_gastroduodenal_ulcer",
          "points": 0.0,
          "present": false
        },
        {
          "factor": "prior_bleeding",
          "points": 0,
          "present": false
        },
        {
          "factor": "platelet_count_lt_50",
          "points": 0,
          "present": false
        },
        {
          "value": 35,
          "factor": "age_ge_85",
          "points": 0.0,
          "present": false
        },
        {
          "factor": "hepatic_failure",
          "points": 0.0,
          "present": false
        },
        {
          "factor": "severe_renal_failure",
          "points": 0.0,
          "present": false
        },
        {
          "factor": "icu_ccu",
          "points": 0.0,
          "present": false
        },
        {
          "factor": "central_venous_catheter",
          "points": 0,
          "present": false
        },
        {
          "factor": "rheumatic_disease",
          "points": 0,
          "present": false
        },
        {
          "factor": "current_cancer",
          "points": 0,
          "present": false
        },
        {
          "value": 35,
          "factor": "age_40_84",
          "points": 0.0,
          "present": false
        },
        {
          "factor": "male_sex",
          "points": 0,
          "present": false
        },
        {
          "factor": "moderate_renal_failure",
          "points": 0,
          "present": false
        }
      ],
      "disclaimer": "Not a medical device. Deterministic published-formula or published-code output for autonomous agents. A licensed clinician remains responsible for patient care and billing submissions.",
      "citation": {
        "authors": "Decousus H, Tapson VF, Bergmann JF, Chong BH, Froehlich JB, Kakkar AK, et al.",
        "doi": "10.1378/chest.09-3081",
        "id": "decousus-2011",
        "pmid": "20453069",
        "source": "Chest. 2011;139(1):69-79",
        "title": "Factors at admission associated with bleeding risk in medical patients: findings from the IMPROVE investigators"
      },
      "formula": "improve_bleed",
      "formula_expression": "IMPROVE bleed (Decousus 2011 admission) = active_gastroduodenal_ulcer (4.5) + prior_bleeding (4) + platelet_count_lt_50 (4) + age>=85 (3.5) + hepatic_failure INR>1.5 (2.5) + severe_renal_failure GFR<30 (2.5) + icu_ccu (2.5) + central_venous_catheter (2) + rheumatic_disease (2) + current_cancer (2) + age 40-84 (1.5) + male (1) + moderate_renal_failure GFR 30-59 (1); max 30.5; <7 not_increased, >=7 increased; half-points not integer-rounded; not Hostler 2016; not IMPROVE VTE",
      "max_score": 30.5,
      "score": 0.0,
      "age_years": 35,
      "sex": "female",
      "bleed_band": "not_increased",
      "renal_failure": "none"
    },
    {
      "components": [
        {
          "factor": "active_gastroduodenal_ulcer",
          "points": 0.0,
          "present": false
        },
        {
          "factor": "prior_bleeding",
          "points": 0,
          "present": false
        },
        {
          "factor": "platelet_count_lt_50",
          "points": 0,
          "present": false
        },
        {
          "value": 35,
          "factor": "age_ge_85",
          "points": 0.0,
          "present": false
        },
        {
          "factor": "hepatic_failure",
          "points": 0.0,
          "present": false
        },
        {
          "factor": "severe_renal_failure",
          "points": 0.0,
          "present": false
        },
        {
          "factor": "icu_ccu",
          "points": 0.0,
          "present": false
        },
        {
          "factor": "central_venous_catheter",
          "points": 0,
          "present": false
        },
        {
          "factor": "rheumatic_disease",
          "points": 0,
          "present": false
        },
        {
          "factor": "current_cancer",
          "points": 0,
          "present": false
        },
        {
          "value": 35,
          "factor": "age_40_84",
          "points": 0.0,
          "present": false
        },
        {
          "factor": "male_sex",
          "points": 0,
          "present": false
        },
        {
          "factor": "moderate_renal_failure",
          "points": 0,
          "present": false
        }
      ],
      "disclaimer": "Not a medical device. Deterministic published-formula or published-code output for autonomous agents. A licensed clinician remains responsible for patient care and billing submissions.",
      "citation": {
        "authors": "Decousus H, Tapson VF, Bergmann JF, Chong BH, Froehlich JB, Kakkar AK, et al.",
        "doi": "10.1378/chest.09-3081",
        "id": "decousus-2011",
        "pmid": "20453069",
        "source": "Chest. 2011;139(1):69-79",
        "title": "Factors at admission associated with bleeding risk in medical patients: findings from the IMPROVE investigators"
      },
      "formula": "improve_bleed",
      "formula_expression": "IMPROVE bleed (Decousus 2011 admission) = active_gastroduodenal_ulcer (4.5) + prior_bleeding (4) + platelet_count_lt_50 (4) + age>=85 (3.5) + hepatic_failure INR>1.5 (2.5) + severe_renal_failure GFR<30 (2.5) + icu_ccu (2.5) + central_venous_catheter (2) + rheumatic_disease (2) + current_cancer (2) + age 40-84 (1.5) + male (1) + moderate_renal_failure GFR 30-59 (1); max 30.5; <7 not_increased, >=7 increased; half-points not integer-rounded; not Hostler 2016; not IMPROVE VTE",
      "max_score": 30.5,
      "score": 0.0,
      "age_years": 35,
      "sex": "female",
      "bleed_band": "not_increased",
      "renal_failure": "none"
    }
  ]
}

Response

Field Type Description
formula string improve_bleed
formula_expression string Exact expression used
score number Decousus 2011 IMPROVE bleed points 0-30.5 (half-points allowed; not integer-rounded)
max_score number Always 30.5
bleed_band string not_increased when score is <7, increased when score is >=7 (Decousus 2011 derivation). Not a VTE-prophylaxis order.
age_years integer Age used for the <40 / 40-84 / >=85 bands
sex string female or male
renal_failure string none, moderate, or severe as supplied
components array Per-factor points
citation object Decousus 2011 citation
disclaimer string Not-a-device notice

Example JSON

Machine form of the same example. Frozen fixture. Not a live lookup.

{
  "components": [
    {
      "factor": "active_gastroduodenal_ulcer",
      "points": 0.0,
      "present": false
    },
    {
      "factor": "prior_bleeding",
      "points": 0,
      "present": false
    },
    {
      "factor": "platelet_count_lt_50",
      "points": 0,
      "present": false
    },
    {
      "value": 35,
      "factor": "age_ge_85",
      "points": 0.0,
      "present": false
    },
    {
      "factor": "hepatic_failure",
      "points": 0.0,
      "present": false
    },
    {
      "factor": "severe_renal_failure",
      "points": 0.0,
      "present": false
    },
    {
      "factor": "icu_ccu",
      "points": 0.0,
      "present": false
    },
    {
      "factor": "central_venous_catheter",
      "points": 0,
      "present": false
    },
    {
      "factor": "rheumatic_disease",
      "points": 0,
      "present": false
    },
    {
      "factor": "current_cancer",
      "points": 0,
      "present": false
    },
    {
      "value": 35,
      "factor": "age_40_84",
      "points": 0.0,
      "present": false
    },
    {
      "factor": "male_sex",
      "points": 0,
      "present": false
    },
    {
      "factor": "moderate_renal_failure",
      "points": 0,
      "present": false
    }
  ],
  "disclaimer": "Not a medical device. Deterministic published-formula or published-code output for autonomous agents. A licensed clinician remains responsible for patient care and billing submissions.",
  "citation": {
    "authors": "Decousus H, Tapson VF, Bergmann JF, Chong BH, Froehlich JB, Kakkar AK, et al.",
    "doi": "10.1378/chest.09-3081",
    "id": "decousus-2011",
    "pmid": "20453069",
    "source": "Chest. 2011;139(1):69-79",
    "title": "Factors at admission associated with bleeding risk in medical patients: findings from the IMPROVE investigators"
  },
  "formula": "improve_bleed",
  "formula_expression": "IMPROVE bleed (Decousus 2011 admission) = active_gastroduodenal_ulcer (4.5) + prior_bleeding (4) + platelet_count_lt_50 (4) + age>=85 (3.5) + hepatic_failure INR>1.5 (2.5) + severe_renal_failure GFR<30 (2.5) + icu_ccu (2.5) + central_venous_catheter (2) + rheumatic_disease (2) + current_cancer (2) + age 40-84 (1.5) + male (1) + moderate_renal_failure GFR 30-59 (1); max 30.5; <7 not_increased, >=7 increased; half-points not integer-rounded; not Hostler 2016; not IMPROVE VTE",
  "max_score": 30.5,
  "score": 0.0,
  "age_years": 35,
  "sex": "female",
  "bleed_band": "not_increased",
  "renal_failure": "none"
}

Client errors (HTTP 400)

Invalid params return 400 without charge. Shared HTTP 402 and 503 meanings: Payments.

HTTP Code When
400 invalid_improve_bleed IMPROVE bleeding inputs must match Decousus 2011 admission bleeding-risk factors and point weights from that paper. Returned before settlement; you are not charged.
400 invalid_items POST body must be a JSON object with only an items array Returned before settlement; you are not charged.
400 invalid_item_count items must be an array of 1 to 25 objects Returned before settlement; you are not charged.
400 invalid_item each items entry must be a JSON object Returned before settlement; you are not charged.

Related tools

  • IMPROVE VTE — Compute the Spyropoulos 2011 7-factor associative IMPROVE VTE score during hospitalization from age and six caller-assigned flags.
  • IMPROVEDD — Compute the Gibson 2017 IMPROVEDD VTE score from age, six caller-assigned IMPROVE flags, and caller-assigned D-dimer >=2x ULN.
  • Padua score — Compute the Barbar 2010 Padua Prediction Score for VTE risk in hospitalized medical patients from age and ten caller-assigned findings.

Payment

Unpaid requests return HTTP 402 even if query parameters or POST items are missing or invalid, so CDP and agents can index the path. After a PAYMENT-SIGNATURE, invalid params return HTTP 400 JSON before settlement. magent does not charge. Fix the params, then request a new 402 quote for that complete URL. Catalog misses (empty matches, found=false) are valid paid 200s. Unpaid valid requests return HTTP 402 with a base64 PAYMENT-REQUIRED header. HTTP 503 is not a new quote: retry the same PAYMENT-SIGNATURE. Full handshake and shared payment errors: Payments. Stdio MCP: /docs/mcp.

Guarantees

  • HTTP 402 is unpaid, including a missing query. After PAYMENT-SIGNATURE, invalid parameters return HTTP 400 before settlement. You are not charged. HTTP 402 never includes the tool JSON.
  • exact: settlement finishes before the tool (paymentFlow upfront). batch-settlement: verify/deposit before the tool; chargedCumulativeAmount commits after HTTP 2xx. Uncertain or failed settlement fails closed (HTTP 503). Retry the same PAYMENT-SIGNATURE.
  • HTTP 402 is unpaid only. Do not sign a second authorization because of a 503.
  • Execution is timeout-bounded and concurrency-capped.
  • Calculator inputs are stored encrypted for allowlisted operators (Magent Console). They are not in public logs, SSH lookups, catalog, or rollups. Request logs store path without query.