Hosted and local MCP tools for healthcare claims workflow scoring, usage, limits, and feedback
Server defines 8 tools with consistent naming patterns (verb-noun: score_*, get_*, list_*, validate_*, submit_*). All tools have descriptions present (10-100 chars range). Input schemas are visible with type declarations and parameter descriptions. However, there are significant gaps: (1) Output schemas are not documented, no return type specifications visible in code, (2) Parameter descriptions are minimal and generic (e.g., 'The workflow identifier' provides no guidance on valid formats, constraints, or examples), (3) No error handling guidance in descriptions, error responses exist in code but descriptions don't tell LLMs how to recover, (4) No pagination support despite tools returning lists, (5) Tool descriptions lack context about when to use each tool vs. alternatives (e.g., score_workflow vs score_batch distinction is unclear). The error handling infrastructure is solid (SentinelAPIError with actionable fields like 'action', 'retry_after_seconds', 'upgrade_url'), but this context is buried in code, not surfaced in tool descriptions. Per Agentic Tool Pattern 'tool-description', descriptions should state WHAT, WHEN, and any prerequisites, these descriptions are more transactional/API-focused than LLM-optimized.
Return plan limits for the current API key (GET /v1/limits).
Return usage for the current API key (GET /v1/usage). Optional month format: YYYY-MM.
Fetch required fields, optional fields, and example payloads for a workflow (GET /v1/workflows/{workflow}/schema).
List supported workflows and current model versions (GET /v1/workflows).
Score up to 25 workflow items sequentially in one request (POST /v1/score/batch).
Call Sentinel Signal unified workflow scoring (POST /v1/score).
Output schemas are not documented for any tool. LLMs cannot plan downstream calls or extract the right data without knowing what fields to expect.
Parameter descriptions are transactional/API-focused rather than LLM-optimized. E.g., 'The workflow identifier' provides no guidance on valid values, constraints, or format.
Tool descriptions lack context about when to use each tool vs. alternatives (e.g., score_workflow vs. score_batch, get_limits vs. get_usage). LLMs will waste reasoning cycles deciding between similar tools or make wrong selections.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | C | 61 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 38 | - | v1 |
Submit structured feedback for a prior scoring request (POST /v1/feedback).
Validate and normalize a workflow payload without consuming a scoring call (POST /v1/workflows/{workflow}/validate).
No pagination support documented. Tools like list_workflows may return large result sets without documented limit, offset, or cursor parameters.
Error handling guidance is absent from tool descriptions. Error responses exist in code (SentinelAPIError with 'action' and 'retry_after_seconds') but descriptions don't tell LLMs what to do on failure. Per pattern:recovery-guide, errors must tell the LLM what to do next.
Tools return structured errors (ok, error.code, error.action) but descriptions don't document this response shape. LLMs cannot reliably parse responses or follow suggested actions.