Skip to main content
Glama
ayeyouok

a207-clinical-calc-mcp

by ayeyouok

a207-clinical-calc-mcp(M6 · 临床计算)

儿童 CKD 临床计算 MCP医生独占(MX-1)。目前提供 eGFR-Schwartz 估算与 KDIGO 2024 儿童 CKD 分期。纯计算、只读、无跨包依赖。

工具清单

工具

读写

调用方限制

说明

calc_egfr_schwartz

医生独占

eGFR 估算(床旁2009 / 含BUN修订2009 / 经典k值 三版)

classify_ckd

医生独占

KDIGO 2024 儿童 CKD 合并分期(GxAx)

写权边界:M6 严格医生独占(MX-1)。营养师/家长命中分期词族时由 M13 路由转交医生,不触发本包。

Related MCP server: ckd-meal-plan-mcp

公式口径(ADR-006)

  • 床旁 Schwartz 2009(默认):eGFR = 0.413 × 身高(cm) / Scr(mg/dL),结果 ml/min/1.73m²。

  • 含 BUN 修订 2009eGFR = 0.413 × 身高 / (Scr + 0.003×BUN − 0.024),对 eGFR<60 儿童更准(需 bun_mg_dl)。

  • 经典 k 值eGFR = k × 身高 / Scr,k 默认按年龄带(<1y=0.45, 1–12y=0.55, ≥13y=0.70),可 k_value 覆盖。

  • CKD 分期(KDIGO 2024 儿童):eGFR → G1–G5;白蛋白尿(UACR mg/g 或 UPCR mg/g)→ A1–A3;合并写作 GxAx

运行与部署

本项目 5 个 MCP 统一发 PyPI(维护者 NFYY),发上去后裸 uvx 即可拉取:

# 1. 构建 sdist + wheel(产物落 dist/)
python -m build
# 2. 校验
python -m twine check dist/*
# 3. 发布(用你发另外 4 个包时同一个 NFYY 凭据)
python -m twine upload dist/*

发布后在 Codespace / 魔搭裸包名部署:

uvx --refresh a207-clinical-calc-mcp

测试

python tests/test_tools.py   # 全断言通过

已知缺口(非阻断)

  • 高钾血症等危急值目前仅为信息性提示(note 字段),未做阈值告警推送;如需主动告警,待 M10 通知接入。

  • <2 岁婴儿 eGFR 阈值与年长儿不同,已在 pediatric_caveat 字段警示,但未内置婴儿专用 G 分期表(待临床确认是否纳入)。

Available Tools

2 tools
calc_egfr_schwartzA

估算肾小球滤过率(Schwartz 系列),医生独占。

  • method=bedside2009:eGFR=0.413×身高/Sr(KDIGO 默认)

  • method=revised2009:含 BUN 修订式,需 bun_mg_dl

  • method=classic:k×身高/Sr,k 按年龄带或 k_value 覆盖 返回 egfr(ml/min/1.73m²)、所用公式、口径说明、<2 岁警示。

ParametersJSON Schema
NameRequiredDescriptionDefault
methodNobedside2009
k_valueNo
age_yearsYes
bun_mg_dlNo
height_cmYes
serum_creatinine_mgdlYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden and does disclose key behavior: formulas used, output units (ml/min/1.73m²), required BUN input for one method, and an under-2-years warning. It does not explain error handling or edge-case behavior (e.g., missing BUN, invalid method), which prevents a perfect score.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, front-loaded with the core purpose, and uses bulleted method variants that are easy to scan. Every sentence adds information, and there is no redundant or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is largely complete for a calculation tool: it covers methods, inputs, outputs, and a special warning. Since an output schema exists, return value details need not be fully described. However, it omits the intended age population (Schwartz is pediatric) and does not specify behavior when required inputs for selected methods are missing, so a small gap remains.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description compensates exceptionally well: it explains all three method values, indicates bun_mg_dl is only needed for revised2009, and explains k_value as either age-based or an override. The formulas mention height and Sr (serum creatinine), and age_years is tied to age bands and the under-2 warning, so every parameter receives meaningful context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description begins with a specific action and resource: '估算肾小球滤过率(Schwartz 系列)' (estimate GFR, Schwartz series) and adds the exclusivity restriction '医生独占'. This clearly distinguishes it from the sibling tool classify_ckd, which likely addresses staging rather than calculation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides clear usage context: doctor-only access, method variants with the KDIGO default, and the dependency on bun_mg_dl for revised2009. However, it does not explicitly state when NOT to use this tool or directly compare it with classify_ckd, so it falls short of fully explicit when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

classify_ckdA

KDIGO 2024 儿童 CKD 合并分期(医生独占)。

egfr 必需;白蛋白尿二选一(uacr 或 upcr)。 返回 G/A 分期、合并分期(GxAx)、分期说明、随访强度提示。

ParametersJSON Schema
NameRequiredDescriptionDefault
egfrYes
uacr_mg_gNo
upcr_mg_gNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of disclosure. It reveals that the tool requires specific inputs, returns a structured output, and is restricted to physicians (an auth-related trait). It does not explicitly state that it is read-only or how it handles invalid inputs, but the computational nature is implied and the description adds context beyond the raw schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded. It uses three short sentences to convey purpose, input requirements, and output. Every sentence contributes value, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple classification tool with an output schema, the description is quite complete. It covers the primary purpose, inputs, output summary, and a clinical reference (KDIGO 2024). Minor gaps include handling of cases where both uacr and upcr are provided or invalid eGFR values, but these are not critical given the tool's straightforward nature.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description compensates by explaining that eGFR is required and that uacr and upcr are two alternative measures of albuminuria ('albuminuria choose one'). This gives meaningful context to the parameters, though it does not provide units or acceptable value ranges (which are partially evident from parameter names).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: performing KDIGO 2024 pediatric CKD combined staging. It specifies the required input (eGFR) and optional albuminuria measures, and lists the return values (G/A stage, combined stage, explanation, follow-up intensity). This distinguishes it from the sibling tool calc_egfr_schwartz, which calculates eGFR, by focusing on staging.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear input prerequisites ('eGFR required; choose one of uacr or upcr') and a restriction ('physician only'). This indicates when the tool can be used and by whom. However, it does not explicitly mention alternatives or when to use this tool instead of the sibling, so it stops short of full comparative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 2 tool updatesv0.1.0
    • First observedcalc_egfr_schwartz
    • First observedclassify_ckd

TDQS

A4.5/5.0
Disambiguation5/5

The two tools are clearly distinct: one calculates eGFR, the other classifies CKD stage based on eGFR and albuminuria. There is no overlap in functionality or purpose.

Naming Consistency5/5

Both tools follow a consistent verb_noun pattern with lowercase snake_case ('calc_egfr_schwartz' and 'classify_ckd'). The naming convention is uniform and predictable.

Tool Count3/5

With only two tools, the server is on the minimal side, but the tools form a cohesive workflow for pediatric kidney assessment. The count is borderline for the stated clinical calculator purpose.

Completeness5/5

The tools cover the entire workflow from eGFR calculation (with multiple Schwartz methods) to CKD staging, including necessary inputs like albuminuria. No obvious gaps exist within the narrow domain.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Mock MCP server for pediatric CKD risk warning, enabling patient biochemical trend retrieval, deterministic risk rule evaluation, structured alert triggering, and clinical SOP lookup using simulated data.
    5
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    This MCP server generates individualized meal plans for children with chronic kidney disease (CKD) based on KDIGO 2024/PRNT 2020/KRCP 2025 guidelines, incorporating patient age, CKD stage, allergies, dietary culture, and diet diary analysis. It provides deterministic nutrient computations and tools for meal plan generation, food database lookup, and risk analysis.
    13
    MIT
  • F
    license
    A
    quality
    B
    maintenance
    MCP server for pediatric CKD lab data, providing lab panel queries, critical value alerts, trend analysis, and write operations with role-based permissions.
    5
    -
  • F
    license
    A
    quality
    B
    maintenance
    Read-only MCP server providing pediatric CKD patient master data with tools for patient profiles, diagnosis, nutrition ceilings, guardian verification, and patient lists, designed for the CKDNutri project.
    5
    -

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ayeyouok/a207-clinical-calc-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server