# Modified Denver BCVI

Modified Denver BCVI

Status: LIVE
Price: $0.005 USDC
`GET /api/calc/denver_bcvi`
HTML: https://magentlab.com/docs/denver-bcvi
Markdown: https://magentlab.com/docs/denver-bcvi.md

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

## What it computes

Apply the Cothren 2005 modified Denver BCVI screening list and return whether any published sign or high-energy risk factor is present (imaging indicated by this screen).

## When to use

When an agent has caller-assigned blunt-trauma signs and injury-pattern flags and needs the published modified Denver BCVI imaging screen, not Biffl grade, not expanded Denver, not NEXUS, and not Canadian C-spine.

## When not to use

- Not a medical device. Not a diagnosis. magent does not examine the patient and does not read a CT angiogram.
- This tool is the Cothren 2005 Table 1 modified Denver BCVI screening list only. It is not Biffl grade I-V, not expanded Denver, not Memphis criteria, not NEXUS, and not the Canadian C-spine rule.
- Caller assigns published flags. magent does not take numeric age or GCS. Cervical bruit is the published age-<50 indication. DAI is the published GCS <6 compound. C-spine is the published patterns (subluxation, transverse foramen, or C1-C3), not any cervical fracture.
- Isolated seat-belt abrasion is not a Table 1 item. Screen positive (any published sign or risk factor) is an indication for imaging as published. Does not replace imaging when the screen is positive.

## Formula

```
screen positive iff any published sign (arterial hemorrhage, cervical bruit age <50, expanding cervical hematoma, focal neurologic deficit, neurologic exam incongruous with head CT, or stroke on secondary CT) or any published high-energy risk factor (LeFort II or III, C-spine subluxation or transverse-foramen or C1-C3 fracture, basilar skull fracture with carotid canal, DAI with GCS <6, or near hanging with anoxic brain injury); imaging indicated when screen positive
```

## Citation

