> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rcintell.com/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP tools reference

> MCP tools map 1:1 to REST. Use this index, then the REST guides for parameters.

Every MCP tool calls a `/v1` route with the same API key. Parameter detail is in **API Reference** and the Guides linked below.

| Tool                                                            | REST                                     | Guide                                          |
| --------------------------------------------------------------- | ---------------------------------------- | ---------------------------------------------- |
| `resolve_knowledge`                                             | `POST /v1/knowledge/resolve`             | [Resolve](/docs/knowledge/resolve)             |
| `calculate_payment`                                             | `POST /v1/knowledge/payment-calc`        | [Payment calc](/docs/knowledge/payment-calc)   |
| `get_billing_guide`                                             | `POST /v1/knowledge/billing-guide`       | [Billing guide](/docs/knowledge/billing-guide) |
| `lookup_policy`                                                 | `GET /v1/policies`                       | [Payer policies](/docs/policies)               |
| `list_policy_changes`                                           | `GET /v1/policies/changes`               | [Payer policies](/docs/policies)               |
| `resolve_340b_restrictions`                                     | `GET /v1/340b/restrictions/resolve`      | [340B](/docs/policy-340b)                      |
| `list_340b_manufacturers`                                       | `GET /v1/340b/manufacturers`             | [340B](/docs/policy-340b)                      |
| `get_340b_manufacturer_policy`                                  | `GET /v1/340b/manufacturers/{id}/policy` | [340B](/docs/policy-340b)                      |
| `list_340b_changes`                                             | `GET /v1/340b/changes`                   | [340B](/docs/policy-340b)                      |
| `check_pa_required`                                             | `GET /v1/prior-auth/check`               | [Prior authorization](/docs/prior-auth)        |
| `check_encounter`                                               | `POST /v1/encounter/check`               | [Encounter check](/docs/encounter)             |
| `lookup_mpfs` / `lookup_opps` / `lookup_dme` / `lookup_lab_fee` | `/v1/fee-schedules/...`                  | [Fee schedules](/docs/fee-schedules)           |
| `research_code`                                                 | `POST /v1/agents/code-research`          | [Agents](/docs/agents/overview)                |
| `check_medical_necessity`                                       | `POST /v1/agents/medical-necessity`      | [Agents](/docs/agents/overview)                |
| `resolve_denial`                                                | `POST /v1/agents/denial-resolution`      | [Agents](/docs/agents/overview)                |
| `search_npi` / `get_npi`                                        | `/v1/npi/...`                            | [NPI](/docs/knowledge/npi-search)              |
| `check_ncci_mue` / `check_ncci_ptp` / `check_ncci_aoc`          | `/v1/ncci/...`                           | [NCCI](/docs/knowledge/ncci)                   |

Core tool parameters are below. The rest of the catalog (IPPS, Medi-Cal APR-DRG, implants, dataset snapshots) is in API Reference.

## resolve\_knowledge

Resolves the full L1-L6 knowledge stack for a facility and optional service.

### Parameters

| Parameter      | Type      | Required | Description                                                                                                                      |
| -------------- | --------- | -------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `ccn`          | string    | Yes      | 6-digit Medicare Provider Number                                                                                                 |
| `lines`        | object\[] | No       | Claim lines `{code, modifier?, units?, place_of_service?}`. Same shape as `calculate_claim_payment`. Authoritative when present. |
| `dx`           | string\[] | No       | ICD-10-CM diagnosis codes                                                                                                        |
| `cpt`          | string    | No       | Single CPT/HCPCS (legacy). Ignored when `lines` is sent.                                                                         |
| `payer`        | string    | No       | Payer name (defaults to Medicare)                                                                                                |
| `care_setting` | string    | No       | Care setting: inpatient, outpatient, office, etc.                                                                                |

### Returns

L1–L4 always; first-line L5/L6 in `layers` + `payment_estimate`; per-line `lines[].l5`/`l6`/`coverage`; `dx`; NCCI PTP in `ncci_conflicts` / `ncci_clean`.

***

## calculate\_payment

Calculates expected Medicare payment using MPFS methodology.

### Parameters

| Parameter  | Type   | Required | Description                      |
| ---------- | ------ | -------- | -------------------------------- |
| `ccn`      | string | Yes      | 6-digit Medicare Provider Number |
| `cpt`      | string | Yes      | CPT procedure code               |
| `modifier` | string | No       | CPT modifier                     |
| `payer`    | string | No       | Payer (defaults to Medicare)     |

