Emergency · LIVE
Rule of 7s for Lyme meningitis
Rule of 7s
Apply the Cohn 2012 Rule of 7s and return whether all three published low-risk criteria hold (rule7s_low_risk).
Markdown: /docs/rule-7s.md · Canonical: https://magentlab.com/docs/rule-7s
Not a medical device. Not a diagnosis, dose, or listing recommendation.
What it computes
Apply the Cohn 2012 Rule of 7s and return whether all three published low-risk criteria hold (rule7s_low_risk).
When to use
When an agent already has headache duration in days, CSF mononuclear percent, and whether cranial-nerve palsy is present, as in Cohn 2012, and needs the published three-item Rule of 7s low-risk result. magent does not examine nerves or count CSF cells.
When not to use
- Not a medical device.
- Not a Lyme diagnosis. Low-risk on the Rule of 7s is not a diagnosis of Lyme meningitis or aseptic meningitis.
- magent does not examine nerves or count CSF cells. headache_days, csf_mononuclear_percent, and cranial_nerve_palsy are caller-assigned.
- This tool is the named three-item Rule of 7s as stated in Cohn 2012. It does not compute Avery 2006 logistic probabilities.
- Not a treatment or discharge order.
Formula
low-risk iff headache_days < 7 and csf_mononuclear_percent < 70 and cranial_nerve_palsy is false
Citation
- Title
- Validation of a clinical prediction rule to distinguish Lyme meningitis from aseptic meningitis
- Authors
- Cohn KA, Thompson AD, Shah SS, Hines EM, Lyons TW, Welsh EJ, Nigrovic LE
- Source
- Pediatrics. 2012;129(1):e46-e53
Worked example
All three low-risk criteria hold
Given:
cranial_nerve_palsy=falsecsf_mononuclear_percent=40headache_days=3
- Headache duration 3 days is < 7
- CSF mononuclear percent 40 is < 70
- Cranial-nerve palsy is absent
- Rule of 7s is low-risk
Headache duration of 7 days is not low-risk
Given:
cranial_nerve_palsy=falsecsf_mononuclear_percent=40headache_days=7
- Headache duration 7 days is not < 7
- CSF mononuclear percent and cranial-nerve palsy still meet the other two criteria
- Rule of 7s is not low-risk
Also searched as
- Rule of 7s
- Rule of 7's
- Cohn Rule of 7s
- Lyme meningitis rule
- Lyme vs aseptic meningitis
- Cohn 2012
- Rule of sevens
Try
Opens the live endpoint. Unpaid browser requests show the paywall; agents should send Accept: application/json.
/api/calc/rule_7s?headache_days=3&csf_mononuclear_percent=40&cranial_nerve_palsy=false
Full URL: https://api.magentlab.com/api/calc/rule_7s?headache_days=3&csf_mononuclear_percent=40&cranial_nerve_palsy=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/rule_7s?headache_days=3&csf_mononuclear_percent=40&cranial_nerve_palsy=false"
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
headache_days |
integer | required | Duration of headache in days (integer 0-90). Low-risk criterion holds when strictly less than 7. Seven days is not low-risk. magent does not take a history. |
csf_mononuclear_percent |
number | required | CSF mononuclear cell percent (0-100). Low-risk criterion holds when strictly less than 70. Seventy percent is not low-risk. magent does not count CSF cells. |
cranial_nerve_palsy |
boolean | required | Seventh or other cranial-nerve palsy. true or false as assigned by the caller. Low-risk criterion holds when false (palsy absent). magent does not examine nerves. |
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.
- 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": [
{
"cranial_nerve_palsy": "false",
"csf_mononuclear_percent": "40",
"headache_days": "3"
},
{
"cranial_nerve_palsy": "false",
"csf_mononuclear_percent": "40",
"headache_days": "3"
}
]
}
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/rule_7s",
"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": "Cohn KA, Thompson AD, Shah SS, Hines EM, Lyons TW, Welsh EJ, Nigrovic LE",
"doi": "10.1542/peds.2011-1215",
"id": "cohn-2012",
"pmid": "22184646",
"source": "Pediatrics. 2012;129(1):e46-e53",
"title": "Validation of a clinical prediction rule to distinguish Lyme meningitis from aseptic meningitis"
},
"formula": "rule_7s",
"formula_expression": "low-risk iff headache_days < 7 and csf_mononuclear_percent < 70 and cranial_nerve_palsy is false",
"criteria": [
{
"value": 3,
"factor": "headache_days_lt_7",
"met": true
},
{
"value": 40.0,
"factor": "csf_mononuclear_percent_lt_70",
"met": true
},
{
"factor": "no_cranial_nerve_palsy",
"met": true
}
],
"rule7s_low_risk": true
},
{
"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": "Cohn KA, Thompson AD, Shah SS, Hines EM, Lyons TW, Welsh EJ, Nigrovic LE",
"doi": "10.1542/peds.2011-1215",
"id": "cohn-2012",
"pmid": "22184646",
"source": "Pediatrics. 2012;129(1):e46-e53",
"title": "Validation of a clinical prediction rule to distinguish Lyme meningitis from aseptic meningitis"
},
"formula": "rule_7s",
"formula_expression": "low-risk iff headache_days < 7 and csf_mononuclear_percent < 70 and cranial_nerve_palsy is false",
"criteria": [
{
"value": 3,
"factor": "headache_days_lt_7",
"met": true
},
{
"value": 40.0,
"factor": "csf_mononuclear_percent_lt_70",
"met": true
},
{
"factor": "no_cranial_nerve_palsy",
"met": true
}
],
"rule7s_low_risk": true
}
]
}
Response
| Field | Type | Description |
|---|---|---|
formula |
string | rule_7s |
formula_expression |
string | Cohn 2012 three-item Rule of 7s low-risk conjunction |
rule7s_low_risk |
boolean | true only when all three Cohn 2012 low-risk criteria hold. Not a Lyme diagnosis and not a treatment or discharge order. |
criteria |
array | Per-factor rows with factor and met; met is true when that Cohn 2012 low-risk criterion holds |
citation |
object | Cohn 2012 Pediatrics citation |
disclaimer |
string | Not-a-device notice |
Example JSON
Machine form of the same example. Frozen fixture. Not a live lookup.
{
"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": "Cohn KA, Thompson AD, Shah SS, Hines EM, Lyons TW, Welsh EJ, Nigrovic LE",
"doi": "10.1542/peds.2011-1215",
"id": "cohn-2012",
"pmid": "22184646",
"source": "Pediatrics. 2012;129(1):e46-e53",
"title": "Validation of a clinical prediction rule to distinguish Lyme meningitis from aseptic meningitis"
},
"formula": "rule_7s",
"formula_expression": "low-risk iff headache_days < 7 and csf_mononuclear_percent < 70 and cranial_nerve_palsy is false",
"criteria": [
{
"value": 3,
"factor": "headache_days_lt_7",
"met": true
},
{
"value": 40.0,
"factor": "csf_mononuclear_percent_lt_70",
"met": true
},
{
"factor": "no_cranial_nerve_palsy",
"met": true
}
],
"rule7s_low_risk": true
}
Client errors (HTTP 400)
Invalid params return 400 without charge. Shared HTTP 402 and 503 meanings: Payments.
| HTTP | Code | When |
|---|---|---|
| 400 | invalid_headache_days |
headache_days must be an integer from 0 to 90 (Cohn 2012 Rule of 7s). Returned before settlement; you are not charged. |
| 400 | invalid_csf_mononuclear |
csf_mononuclear_percent must be a number from 0 to 100 (Cohn 2012 Rule of 7s). Returned before settlement; you are not charged. |
| 400 | invalid_flag |
boolean clinical flags must be true or false 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
- Bacterial Meningitis Score — Sum the Nigrovic 2002 Bacterial Meningitis Score weights for children with CSF pleocytosis and return very_low_risk (0) or not_low_risk (≥1).
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.