[Blunt cerebrovascular injuries](https://doi.org/10.1590/S1807-59322005000600011)
Cothren CC, Moore EE
Clinics (Sao Paulo). 2005;60(6):489-496
DOI: [10.1590/S1807-59322005000600011](https://doi.org/10.1590/S1807-59322005000600011)

## Worked example

### All published flags absent

Given: `arterial_hemorrhage=false, basilar_skull_fracture_carotid_canal=false, cervical_bruit_age_lt_50=false, cspine_subluxation_transverse_foramen_or_c1_c3=false, dai_gcs_lt_6=false, expanding_cervical_hematoma=false, focal_neuro_deficit=false, lefort_ii_or_iii=false, near_hanging_anoxic_brain_injury=false, neuro_exam_incongruous_head_ct=false, stroke_on_secondary_ct=false`

1. No Table 1 sign and no Table 1 high-energy risk factor
2. Screen negative; imaging is not indicated by this screen


### Arterial hemorrhage alone is screen positive

Given: `arterial_hemorrhage=true, basilar_skull_fracture_carotid_canal=false, cervical_bruit_age_lt_50=false, cspine_subluxation_transverse_foramen_or_c1_c3=false, dai_gcs_lt_6=false, expanding_cervical_hematoma=false, focal_neuro_deficit=false, lefort_ii_or_iii=false, near_hanging_anoxic_brain_injury=false, neuro_exam_incongruous_head_ct=false, stroke_on_secondary_ct=false`

1. Arterial hemorrhage is a published Table 1 sign
2. Screen positive; imaging is indicated by this screen


### LeFort II or III alone is screen positive

Given: `arterial_hemorrhage=false, basilar_skull_fracture_carotid_canal=false, cervical_bruit_age_lt_50=false, cspine_subluxation_transverse_foramen_or_c1_c3=false, dai_gcs_lt_6=false, expanding_cervical_hematoma=false, focal_neuro_deficit=false, lefort_ii_or_iii=true, near_hanging_anoxic_brain_injury=false, neuro_exam_incongruous_head_ct=false, stroke_on_secondary_ct=false`

1. LeFort II or III fracture is a published Table 1 high-energy risk factor
2. Screen positive; imaging is indicated by this screen


## Also searched as

- Modified Denver BCVI
- Denver BCVI criteria
- Cothren Denver screening
- blunt cerebrovascular injury screen
- Denver modification BCVI
- BCVI CTA screening
- modified Denver cerebrovascular
- Denver BCVI signs and risk factors

## Parameters

- `arterial_hemorrhage` (boolean, required): Arterial hemorrhage as assigned by the caller (Cothren 2005 Table 1 sign). true or false. A true flag is a published indication for imaging. magent does not examine the patient.
- `cervical_bruit_age_lt_50` (boolean, required): Cervical bruit in a patient younger than 50 years as assigned by the caller (Cothren 2005 Table 1 sign). true or false. Caller assigns the published <50 indication; magent does not take numeric age.
- `expanding_cervical_hematoma` (boolean, required): Expanding cervical hematoma as assigned by the caller (Cothren 2005 Table 1 sign). true or false. A true flag is a published indication for imaging. magent does not examine the neck.
- `focal_neuro_deficit` (boolean, required): Focal neurologic deficit as assigned by the caller (Cothren 2005 Table 1 sign). true or false. A true flag is a published indication for imaging. magent does not examine the patient.
- `neuro_exam_incongruous_head_ct` (boolean, required): Neurologic exam incongruous with head CT scan findings as assigned by the caller (Cothren 2005 Table 1 sign). true or false. magent does not read a head CT.
- `stroke_on_secondary_ct` (boolean, required): Stroke on secondary CT scan as assigned by the caller (Cothren 2005 Table 1 sign). true or false. magent does not read a CT scan.
- `lefort_ii_or_iii` (boolean, required): High-energy transfer with LeFort II or III fracture as assigned by the caller (Cothren 2005 Table 1 risk factor). true or false. A true flag is a published indication for imaging. magent does not interpret facial imaging.
- `cspine_subluxation_transverse_foramen_or_c1_c3` (boolean, required): High-energy transfer with the published C-spine patterns (subluxation, fracture extending into the transverse foramen, or fracture of C1-C3) as assigned by the caller (Cothren 2005 Table 1 risk factor). true or false. Not any cervical-spine fracture. magent does not interpret C-spine imaging.
- `basilar_skull_fracture_carotid_canal` (boolean, required): High-energy transfer with basilar skull fracture with carotid canal involvement as assigned by the caller (Cothren 2005 Table 1 risk factor). true or false. magent does not interpret skull imaging.
- `dai_gcs_lt_6` (boolean, required): High-energy transfer with diffuse axonal injury and GCS <6 as assigned by the caller (Cothren 2005 Table 1 risk factor). true or false. Caller assigns the published compound; magent does not take a GCS integer.
- `near_hanging_anoxic_brain_injury` (boolean, required): High-energy transfer with near hanging and anoxic brain injury as assigned by the caller (Cothren 2005 Table 1 risk factor). true or false. magent does not classify mechanism.

## 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.

Method: `POST /api/calc/denver_bcvi`
Max items: 25
Price: unit_amount + extra_item_amount * (n - 1) (unit 5000 atomic, extra 2000 atomic)
Status: 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:

```json
{
  "items": [
    {
      "arterial_hemorrhage": "false",
      "basilar_skull_fracture_carotid_canal": "false",
      "cervical_bruit_age_lt_50": "false",
      "cspine_subluxation_transverse_foramen_or_c1_c3": "false",
      "dai_gcs_lt_6": "false",
      "expanding_cervical_hematoma": "false",
      "focal_neuro_deficit": "false",
      "lefort_ii_or_iii": "false",
      "near_hanging_anoxic_brain_injury": "false",
      "neuro_exam_incongruous_head_ct": "false",
      "stroke_on_secondary_ct": "false"
    },
    {
      "arterial_hemorrhage": "false",
      "basilar_skull_fracture_carotid_canal": "false",
      "cervical_bruit_age_lt_50": "false",
      "cspine_subluxation_transverse_foramen_or_c1_c3": "false",
      "dai_gcs_lt_6": "false",
      "expanding_cervical_hematoma": "false",
      "focal_neuro_deficit": "false",
      "lefort_ii_or_iii": "false",
      "near_hanging_anoxic_brain_injury": "false",
      "neuro_exam_incongruous_head_ct": "false",
      "stroke_on_secondary_ct": "false"
    }
  ]
}
```

Human paywall (two-item fixture): https://api.magentlab.com/paywall/bulk/denver-bcvi

Example 200:

```json
{
  "count": 2,
  "path": "/api/calc/denver_bcvi",
  "items": [
    {
      "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": "Cothren CC, Moore EE",
        "doi": "10.1590/S1807-59322005000600011",
        "id": "cothren-2005",
        "pmid": "16358138",
        "source": "Clinics (Sao Paulo). 2005;60(6):489-496",
        "title": "Blunt cerebrovascular injuries"
      },
      "formula": "denver_bcvi",
      "formula_expression": "screen positive iff any published sign (arterial hemorrhage, cervical bruit age <50, expanding cervical hematoma, focal neurologic deficit, neurologic exam incongruous with head CT, or stroke on secondary CT) or any published high-energy risk factor (LeFort II or III, C-spine subluxation or transverse-foramen or C1-C3 fracture, basilar skull fracture with carotid canal, DAI with GCS <6, or near hanging with anoxic brain injury); imaging indicated when screen positive",
      "criteria": [
        {
          "factor": "arterial_hemorrhage",
          "met": false
        },
        {
          "factor": "cervical_bruit_age_lt_50",
          "met": false
        },
        {
          "factor": "expanding_cervical_hematoma",
          "met": false
        },
        {
          "factor": "focal_neuro_deficit",
          "met": false
        },
        {
          "factor": "neuro_exam_incongruous_head_ct",
          "met": false
        },
        {
          "factor": "stroke_on_secondary_ct",
          "met": false
        },
        {
          "factor": "lefort_ii_or_iii",
          "met": false
        },
        {
          "factor": "cspine_subluxation_transverse_foramen_or_c1_c3",
          "met": false
        },
        {
          "factor": "basilar_skull_fracture_carotid_canal",
          "met": false
        },
        {
          "factor": "dai_gcs_lt_6",
          "met": false
        },
        {
          "factor": "near_hanging_anoxic_brain_injury",
          "met": false
        }
      ],
      "screen_positive": false,
      "imaging_indicated": false,
      "risk_factor_positive": false,
      "sign_positive": 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": "Cothren CC, Moore EE",
        "doi": "10.1590/S1807-59322005000600011",
        "id": "cothren-2005",
        "pmid": "16358138",
        "source": "Clinics (Sao Paulo). 2005;60(6):489-496",
        "title": "Blunt cerebrovascular injuries"
      },
      "formula": "denver_bcvi",
      "formula_expression": "screen positive iff any published sign (arterial hemorrhage, cervical bruit age <50, expanding cervical hematoma, focal neurologic deficit, neurologic exam incongruous with head CT, or stroke on secondary CT) or any published high-energy risk factor (LeFort II or III, C-spine subluxation or transverse-foramen or C1-C3 fracture, basilar skull fracture with carotid canal, DAI with GCS <6, or near hanging with anoxic brain injury); imaging indicated when screen positive",
      "criteria": [
        {
          "factor": "arterial_hemorrhage",
          "met": false
        },
        {
          "factor": "cervical_bruit_age_lt_50",
          "met": false
        },
        {
          "factor": "expanding_cervical_hematoma",
          "met": false
        },
        {
          "factor": "focal_neuro_deficit",
          "met": false
        },
        {
          "factor": "neuro_exam_incongruous_head_ct",
          "met": false
        },
        {
          "factor": "stroke_on_secondary_ct",
          "met": false
        },
        {
          "factor": "lefort_ii_or_iii",
          "met": false
        },
        {
          "factor": "cspine_subluxation_transverse_foramen_or_c1_c3",
          "met": false
        },
        {
          "factor": "basilar_skull_fracture_carotid_canal",
          "met": false
        },
        {
          "factor": "dai_gcs_lt_6",
          "met": false
        },
        {
          "factor": "near_hanging_anoxic_brain_injury",
          "met": false
        }
      ],
      "screen_positive": false,
      "imaging_indicated": false,
      "risk_factor_positive": false,
      "sign_positive": false
    }
  ]
}
```

## Response fields

- `formula` (string): denver_bcvi
- `formula_expression` (string): Cothren 2005 Table 1 any published sign or high-energy risk factor
- `screen_positive` (boolean): true when any published Cothren 2005 Table 1 sign or high-energy risk factor is present. Imaging is indicated by this screen when true. Not a diagnosis. Not a Biffl grade.
- `imaging_indicated` (boolean): true when screen_positive is true. magent does not read a CT angiogram and does not assign Biffl grade I-V.
- `sign_positive` (boolean): true when any of the six published Table 1 signs is present
- `risk_factor_positive` (boolean): true when any of the five published Table 1 high-energy risk factors is present
- `criteria` (array): Per-factor rows with factor and met; met is true when that Cothren 2005 Table 1 indication is present
- `citation` (object): Cothren 2005 Clinics citation
- `disclaimer` (string): Not-a-device notice

## Example JSON

Frozen fixture. Not a live lookup.

```json
{
  "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": "Cothren CC, Moore EE",
    "doi": "10.1590/S1807-59322005000600011",
    "id": "cothren-2005",
    "pmid": "16358138",
    "source": "Clinics (Sao Paulo). 2005;60(6):489-496",
    "title": "Blunt cerebrovascular injuries"
  },
  "formula": "denver_bcvi",
  "formula_expression": "screen positive iff any published sign (arterial hemorrhage, cervical bruit age <50, expanding cervical hematoma, focal neurologic deficit, neurologic exam incongruous with head CT, or stroke on secondary CT) or any published high-energy risk factor (LeFort II or III, C-spine subluxation or transverse-foramen or C1-C3 fracture, basilar skull fracture with carotid canal, DAI with GCS <6, or near hanging with anoxic brain injury); imaging indicated when screen positive",
  "criteria": [
    {
      "factor": "arterial_hemorrhage",
      "met": false
    },
    {
      "factor": "cervical_bruit_age_lt_50",
      "met": false
    },
    {
      "factor": "expanding_cervical_hematoma",
      "met": false
    },
    {
      "factor": "focal_neuro_deficit",
      "met": false
    },
    {
      "factor": "neuro_exam_incongruous_head_ct",
      "met": false
    },
    {
      "factor": "stroke_on_secondary_ct",
      "met": false
    },
    {
      "factor": "lefort_ii_or_iii",
      "met": false
    },
    {
      "factor": "cspine_subluxation_transverse_foramen_or_c1_c3",
      "met": false
    },
    {
      "factor": "basilar_skull_fracture_carotid_canal",
      "met": false
    },
    {
      "factor": "dai_gcs_lt_6",
      "met": false
    },
    {
      "factor": "near_hanging_anoxic_brain_injury",
      "met": false
    }
  ],
  "screen_positive": false,
  "imaging_indicated": false,
  "risk_factor_positive": false,
  "sign_positive": false
}
```

## Errors

- HTTP 400 `invalid_denver_bcvi`: Modified Denver BCVI screening needs the published mechanism and sign flags from the cited trauma paper. Returned before settlement; you are not charged.
- HTTP 400 `invalid_items`: POST body must be a JSON object with only an items array Returned before settlement; you are not charged.
- HTTP 400 `invalid_item_count`: items must be an array of 1 to 25 objects Returned before settlement; you are not charged.
- HTTP 400 `invalid_item`: each items entry must be a JSON object Returned before settlement; you are not charged.

Shared HTTP 402 and 503: https://magentlab.com/docs/payments

## Related tools

- [NEXUS C-spine](https://magentlab.com/docs/nexus) — Apply the Hoffman 2000 NEXUS C-spine rule and return whether the five low-risk criteria all hold (imaging not indicated by this rule).
- [Canadian C-spine rule](https://magentlab.com/docs/canadian-c-spine) — Apply the Stiell 2001 Canadian C-spine rule and return whether cervical radiography is indicated from caller-assigned age, high-risk factors, low-risk factors, and neck rotation.

## 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.

- GET the tool with Accept: application/json (do not send Accept: text/html unless you want the human paywall).
- HTTP 402 means you have not paid. Decode the base64 PAYMENT-REQUIRED header. HTTP 503 is not a new quote.
- Sign accepts[0] (exact, EIP-3009) with validBefore = now + maxTimeoutSeconds (600 seconds), or accepts[1] (batch-settlement deposit/voucher) on product GET. Ping and POST {items} stay exact. Magent retries transient facilitator 429/5xx before answering.
- Retry the same URL with PAYMENT-SIGNATURE (base64 JSON of accepted and payload). Magent attaches canonical extensions.bazaar on CDP verify/settle; echoing 402 bazaar is optional.
- Success is HTTP 200 JSON plus PAYMENT-RESPONSE. exact settles before the tool. batch-settlement verifies (and deposit-settles) before the tool and commits the charge after HTTP 2xx. HTTP 503: retry the same PAYMENT-SIGNATURE. Mint a new exact nonce only after a new HTTP 402.

- offered `exact` on eip155:8453: Fixed-price USDC on Base. The buyer authorizes the advertised amount (EIP-3009). magent settles before the tool runs (paymentFlow upfront). extra.assetTransferMethod=eip3009 extra.paymentFlow=upfront.
- offered `batch-settlement` on eip155:8453: Payment-channel vouchers claimed later in batches. Exact stays accepts[0]. Same-path POST {items} is still exact. extra.assetTransferMethod=eip3009 extra.paymentFlow=authorization.

- not offered `upto`: Not offered. Usage-based: buyer authorizes a ceiling, seller settles the actual amount after work. Reserved for a future metered tool. Not for current calculators or code search.

Same-path POST {items} is still scheme exact: one EIP-3009 authorization for GET unit plus $0.002 per extra item. That is not x402 batch-settlement (payment channels / vouchers).

Shared HTTP 402 and 503 table: https://magentlab.com/docs/payments

Stdio MCP (one process per host): https://magentlab.com/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.
