Skip to main content
Glama
openpharma-org

Formulary MCP Server

Unofficial US Commercial Insurance Formulary MCP Server

Model Context Protocol (MCP) server providing unified access to drug formulary data from US ACA marketplace health insurance plans.

Features

  • Unified drug search across ~15,000 plans from ~735 issuers

  • Coverage details: tier levels, copays, coinsurance

  • Restriction info: prior authorization, step therapy, quantity limits

  • Plan comparison: compare drug coverage across plans

  • State filtering: filter results by state

  • Full-text search: fast drug name search with FTS5

Related MCP server: Benefits Agent MCP Server

Installation

cd formulary-mcp-server
npm install

Option 1: Download Pre-built Database

npm run download:db

Option 2: Build Database from Source

# Download issuer index from CMS
npm run download:index

# Download formulary files for all issuers
npm run download:files

# Build SQLite database
npm run build:db

Build and Run

npm run build
npm start

Usage

{
  "mcpServers": {
    "formulary": {
      "command": "node",
      "args": ["/path/to/formulary-mcp-server/build/index.js"]
    }
  }
}

Tool: formulary_info

Single unified tool with multiple methods:

Methods

Method

Description

Required Params

search_drug

Search drugs by name

drug_name

get_drug_details

Get full drug info with coverage

rxnorm_id

get_plan_formulary

Get drugs covered by a plan

plan_id

get_plan_details

Get plan info and tier structure

plan_id

compare_coverage

Compare drug across plans

rxnorm_id

search_plans

Search plans by state/issuer

-

get_restrictions

Get PA/ST/QL requirements

rxnorm_id

get_alternatives

Find drugs in same tier

rxnorm_id, plan_id

get_statistics

Get database statistics

-

Example Usage

Search for a drug:

{
  "method": "search_drug",
  "drug_name": "metformin",
  "state": "CA",
  "limit": 10
}

Get drug details:

{
  "method": "get_drug_details",
  "rxnorm_id": "860975",
  "state": "CA"
}

Compare coverage:

{
  "method": "compare_coverage",
  "rxnorm_id": "860975",
  "state": "TX",
  "limit": 20
}

Get plan formulary:

{
  "method": "get_plan_formulary",
  "plan_id": "12345VA0010001",
  "tier": "GENERIC"
}

Get restrictions:

{
  "method": "get_restrictions",
  "rxnorm_id": "860975",
  "plan_id": "12345VA0010001"
}

Response Format

Drug Search Response

{
  "method": "search_drug",
  "query": "metformin",
  "count": 5,
  "results": [
    {
      "rxnorm_id": "860975",
      "drug_name": "Metformin Hydrochloride 500 MG Oral Tablet",
      "plan_count": 245,
      "tiers": ["GENERIC", "PREFERRED-BRAND"]
    }
  ]
}

Drug Details Response

{
  "method": "get_drug_details",
  "drug": {
    "rxnorm_id": "860975",
    "drug_name": "Metformin Hydrochloride 500 MG Oral Tablet"
  },
  "coverage_summary": {
    "total_plans": 245,
    "plans_with_pa": 12,
    "plans_with_st": 5,
    "plans_with_ql": 89
  },
  "coverage": [
    {
      "plan_id": "12345CA0010001",
      "drug_tier": "GENERIC",
      "prior_authorization": false,
      "step_therapy": false,
      "quantity_limit": true,
      "marketing_name": "Blue Shield Gold",
      "issuer_name": "Blue Shield of California",
      "copay_amount": 10.00,
      "coinsurance_rate": 0.20
    }
  ]
}

Data Coverage

Aspect

Coverage

Plans

~5,500 ACA marketplace plans

Issuers

~150 insurance companies

Drugs

~13,000 unique medications

Templates

~800 unique formulary templates

States

15+ states

Data

Tier, PA, step therapy, quantity limits

Data Source

Data is sourced from the CMS QHP (Qualified Health Plan) Provider & Formulary APIs:

Note: This covers ACA marketplace plans only. Employer-sponsored and Medicare Advantage plans are not included.

License

MIT

References

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/openpharma-org/formulary-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server