### Returns

Estimated payment amount with full breakdown: Work RVU, PE RVU, MP RVU, GPCI adjustments, conversion factor, and facility/non-facility indicator.

***

## get\_billing\_guide

Returns billing guidelines for a facility and service combination.

### Parameters

| Parameter | Type   | Required | Description                      |
| --------- | ------ | -------- | -------------------------------- |
| `ccn`     | string | Yes      | 6-digit Medicare Provider Number |
| `cpt`     | string | Yes      | CPT procedure code               |
| `payer`   | string | No       | Payer name                       |

### Returns

Billing form (CMS-1500 vs UB-04), type of bill codes, modifier requirements, consolidated billing rules, and any warnings or exceptions.

***

## research\_code

Submits a billing code research query to the AI agent. This is an async operation — the tool returns when the agent completes its research.

### Parameters

| Parameter    | Type   | Required | Description                         |
| ------------ | ------ | -------- | ----------------------------------- |
| `query`      | string | Yes      | The code research question          |
| `cpt_code`   | string | No       | Specific CPT code to research       |
| `hcpcs_code` | string | No       | Specific HCPCS code to research     |
| `ccn`        | string | No       | Facility CCN for context enrichment |

### Returns

Structured code research results including code description, documentation requirements, common modifiers, and billing guidance.

***

## resolve\_denial

Analyzes denial codes and generates appeal strategies.

### Parameters

| Parameter     | Type   | Required | Description                           |
| ------------- | ------ | -------- | ------------------------------------- |
| `query`       | string | Yes      | Description of the denial or question |
| `carc`        | string | No       | Claim Adjustment Reason Code          |
| `rarc`        | string | No       | Remittance Advice Remark Code         |
| `denial_code` | string | No       | Denial reason code                    |
| `ccn`         | string | No       | Facility CCN for payer context        |

### Returns

Denial analysis with CARC/RARC interpretation, payer-specific appeal deadlines, recommended actions, and appeal strategy.

***

## search\_payer

Searches `GET /v1/payers/search` (or lists by `state`), then loads `GET /v1/payers/{slug}` for the first match.

### Parameters

| Parameter    | Type   | Required | Description                                                              |
| ------------ | ------ | -------- | ------------------------------------------------------------------------ |
| `payer_name` | string | Yes      | Payer name or alias (e.g., "Cigna", "BCBS", "UHC")                       |
| `state`      | string | No       | Two-letter state — lists the directory for that state, then name-filters |

### Returns

`matches` from the directory plus `payer` profile (filing, appeals) when a slug is found.

***

## check\_medical\_necessity

Validates medical necessity for a procedure.

### Parameters

| Parameter        | Type   | Required | Description                                 |
| ---------------- | ------ | -------- | ------------------------------------------- |
| `cpt_code`       | string | Yes      | CPT code to evaluate                        |
| `dx_codes`       | array  | No       | ICD-10 diagnosis codes supporting necessity |
| `clinical_notes` | string | No       | Relevant clinical notes excerpt             |
| `ccn`            | string | No       | Facility CCN for context                    |

### Returns

Medical necessity assessment with supporting evidence, NCD/LCD references, documentation requirements, and risk level.

***

## lookup\_policy

Cited payer policy for a code, with geographic versioning.

### Parameters

| Parameter   | Type   | Required | Description                                              |
| ----------- | ------ | -------- | -------------------------------------------------------- |
| `payer`     | string | Yes      | Payer slug (`medicare_ffs`, `uhc`, …)                    |
| `code`      | string | No       | CPT/HCPCS                                                |
| `state`     | string | No       | US state. MA and NY share Medicare MAC JK                |
| `plan_type` | string | No       | `ffs` / `medicare_advantage` / `medicaid` / `commercial` |
| `scope`     | string | No       | `general` = national only                                |
| `as_of`     | string | No       | YYYY-MM-DD                                               |

### Returns

`geo_scope`, `geo_codes`, `mac_jurisdiction`, `document_version` per row, plus `policy_type`, `codes_covered`, `codes_not_covered`, `icd10`, `delegated_entity` when `mart_policy_document` has them. Maps to `GET /v1/policies`.
