Server data from the Official MCP Registry
Hosted MCP for denial, prior auth, reimbursement, workflow validation, batch scoring, and feedback.
Hosted MCP for denial, prior auth, reimbursement, workflow validation, batch scoring, and feedback.
Remote endpoints: streamable-http: https://mcp.sentinelsignal.io/mcp
This is a well-implemented MCP server for healthcare claims scoring with proper authentication, secure credential handling, and comprehensive error handling. The server demonstrates good security practices including secure token storage, appropriate permission scoping, and clean separation of concerns. Supply chain analysis found 3 known vulnerabilities in dependencies (0 critical, 3 high severity).
7 files analyzed · 5 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Available as Local & Remote
This plugin can run on your machine or connect to a hosted endpoint. during install.
From the project's GitHub README.
Hosted and local MCP access for healthcare claims workflow scoring, usage, limits, and feedback.
https://mcp.sentinelsignal.io/mcp@sentinelsignal/scoring (https://server.smithery.ai/sentinelsignal/scoring)POST https://token.sentinelsignal.io/v1/keys/trialuvx sentinel-signal-mcpuvx sentinel-signal-mcp
export SENTINEL_BASE_URL="https://api.sentinelsignal.io"
export SENTINEL_TOKEN_BASE_URL="https://token.sentinelsignal.io"
# Optional: export SENTINEL_API_KEY="ss_live_or_test_api_key_here"
# If omitted, the MCP server auto-mints a trial key
Hosted remote MCP endpoint (Streamable HTTP): https://mcp.sentinelsignal.io/mcp
Smithery hosted listing: @sentinelsignal/scoring (https://server.smithery.ai/sentinelsignal/scoring)
If your MCP client supports remote HTTP MCP, point it at that URL and send Authorization: Bearer <SENTINEL_API_KEY>. For Smithery-hosted connections, the key is forwarded as x-sentinel-api-key.
{
"mcpServers": {
"sentinel-signal": {
"command": "uvx",
"args": ["sentinel-signal-mcp"],
"env": {
"SENTINEL_BASE_URL": "https://api.sentinelsignal.io",
"SENTINEL_TOKEN_BASE_URL": "https://token.sentinelsignal.io"
}
}
}
}
{
"mcpServers": {
"sentinel-signal": {
"command": "uvx",
"args": ["sentinel-signal-mcp"],
"env": {
"SENTINEL_BASE_URL": "https://api.sentinelsignal.io",
"SENTINEL_TOKEN_BASE_URL": "https://token.sentinelsignal.io"
}
}
}
}
Windsurf can use the same mcpServers block shape.
This package provides a local stdio MCP server, while the hosted remote service exposes the same healthcare claims tools over Streamable HTTP. It supports either:
PyPI: https://pypi.org/project/sentinel-signal-mcp/
SENTINEL_API_KEY, orPOST /v1/keys/trial) with secure local credential cachinglist_workflows — list supported workflows and current model versionsget_workflow_schema — fetch required fields, optional fields, and an example payload for a workflowvalidate_workflow_payload — validate and normalize a workflow payload before scoringscore_workflow — score denial risk, prior auth, and reimbursement payloads against a named workflowscore_batch — score up to 25 workflow items in one requestget_limits — retrieve plan limits for the current keyget_usage — retrieve usage for a given monthsubmit_feedback — submit structured outcome feedbackuv (if needed): https://docs.astral.sh/uv/SENTINEL_API_KEY; if omitted, the server auto-mints a trial key and caches it):export SENTINEL_BASE_URL="https://api.sentinelsignal.io" # optional (default shown)
export SENTINEL_TOKEN_BASE_URL="https://token.sentinelsignal.io" # optional (default shown)
# export SENTINEL_API_KEY="ss_live_or_test_api_key_here" # optional
export SENTINEL_TIMEOUT_SECONDS="30" # optional
uvx sentinel-signal-mcp
Deliverable behavior: install tool -> (optionally set env vars) -> agent can call score_workflow.
If no API key is configured, the MCP server resolves credentials in this order:
SENTINEL_API_KEY env var~/.sentinel/credentials.json by default) if not expired and base URLs matchPOST {SENTINEL_TOKEN_BASE_URL}/v1/keys/trialDisable auto-trial with SENTINEL_NO_TRIAL=1.
Add this to your MCP config JSON (mcpServers section):
{
"mcpServers": {
"sentinel-signal": {
"command": "uvx",
"args": ["sentinel-signal-mcp"],
"env": {
"SENTINEL_BASE_URL": "https://api.sentinelsignal.io",
"SENTINEL_TOKEN_BASE_URL": "https://token.sentinelsignal.io",
"SENTINEL_API_KEY": "ss_live_or_test_api_key_here",
"SENTINEL_TIMEOUT_SECONDS": "30"
}
}
}
}
If your client accepts a command + args + env definition:
uvx["sentinel-signal-mcp"]SENTINEL_API_KEY (if omitted, auto-trial mint is used unless disabled)SENTINEL_BASE_URLSENTINEL_TOKEN_BASE_URLSENTINEL_CREDENTIALS_PATHSENTINEL_NO_TRIAL=1SENTINEL_TIMEOUT_SECONDSlist_workflowsCalls GET /v1/workflows so agents can discover the supported healthcare workflows and current model versions before scoring.
No arguments.
get_workflow_schemaCalls GET /v1/workflows/{workflow}/schema so agents can fetch required fields, optional fields, enums, and example payloads before issuing a score.
Arguments:
workflow (str): workflow ID such as healthcare.denialvalidate_workflow_payloadCalls POST /v1/workflows/{workflow}/validate and returns normalized payload output plus structured validation issues without consuming a scoring call.
Arguments:
workflow (str): workflow ID such as healthcare.denialpayload (object): workflow payload object to validatescore_workflowCalls the Sentinel Signal unified scoring endpoint (POST /v1/score).
Arguments:
workflow (str): workflow ID (for example healthcare.denial, healthcare.prior_auth, healthcare.reimbursement)payload (object): workflow payload objectoptions (object, optional): scoring options objectExample MCP tool call input:
{
"workflow": "healthcare.denial",
"payload": {
"payer_id": 44,
"provider_id": 1021,
"patient_id": "PT_DEMO_001",
"patient_age": 57,
"patient_sex": "F",
"cpt_code": "99214",
"icd10_code": "M5450",
"service_date": "2026-02-13",
"place_of_service": "11",
"units": 1,
"billed_amount": 210.0,
"allowed_amount": 145.0,
"claim_frequency_code": "1",
"network_status": "in_network",
"prior_authorization_required": true,
"prior_authorization_on_file": false,
"referral_on_file": false,
"is_emergency": false,
"modifier_1": "25",
"submission_channel": "edi",
"data_source": "api"
},
"options": {
"allow_fallback": true,
"distribution_profile": "commercial_beta",
"operating_point": "high_recall"
}
}
get_limitsCalls GET /v1/limits for the current API key.
No arguments.
get_usageCalls GET /v1/usage.
Arguments:
month (str, optional): month filter (for example 2026-02)score_batchCalls POST /v1/score/batch to score up to 25 workflow items sequentially in one request.
Arguments:
items (array): list of {workflow, payload, options?} scoring itemscontinue_on_error (bool, optional): whether later items should continue if an earlier item failssubmit_feedbackCalls POST /v1/feedback with a structured feedback payload.
Arguments:
feedback (object): raw FeedbackRequest objectExample input:
{
"feedback": {
"request_id": "00000000-0000-0000-0000-000000000001",
"endpoint": "denial",
"observed_outcome": "denied",
"expected_outcome": "paid",
"confidence_mismatch": true,
"payer_id": 44,
"cpt": "99214",
"denial_reason_code": "AUTH_MISSING",
"severity": "med",
"days_to_outcome": 12,
"notes": "Example feedback payload for agent integration testing."
}
}
Default cache path:
~/.sentinel/credentials.json (permissions 0600)Cached payload includes the trial key plus metadata used by the agent/runtime:
{
"api_key": "ss_trial_...",
"account_id": "uuid",
"expires_at": "2026-03-10T00:00:00Z",
"limits": {
"monthly_quota": 1000,
"rps": 1,
"burst": 5
},
"upgrade_url": "https://sentinelsignal.io/portal/dashboard",
"token_base_url": "https://token.sentinelsignal.io",
"api_base_url": "https://api.sentinelsignal.io"
}
The MCP server stores both base URLs in the cache so it does not accidentally reuse a trial key across different environments.
Reset the cached credentials (force a fresh trial key next run):
uvx sentinel-signal-mcp --reset-credentials
SENTINEL_BASE_URL (optional, default https://api.sentinelsignal.io): scoring API base URLSENTINEL_TOKEN_BASE_URL (optional, default https://token.sentinelsignal.io): token-service base URL used for trial key mintingSENTINEL_API_KEY (optional): if set, used directly and never cachedSENTINEL_CREDENTIALS_PATH (optional, default ~/.sentinel/credentials.json)SENTINEL_NO_TRIAL (optional): set to 1 to disable auto-trial mintingSENTINEL_TIMEOUT_SECONDS (optional, default 30)SENTINEL_API_BASE_URL (legacy alias for SENTINEL_BASE_URL)The MCP tools return structured payloads for both success and common operational failures:
success -> {"ok": true, ...}
quota exhausted / payment required (402) -> {"ok": false, "error": {"action": "upgrade_required", "upgrade_url": "...", ...}}
rate limited (429) -> {"ok": false, "error": {"action": "retry_later", ...}}
auth/config issues (401/403 or missing credentials) -> {"ok": false, "error": {"action": "configure_credentials", ...}}
This package is set up for PyPI publishing so users can run it with:
uvx sentinel-signal-mcp
Typical release commands:
python -m build
python -m twine upload dist/*
0600.SENTINEL_CREDENTIALS_PATH=/tmp/... for ephemeral environments if you do not want a persistent cache.Be the first to review this server!
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
by Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption