An MCP (Model Context Protocol) server that provides AI agents access to the Verity healthcare API for Medicare coverage policies, prior authorization requirements, and medical code lookups.
- Code Lookup: Look up CPT, HCPCS, ICD-10, and NDC codes with descriptions and RVU values
- Policy Search: Search and browse Medicare LCDs, NCDs, and Articles
- Prior Auth Check: Determine if procedures require prior authorization
- Coverage Criteria: Search specific coverage criteria and requirements
- Jurisdiction Info: Get MAC jurisdiction details and covered states
- Policy Comparison: Compare coverage across different jurisdictions
- Change Tracking: Monitor policy updates and modifications
- Node.js 18 or higher
- A Verity API key (get one at verity.backworkai.com)
-
Clone or download this repository:
cd verity_mcp -
Install dependencies:
npm install
-
Build the server:
npm run build
Add the server to your Claude Desktop configuration file:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"verity": {
"command": "node",
"args": ["C:\\Users\\tyler\\OneDrive\\Desktop\\verity_mcp\\build\\index.js"],
"env": {
"VERITY_API_KEY": "vrt_live_YOUR_API_KEY_HERE"
}
}
}
}Replace YOUR_API_KEY_HERE with your actual Verity API key.
claude mcp add verity node C:\Users\tyler\OneDrive\Desktop\verity_mcp\build\index.jsThen set the environment variable:
set VERITY_API_KEY=vrt_live_YOUR_API_KEY_HERELook up a medical code and get coverage information.
lookup_code("76942") # Ultrasound guidance
lookup_code("J0585") # Botox injection
lookup_code("M54.5") # Low back pain diagnosis
Search Medicare coverage policies.
search_policies("ultrasound guidance")
search_policies("diabetes CGM")
search_policies("", { policy_type: "NCD" }) # Browse NCDs
Get detailed policy information by ID.
get_policy("L33831")
get_policy("A52458", { include: "criteria,codes" })
Compare coverage across MAC jurisdictions.
compare_policies(["76942"])
compare_policies(["76942", "76937"], { jurisdictions: ["JM", "JH"] })
Track policy updates over time.
get_policy_changes()
get_policy_changes({ since: "2024-01-01T00:00:00Z" })
get_policy_changes({ policy_id: "L33831" })
Search coverage criteria blocks.
search_criteria("diabetes")
search_criteria("BMI", { section: "indications" })
search_criteria("frequency", { section: "limitations" })
Get MAC jurisdiction information.
list_jurisdictions()
Check prior authorization requirements.
check_prior_auth(["76942"])
check_prior_auth(["76942"], { state: "TX" })
check_prior_auth(["J0585"], { diagnosis_codes: ["M62.81"] })
| Variable | Required | Description |
|---|---|---|
VERITY_API_KEY |
Yes | Your Verity API key (starts with vrt_live_ or vrt_test_) |
VERITY_API_BASE |
No | API base URL (default: https://verity.backworkai.com/api/v1) |
# Watch mode for development
npm run dev
# Build
npm run build
# Run the server directly
npm startUser: "Is ultrasound guidance covered for needle placement?"
Agent uses: lookup_code("76942") and search_policies("ultrasound guidance needle placement")
User: "What are the prior auth requirements for Botox injections in Texas?"
Agent uses: check_prior_auth(["J0585"], { state: "TX" })
User: "Compare coverage for CGM devices across California and Texas"
Agent uses: compare_policies(["E0787"], { jurisdictions: ["JE", "JM"] })
Make sure you've set the API key in your Claude Desktop config or environment.
Your API key is invalid or expired. Check that it starts with vrt_live_ or vrt_test_.
Rate limit exceeded. Wait a moment and try again, or upgrade your API plan.
MIT