> ## 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.

# Authentication

> Test keys vs production keys — X-API-Key only

All RCIntel API endpoints (except health checks and the public payer directory) require an API key in the `X-API-Key` header. This is not a Bearer token.

```bash theme={null}
curl https://api-dev.rcintell.com/v1/knowledge/resolve \
  -H "X-API-Key: kp_test_..." \
  -H "Content-Type: application/json" \
  -d '{"ccn":"170001","cpt":"99213","payer":"Medicare"}'
```

## Key types (Stedi-style)

| Type           | Prefix     | Host                           | How you get it                                                                                     |
| -------------- | ---------- | ------------------------------ | -------------------------------------------------------------------------------------------------- |
| **Test**       | `kp_test_` | `https://api-dev.rcintell.com` | [Sign up](https://rcintell.com/signup) or the [playground](https://rcintell.com/playground) (free) |
| **Production** | `kp_live_` | `https://api.rcintell.com`     | Upgrade / pay-as-you-go, then mint a production key                                                |

Test keys are **rejected** on production. Production keys are **rejected** on the test API.

The playground never puts a live key in the browser. It mints a `kp_test_` key server-side.

## MCP

Same credential as REST:

```json theme={null}
{
  "mcpServers": {
    "rcintel": {
      "url": "https://api-dev.rcintell.com/v1/mcp",
      "headers": { "X-API-Key": "kp_test_..." }
    }
  }
}
```

Production MCP: `https://api.rcintell.com/v1/mcp` with `kp_live_`.
