MCP server: medical-billing intelligence for AI agents — prior-auth checks, denial decoding, claim triage, appeal assessments, PHI de-id demo. Pay-per-call via x402 (USDC on Base).
Server has 7 tools with complete input schemas (Zod-validated) and descriptions. Naming follows verb_noun pattern (pa_check, denial_decode, claim_triage, appeal_assessment, phi_scrub_demo). However, descriptions lack LLM-optimized structure: they bury key details (pricing, prerequisites) in prose rather than leading with action. Parameter descriptions are present but generic (e.g., 'CPT/HCPCS procedure code, e.g. 29881' repeats the example in description text, violating the 'no examples in descriptions' rule). Output schemas are not documented, responses are JSON-stringified text blobs with no field-level guidance. Error handling is minimal: paid tools return {error, message} but lack recovery guidance or categorization. No tool annotations (readOnlyHint, destructiveHint, idempotent). Composition is sound: each tool has one responsibility, and free tools (catalog, free_samples) enable discovery before paid calls.
Full appeal verdict for a denied claim: appeal/fix/write-off decision, deadline math vs the payer's typical appeal window, evidence checklist, payer-specific arguments, and a structured appeal-letter draft. $1.50 per call.
Free. List the AutomatedRCM billing-intelligence endpoints, prices, and input shapes.
Triage an unpaid claim: given the follow-up action code (RES/CPE/CRO/APP/PAY or empty), balance, and claim ages, returns the work bucket (WORK_NOW/WAITING/REVIEW/COMPLETE), risk flags, priority score, and next action with deadline. $0.03 per call.
Decode a CARC claim-denial code (e.g. CO-50, PR-204): plain-English meaning, category, appealability, concrete next action, and prevention. $0.02 per call.
Free. Real sample outputs from every paid endpoint on fixed example inputs — evaluate quality before paying.
Output schemas not documented. Tools return JSON-stringified text blobs via text() helper. LLMs cannot infer field structure, forcing unstructured parsing and wasting tokens.
Parameter descriptions include example values (e.g., 'CPT/HCPCS procedure code, e.g. 29881'). LLMs reuse examples literally rather than adapting to context, causing failures.
Paid tools lack error recovery guidance. callPaid() returns {error, message} but does not categorize errors as retryable, user-fixable, or fatal. LLM cannot decide next action.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 61 | 2026-07-28+ | v2 |
Prior-authorization determination for a CPT/HCPCS code + US payer (UHC, Aetna, Cigna, Florida Blue, Humana, Medicare, Medicare Advantage). Returns requirement, clinical criteria, documentation checklist, payer portal and turnaround. $0.05 per call.
De-identify healthcare text (DEMO — synthetic/test data ONLY, never real PHI). Strips names, DOBs, IDs, phones, addresses; dates become a derived interval timeline so filing-window math survives. Returns scrubbed text + token map. $0.01 per call. Production use runs in your own environment: [email protected].
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). All tools are read-only but this is not declared in schema, forcing LLMs to infer safety from descriptions.
Descriptions bury pricing and prerequisites in prose. Lead with action: 'Determine prior-auth requirement for a CPT code + payer ($0.05/call)' instead of current format.