mcp-server-sql

rajat-coditas/mcp-server-sql

3.1

If you are the rightful owner of mcp-server-sql and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

MCP Server for MRIoA Third-Party Insurance Validation Services

Tools
5
Resources
0
Prompts
0

MCP Server - MRIoA Insurance Validation

MCP Server for MRIoA Third-Party Insurance Validation Services

Description

This is a NestJS-based MCP (Model Context Protocol) server that provides tools for insurance validation case management using JSON databases. The server is specifically designed for MRIoA (Medical Review Insurance of America) third-party insurance validation services.

Features

Insurance Validation Tools

  • OCR Validation: Get OCR data based on validation rules
  • Insured Name Search: Search for claimant names in government ID documents
  • Tag-based OCR Data: Fetch OCR data based on tags
  • Case Data Management: Retrieve insurance validation case information using JSON database

MRIoA Case Data Tool

Get Case Data Tool

Fetch comprehensive insurance validation case information from a JSON database using a case ID.

Tool Name: get_case_data

Input:

  • case_id (string): The unique MRIoA case ID to fetch data for (e.g., MRIOA-001)

Sample Cases Available:

  • MRIOA-001: Medical Review - Outpatient Services (PPO, California)
  • MRIOA-002: Surgical Review - Knee Arthroscopy (HMO, Texas)
  • MRIOA-003: DME Review - Respiratory Equipment (Medicare Advantage, Florida)
  • MRIOA-004: Pharmacy Review - Biologic Therapy (HDHP, New York)
  • MRIOA-005: Mental Health Review - PTSD Treatment (EPO, Illinois)

Example Usage:

{
  "case_id": "MRIOA-001"
}

Case Data Fields:

  • Basic Information: Case ID, Claimant Name, Insured Name, Review Type
  • Plan Details: Plan Type, Plan Funded Type, Plan State of Issue, State License
  • Review Process: TAT, Primary CPT Code, Review Category, Review Level, Review Phase
  • Timing: Rev Due, Requested Due, Client Due, DOS (Date of Service)
  • Clinical: Questions for Review, Services, P2P Requirements
  • Administrative: Client Code, Client Notes, Case Notes, Number of Questions/Pages
  • Templates: Reviewers Instructions Template, Select Reviewer Question Template
  • Status: Current Status, Priority, Assigned Reviewer

Response Format:

{
  "success": true,
  "case_id": "MRIOA-001",
  "data": {
    "id": "MRIOA-001",
    "claimantName": "John Michael Smith",
    "reviewType": "Medical Review",
    "insuredName": "Smith, John M.",
    "planType": "PPO",
    "primaryCPTCode": "99213",
    "reviewCategory": "Outpatient Services",
    "reviewLevel": "Level 1 - Initial Review",
    "tat": "72 hours",
    "status": "Under Review",
    "assignedReviewer": "Dr. Emily Chen, MD",
    ...
  },
  "message": "Successfully retrieved case data for MRIOA-001"
}

Installation

npm install

Running the App

# Development mode
npm run start:dev

# Production mode
npm run start:prod

# STDIO transport for MCP
npm run start:stdio

# HTTP transport for MCP
npm run start:http

# Both transports
npm run start:both

JSON Database

The server uses node-json-db for lightweight insurance validation case data storage. The system follows this structure:

Database Files

  • db.json: Contains MRIoA sample case data used for initialization
  • case-data.json: Runtime database file (auto-created from db.json on first run)

Data Initialization

  1. On first startup, the service checks if case-data.json exists
  2. If not, it loads sample MRIoA case data from db.json
  3. If db.json doesn't exist, it creates an empty database structure
  4. All subsequent operations use the case-data.json file

Customizing Data

To add or modify insurance validation cases:

  1. Edit the db.json file with your MRIoA case structure
  2. Delete case-data.json to force re-initialization
  3. Restart the server

MRIoA Case ID Uniqueness

Answer to your question: Yes, the same case ID could potentially be sent across for validation in scenarios like:

  • Case Updates: Status changes, additional documentation
  • Re-reviews: Appeals, peer-to-peer consultations
  • Concurrent Reviews: Ongoing treatment authorizations

Date-Affected Fields: Several fields are date-sensitive:

  • Primary CPT Code: May change based on service date and current coding standards
  • DOS (Date of Service): Critical for determining coverage periods
  • Due Dates: Rev Due, Requested Due, Client Due are all time-sensitive
  • TAT (Turn Around Time): Calculated from submission date
  • State Licenses: May have expiration dates affecting validity

Environment Variables

Configure your database and server settings using environment variables or .env file.

Available Tools

  1. get_ocr_data_based_on_validation_rules - OCR data validation
  2. add_numbers - Simple number addition
  3. insured_name - Name search in documents
  4. get_ocr_data_based_on_tag - Tag-based OCR retrieval
  5. get_case_data - MRIoA insurance validation case data retrieval

MRIoA Review Types Supported

  • Medical Review: Standard outpatient and inpatient services
  • Surgical Review: Pre-authorization for surgical procedures
  • DME Review: Durable Medical Equipment evaluations
  • Pharmacy Review: Specialty pharmacy and biologics
  • Mental Health Review: Behavioral health services

Project Structure

├── db.json                     # MRIoA sample case data for initialization
├── case-data.json             # Runtime JSON database (auto-created)
├── src/
│   ├── mcp/
│   │   ├── database/
│   │   │   └── json-database.service.ts  # JSON database service
│   │   └── tools/
│   │       └── get-case-data/            # Case data retrieval tool
│   │           ├── get-case-data.handler.ts
│   │           ├── get-case-data.schema.ts
│   │           └── get-case-data.tool.ts
│   └── ...

License

UNLICENSED