---
title: Headers Reference
slug: litmus-mcp-server/headers-reference
docTags: 
createdAt: 2026-05-11T21:45:40.203Z
---

# Headers Reference

The Litmus MCP server is stateless. Every tool call reads its credentials from the request headers (SSE mode) or environment variables (STDIO mode). This page documents every header the server understands.

## Litmus Edge (REST / SDK)

Required for almost every tool except a few system-only ones.

| Header                   | Required | Description                               |
| ------------------------ | -------- | ----------------------------------------- |
| `EDGE_URL`               | yes      | Litmus Edge base URL. Include `https://`. |
| `EDGE_API_CLIENT_ID`     | yes      | OAuth2 client ID issued by Litmus Edge.   |
| `EDGE_API_CLIENT_SECRET` | yes      | OAuth2 client secret.                     |

Generate the client credentials under **Litmus Edge -> System -> Access Control**.

## NATS (live values)

Used by `get_current_value_from_topic` and `get_multiple_values_from_topic`.

| Header          | Required | Default | Description                                                        |
| --------------- | -------- | ------- | ------------------------------------------------------------------ |
| `NATS_SOURCE`   | yes      |         | Litmus Edge IP, **no** scheme prefix.                              |
| `NATS_PORT`     | no       | `4222`  | NATS broker port.                                                  |
| `NATS_USER`     | yes      |         | Access token username from **System -> Access Control -> Tokens**. |
| `NATS_PASSWORD` | yes      |         | Access token value.                                                |
| `NATS_TLS`      | no       | `true`  | Set to `false` to disable TLS.                                     |

## InfluxDB (time series)

Used by every `**`-marked InfluxDB tool (`get_historical_data_from_influxdb`, `list_influxdb_measurements`, `get_device_historical_data`, `query_tag_data`, `get_tag_statistics`, `get_device_data_for_inference`, `get_device_connection_status`).

| Header            | Required | Default  | Description                           |
| ----------------- | -------- | -------- | ------------------------------------- |
| `INFLUX_HOST`     | yes      |          | Litmus Edge IP, **no** scheme prefix. |
| `INFLUX_PORT`     | no       | `8086`   | InfluxDB port.                        |
| `INFLUX_DB_NAME`  | no       | `tsdata` | Database name.                        |
| `INFLUX_USERNAME` | yes      |          | DataHub user.                         |
| `INFLUX_PASSWORD` | yes      |          | DataHub password.                     |

Allow port `8086/TCP` in **Litmus Edge -> System -> Network -> Firewall**.

## Litmus Edge Manager (LEM)

Used by every `lem_*` tool. LEM tools talk to a cloud Edge Manager tenant rather than an edge.

| Header                    | Required | Default                        | Description                                                              |
| ------------------------- | -------- | ------------------------------ | ------------------------------------------------------------------------ |
| `EDGE_MANAGER_URL`        | yes      |                                | LEM base URL. Include `https://`.                                        |
| `EDGE_API_TOKEN`          | yes      |                                | API token issued by LEM.                                                 |
| `EDGE_MANAGER_PROJECT_ID` | no       |                                | Default project id, used when a tool's `project_id` argument is omitted. |
| `EDGE_MANAGER_ADMIN_URL`  | no       | `<EDGE_MANAGER_URL host>:8446` | Admin URL.                                                               |
| `VALIDATE_CERTIFICATE`    | no       | `false`                        | `true` to verify TLS certs on the LEM bridge.                            |

The `lem_bridge_*` tools additionally tunnel through LEM to a specific edge and require both `project_id` and `device_id` as call arguments. They do **not** switch the active edge instance.

## STDIO mode

When the server runs in STDIO mode (`ENABLE_STDIO=true`), the same names are read from the process environment instead of HTTP headers. Pass them through your MCP client's `env` block. See [Claude Desktop (STDIO)](#).

## Header configuration guide

- `EDGE_URL`: include `https://`.
- `EDGE_API_CLIENT_ID` / `EDGE_API_CLIENT_SECRET`: OAuth2 credentials from Litmus Edge.
- `NATS_SOURCE`: IP only, no `http`/`https`.
- `NATS_USER` / `NATS_PASSWORD`: token credentials from **System -> Access Control -> Tokens**.
- `INFLUX_HOST`: IP only, no `http`/`https`.
- `INFLUX_USERNAME` / `INFLUX_PASSWORD`: DataHub user credentials.
