# NEWS2 Score Calculator (RCP 2017 Chart 1)

> NEWS2 Score Calculator (RCP 2017 Chart 1) 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-14).

Calculates the National Early Warning Score 2 (NEWS2) from seven vital sign and clinical parameters, returning a total score and clinical risk category per RCP 2017 Chart 2.

## Facts

- Endpoint: GET https://api.magentlab.com/api/calc/news2
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/news2-score-calculator-rcp-2017-chart-1-3babb48b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_2PijD9oXIA8OEzG-V4rdH

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 news2-score-calculator-rcp-2017-chart-1-3babb48b
```

Example prompt: Can you calculate the NEWS2 score for a patient on Scale 1 SpO2, with a respiratory rate of 22, SpO2 of 94%, no supplemental oxygen, temperature 38.5°C, systolic BP 110 mmHg, heart rate 105 bpm, and ACVPU marked as alert?

## When to prefer this

Use this endpoint when you need a standards-compliant RCP 2017 NEWS2 score computed server-side from raw vital sign parameters, especially in clinical triage agents, hospital deterioration monitoring pipelines, or EHR automation where reproducibility and correct Chart 1/Chart 2 mapping matters. Prefer this over manual calculation to eliminate scoring errors. Not suitable for ICU admission decisions, GCS computation, or the original NEWS 2012 scoring system.

## Known failure modes

- Missing required query parameters returns a validation error
- spo2_percent out of range (50–100) returns an error
- temperature_c outside 30.0–45.0 range rejected
- Invalid ACVPU enum value returns error
- Invalid spo2_scale (not 1 or 2) returns error
- heart_rate_bpm or systolic_mm_hg outside valid integer range rejected
- Payment failure (x402) if USDC not provided

## How this service works

NEWS2 from RCP 2017 Chart 1: respiratory rate, SpO2 on caller-assigned Scale 1 or Scale 2, supplemental oxygen, temperature (C), systolic BP, heart rate, and caller-assigned ACVPU (alert 0; confusion, voice, pain, or unresponsive 3 each) summed to 0-20. Returns Chart 2 clinical_risk (low / low-medium / medium / high) and red_score. Not NEWS 2012; not an ICU-admission order.

## Output

Returns the computed NEWS2 aggregate score (integer 0–20) derived from Chart 1 weighted subscores, plus a Chart 2 clinical risk category string (low, low-medium, medium, or high) and a red_score indicator flagging single-parameter extreme derangements. Does not include ICU admission recommendations or GCS computation.

## 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": [
      "systolic_mm_hg",
      "heart_rate_bpm",
      "respiratory_rate",
      "temperature_c",
      "spo2_percent",
      "spo2_scale",
      "supplemental_oxygen",
      "acvpu"
     ],
     "properties": {
      "acvpu": {
       "enum": [
        "alert",
        "confusion",
        "voice",
        "pain",
        "unresponsive"
       ],
       "type": "string",
       "description": "Caller-assigned ACVPU (alert, confusion, voice, pain, or unresponsive). RCP NEWS2 2017 Chart 1: alert → 0; confusion, voice, pain, or unresponsive → 3 each. magent does not compute GCS here."
      },
      "spo2_scale": {
       "enum": [
        1,
        2
       ],
       "type": "integer",
       "description": "Caller-assigned SpO2 scale (1 or 2). Scale 1 is the usual target. Scale 2 is only for a prescribed 88-92% target in confirmed hypercapnic respiratory failure. magent does not choose the scale."
      },
      "spo2_percent": {
       "type": "number",
       "description": "Oxygen saturation percent (50-100). Scale 1: ≤91 → 3, 92-93 → 2, 94-95 → 1, ≥96 → 0. Scale 2: ≤83 → 3, 84-85 → 2, 86-87 → 1, 88-92 → 0; ≥93 on air → 0; 93-94 on oxygen → 1, 95-96 on oxygen → 2, ≥97 on oxygen → 3."
      },
      "temperature_c": {
       "type": "number",
       "description": "Temperature in °C (30.0-45.0). RCP NEWS2 2017 Chart 1: ≤35.0 → 3, 35.1-36.0 → 1, 36.1-38.0 → 0, 38.1-39.0 → 1, ≥39.1 → 2. magent does not convert Fahrenheit."
      },
      "heart_rate_bpm": {
       "type": "integer",
       "description": "Heart rate in beats/min (integer 30-220). RCP NEWS2 2017 Chart 1: ≤40 → 3, 41-50 → 1, 51-90 → 0, 91-110 → 1, 111-130 → 2, ≥131 → 3."
      },
      "systolic_mm_hg": {
       "type": "integer",
       "description": "Systolic blood pressure in mm Hg (integer 0-300). RCP NEWS2 2017 Chart 1: ≤90 → 3, 91-100 → 2, 101-110 → 1, 111-219 → 0, ≥220 → 3."
      },
      "respiratory_rate": {
       "t
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/news2-score-calculator-rcp-2017-chart-1-3babb48b/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)
