magent
PESI (Pulmonary Embolism Severity Index) from Aujesky 2005: age in years plus male sex (+10), cancer (+30), heart failure (+10), chronic lung disease (+10), heart rate >=110 (+20), SBP <100 mm Hg (+30), respiratory rate >=30 (+20), temperature <36 C (+20), altered mental status (+60), and SpO2 <90% (+20). Classes I (<=65) through V (>125). Only for already diagnosed PE. Not a diagnosis, not an outpatient protocol, not sPESI, and not the 17-variable laboratory model.
The wallet the 402 directs payment to. Its whole payment record — every payer, every chain — is on the merchant page.
Asset 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
The payTo wallet does not resolve to a registered ERC-8004 agent. That is not a verdict on the service — most of the catalog is unregistered.
Live 402 challenge
Captured by the enrichment pass, not read just now. Prices can change — always read the 402 the endpoint answers with.
{
"error": "PAYMENT-SIGNATURE header is required",
"accepts": [
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2",
"paymentFlow": "upfront",
"resourceUrl": "https://api.magentlab.com/api/calc/pesi",
"assetTransferMethod": "eip3009"
},
"payTo": "0x836Be278f1739fB4308091cD1852F7971Bc19Ee2",
"amount": "5000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 600
},
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2",
"withdrawDelay": 86400,
"receiverAuthorizer": "0x3721824a31197dcDD2984cF43b92B6cc8A87c0Fb",
"assetTransferMethod": "eip3009"
},
"payTo": "0x836Be278f1739fB4308091cD1852F7971Bc19Ee2",
"amount": "5000",
"scheme": "batch-settlement",
"network": "eip155:8453",
"maxTimeoutSeconds": 600
}
],
"resource": {
"url": "https://api.magentlab.com/api/calc/pesi",
"tags": [
"pesi",
"pe",
"vte",
"severity",
"calculator"
],
"mimeType": "application/json",
"description": "PESI (Pulmonary Embolism Severity Index) from Aujesky 2005: age in years plus male sex (+10), cancer (+30), heart failure (+10), chronic lung disease (+10), heart rate >=110 (+20), SBP <100 mm Hg (+30), respiratory rate >=30 (+20), temperature <36 C (+20), altered mental status (+60), and SpO2 <90% (+20). Classes I (<=65) through V (>125). Only for already diagnosed PE. Not a diagnosis, not an outpatient protocol, not sPESI, and not the 17-variable laboratory model.",
"serviceName": "magent"
},
"extensions": {
"bazaar": {
"info": {
"input": {
"type": "http",
"method": "GET",
"queryParams": {
"age": 50,
"sex": "female",
"cancer": false,
"spo2_percent": 96,
"heart_failure": false,
"temperature_c": 37,
"heart_rate_bpm": 80,
"systolic_mm_hg": 120,
"respiratory_rate": 16,
"altered_mentation": false,
"chronic_lung_disease": false
}
},
"output": {
"type": "json",
"example": {
"score": 50,
"formula": "pesi",
"citation": {
"id": "aujesky-2005",
"doi": "10.1164/rccm.200506-862OC",
"title": "Derivation and validation of a prognostic model for pulmonary embolism",
"source": "Am J Respir Crit Care Med. 2005;172(8):1041-1046",
"authors": "Aujesky D, Obrosky DS, Stone RA, et al."
},
"age_years": 50,
"components": [
{
"value": 50,
"factor": "age",
"points": 50,
"present": true
},
{
"value": "female",
"factor": "male_sex",
"points": 0,
"present": false
},
{
"factor": "cancer",
"points": 0,
"present": false
},
{
"factor": "heart_failure",
"points": 0,
"present": false
},
{
"factor": "chronic_lung_disease",
"points": 0,
"present": false
},
{
"value": 80,
"factor": "heart_rate_ge_110",
"points": 0,
"present": false
},
{
"value": 120,
"factor": "systolic_mm_hg_lt_100",
"points": 0,
"present": false
},
{
"value": 16,
"factor": "respiratory_rate_ge_30",
"points": 0,
"present": false
},
{
"value": 37,
"factor": "temperature_lt_36",
"points": 0,
"present": false
},
{
"factor": "altered_mentation",
"points": 0,
"present": false
},
{
"value": 96,
"factor": "spo2_lt_90",
"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.",
"pesi_class": "I",
"formula_expression": "PESI = age_in_years + 10*male + 30*cancer + 10*heart_failure + 10*chronic_lung_disease + 20*(HR>=110) + 30*(SBP<100) + 20*(RR>=30) + 20*(temp<36) + 60*altered_mentation + 20*(SpO2<90); classes I <=65, II 66-85, III 86-105, IV 106-125, V >125"
}
},
"iconUrl": "https://api.magentlab.com/favicon.ico"
},
"schema": {
"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",
"cancer",
"heart_failure",
"chronic_lung_disease",
"heart_rate_bpm",
"systolic_mm_hg",
"respiratory_rate",
"temperature_c",
"altered_mentation",
"spo2_percent"
],
"properties": {
"age": {
"type": "integer",
"description": "Age in years (18-120). Adds 1 point per year (the age integer itself)."
},
"sex": {
"type": "string",
"description": "Sex (female or male). Male scores +10."
},
"cancer": {
"type": "boolean",
"description": "Cancer as assigned by the caller. true or false. +30 if true."
},
"spo2_percent": {
"type": "number",
"description": "Arterial oxygen saturation percent (50-100). Scores +20 when <90; 90 does not score."
},
"heart_failure": {
"type": "boolean",
"description": "Heart failure as assigned by the caller (separate from chronic lung disease). true or false. +10 if true."
},
"temperature_c": {
"type": "number",
"description": "Temperature in °C (30-45). Scores +20 when <36; 36.0 does not score."
},
"heart_rate_bpm": {
"type": "integer",
"description": "Heart rate in beats per minute (integer 30-220). Scores +20 when ≥110; 109 does not score."
},
"systolic_mm_hg": {
"type": "number",
"description": "Systolic blood pressure in mm Hg (50-250). Scores +30 when <100; 100 does not score."
},
"respiratory_rate": {
"type": "integer",
"description": "Respiratory rate in breaths/min (integer 4-80). Scores +20 when ≥30; 29 does not score."
},
"altered_mentation": {
"type": "boolean",
"description": "Altered mental status as assigned by the caller. true or false. +60 if true."
},
"chronic_lung_disease": {
"type": "boolean",
"description": "Chronic lung disease as assigned by the caller (separate from heart failure). true or false. +10 if true."
}
}
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object"
}
}
}
}
}
}
},
"x402Version": 2
}Accepts
The payment requirements as published to the catalog. Read the live 402 before paying — a price here is a claim, not a quote.
Pay 0.005 USDC on Base to 0x836B…19Ee2. The signed payment is good for 10 minutes.
- Paid to
- 0x836B…19Ee2
- USD Coin contract
- 0x8335…02913
- Payment window
- 10 minutes
- As published
- 5000 smallest units
The catalog’s raw entry
[
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2",
"paymentFlow": "upfront",
"resourceUrl": "https://api.magentlab.com/api/calc/pesi",
"assetTransferMethod": "eip3009"
},
"payTo": "0x836Be278f1739fB4308091cD1852F7971Bc19Ee2",
"amount": "5000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 600
}
]Extensions
{
"bazaar": {
"info": {
"input": {
"body": {
"items": [
{
"age": 50,
"sex": "female",
"cancer": false,
"spo2_percent": 96,
"heart_failure": false,
"temperature_c": 37,
"heart_rate_bpm": 80,
"systolic_mm_hg": 120,
"respiratory_rate": 16,
"altered_mentation": false,
"chronic_lung_disease": false
},
{
"age": 50,
"sex": "female",
"cancer": false,
"spo2_percent": 96,
"heart_failure": false,
"temperature_c": 37,
"heart_rate_bpm": 80,
"systolic_mm_hg": 120,
"respiratory_rate": 16,
"altered_mentation": false,
"chronic_lung_disease": false
}
]
},
"type": "http",
"method": "POST"
},
"output": {
"type": "json",
"example": {
"path": "/api/calc/pesi",
"count": 2,
"items": [
{
"score": 50,
"formula": "pesi",
"citation": {
"id": "aujesky-2005",
"doi": "10.1164/rccm.200506-862OC",
"title": "Derivation and validation of a prognostic model for pulmonary embolism",
"source": "Am J Respir Crit Care Med. 2005;172(8):1041-1046",
"authors": "Aujesky D, Obrosky DS, Stone RA, et al."
},
"age_years": 50,
"components": [
{
"value": 50,
"factor": "age",
"points": 50,
"present": true
},
{
"value": "female",
"factor": "male_sex",
"points": 0,
"present": false
},
{
"factor": "cancer",
"points": 0,
"present": false
},
{
"factor": "heart_failure",
"points": 0,
"present": false
},
{
"factor": "chronic_lung_disease",
"points": 0,
"present": false
},
{
"value": 80,
"factor": "heart_rate_ge_110",
"points": 0,
"present": false
},
{
"value": 120,
"factor": "systolic_mm_hg_lt_100",
"points": 0,
"present": false
},
{
"value": 16,
"factor": "respiratory_rate_ge_30",
"points": 0,
"present": false
},
{
"value": 37,
"factor": "temperature_lt_36",
"points": 0,
"present": false
},
{
"factor": "altered_mentation",
"points": 0,
"present": false
},
{
"value": 96,
"factor": "spo2_lt_90",
"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.",
"pesi_class": "I",
"formula_expression": "PESI = age_in_years + 10*male + 30*cancer + 10*heart_failure + 10*chronic_lung_disease + 20*(HR>=110) + 30*(SBP<100) + 20*(RR>=30) + 20*(temp<36) + 60*altered_mentation + 20*(SpO2<90); classes I <=65, II 66-85, III 86-105, IV 106-125, V >125"
},
{
"score": 50,
"formula": "pesi",
"citation": {
"id": "aujesky-2005",
"doi": "10.1164/rccm.200506-862OC",
"title": "Derivation and validation of a prognostic model for pulmonary embolism",
"source": "Am J Respir Crit Care Med. 2005;172(8):1041-1046",
"authors": "Aujesky D, Obrosky DS, Stone RA, et al."
},
"age_years": 50,
"components": [
{
"value": 50,
"factor": "age",
"points": 50,
"present": true
},
{
"value": "female",
"factor": "male_sex",
"points": 0,
"present": false
},
{
"factor": "cancer",
"points": 0,
"present": false
},
{
"factor": "heart_failure",
"points": 0,
"present": false
},
{
"factor": "chronic_lung_disease",
"points": 0,
"present": false
},
{
"value": 80,
"factor": "heart_rate_ge_110",
"points": 0,
"present": false
},
{
"value": 120,
"factor": "systolic_mm_hg_lt_100",
"points": 0,
"present": false
},
{
"value": 16,
"factor": "respiratory_rate_ge_30",
"points": 0,
"present": false
},
{
"value": 37,
"factor": "temperature_lt_36",
"points": 0,
"present": false
},
{
"factor": "altered_mentation",
"points": 0,
"present": false
},
{
"value": 96,
"factor": "spo2_lt_90",
"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.",
"pesi_class": "I",
"formula_expression": "PESI = age_in_years + 10*male + 30*cancer + 10*heart_failure + 10*chronic_lung_disease + 20*(HR>=110) + 30*(SBP<100) + 20*(RR>=30) + 20*(temp<36) + 60*altered_mentation + 20*(SpO2<90); classes I <=65, II 66-85, III 86-105, IV 106-125, V >125"
}
]
}
},
"iconUrl": "https://api.magentlab.com/favicon.ico"
},
"schema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"type",
"method"
],
"properties": {
"body": {
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"age",
"sex",
"cancer",
"heart_failure",
"chronic_lung_disease",
"heart_rate_bpm",
"systolic_mm_hg",
"respiratory_rate",
"temperature_c",
"altered_mentation",
"spo2_percent"
],
"properties": {
"age": {
"type": "integer",
"description": "Age in years (18-120). Adds 1 point per year (the age integer itself)."
},
"sex": {
"type": "string",
"description": "Sex (female or male). Male scores +10."
},
"cancer": {
"type": "boolean",
"description": "Cancer as assigned by the caller. true or false. +30 if true."
},
"spo2_percent": {
"type": "number",
"description": "Arterial oxygen saturation percent (50-100). Scores +20 when <90; 90 does not score."
},
"heart_failure": {
"type": "boolean",
"description": "Heart failure as assigned by the caller (separate from chronic lung disease). true or false. +10 if true."
},
"temperature_c": {
"type": "number",
"description": "Temperature in °C (30-45). Scores +20 when <36; 36.0 does not score."
},
"heart_rate_bpm": {
"type": "integer",
"description": "Heart rate in beats per minute (integer 30-220). Scores +20 when ≥110; 109 does not score."
},
"systolic_mm_hg": {
"type": "number",
"description": "Systolic blood pressure in mm Hg (50-250). Scores +30 when <100; 100 does not score."
},
"respiratory_rate": {
"type": "integer",
"description": "Respiratory rate in breaths/min (integer 4-80). Scores +20 when ≥30; 29 does not score."
},
"altered_mentation": {
"type": "boolean",
"description": "Altered mental status as assigned by the caller. true or false. +60 if true."
},
"chronic_lung_disease": {
"type": "boolean",
"description": "Chronic lung disease as assigned by the caller (separate from heart failure). true or false. +10 if true."
}
}
},
"maxItems": 25,
"minItems": 1
}
},
"additionalProperties": false
},
"type": {
"type": "string",
"const": "http"
},
"method": {
"type": "string",
"const": "POST"
},
"headers": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object"
}
}
}
}
}
}
}Provenance
- Seen in the source catalog
- 2026-08-31 13:16Z
- Last indexed by Roundhouse
- 2026-09-07 06:20Z
- Last enriched (probe, favicon, geo)
- 2026-09-24 14:45Z
- x402 version
- 2
- Max timeout
- 600s
- Liveness probe
- HTTP 402
Hand this page to an agent
Copy the prompt and paste it into Claude, an MCP client or your own agent — it will vet this service and call it over the free read API. No key, no account.
GET api.roundhouseai.io/v0/endpoints
This endpoint's own trailing-30-day call count, as published by the upstream catalog and snapshotted daily. 15 snapshots so far. Verified volume counts only settlements with an on-chain EIP-3009 marker.
Show the promptHide the prompt
Using Roundhouse, look up the x402 service magent and tell me whether it is worth paying: what a call costs, whether the endpoint answered when last probed, and what its payment record actually shows. curl -s 'https://api.roundhouseai.io/v0/endpoints?q=magent' curl -s 'https://api.roundhouseai.io/v0/merchants/<the payTo wallet returned above>' Then call it: read the price from the live 402 at https://api.magentlab.com/api/calc/pesi, never from a cached figure, and pay with an x402 client. The /v0 API needs an API key (`authorization: Bearer rh_live_…`) on everything except /v0/unified* and /v0/endpoints. Mint a personal key for $0.01 at GET https://api.roundhouseai.io/v0/test/x402, or use an organization key from https://roundhouseai.io/dashboard/team. If you do not have Roundhouse tools or skills installed, read https://roundhouseai.io/skill.md first — it is the whole procedure.