Authentication
The MCP server supports both auth modes the Contree API exposes — the same twocontree-cli recognises:
- IAM (recommended). Token + Project header. Sends
Authorization: Bearer <iam-token>andProject: <project-id>. Default URL:https://api.tokenfactory.nebius.com/sandboxes. Use this for new deployments; the standardNEBIUS_API_KEY/NEBIUS_AI_PROJECTenv vars are honoured. - JWT (legacy). Token only. Sends
Authorization: Bearer <jwt-token>. Used by thecontree.devPoC deployment. No project required.
type = iam | jwt line picks the scheme; the client class
that issues backend requests is wired accordingly at startup.
Profile File (Recommended)
contree-mcp reads the same profile file that
contree-cli
writes, so a single login covers both tools. Install the CLI and run
contree auth:
~/.config/contree/auth.ini with mode 0600. Override
the directory with CONTREE_HOME.
The file is INI-format with one [profile:<name>] section per
credential set and a [DEFAULT] profile = <name> line selecting the
active profile:
contree auth switch <name>, or
per-invocation with --profile <name> / CONTREE_PROFILE=<name>.
type = iam requires project; type = jwt does not.
Environment Variables (Per-Invocation Overrides)
For one-off overrides without touching the profile file:Precedence (important)
Field-by-field, highest first:- CLI flags —
--token,--project,--url,--profile. CONTREE_*env vars —CONTREE_TOKEN/CONTREE_PROJECT/CONTREE_URL/CONTREE_PROFILE. MCP-specific; always layered on top of the profile.NEBIUS_*env vars —NEBIUS_API_KEY+NEBIUS_AI_PROJECT, recognised only when both are set (a complete IAM credential). A loneNEBIUS_API_KEYset ambiently for the Nebius SDK or terraform provider is ignored, and the MCP server logs aninfoline explaining why.- Active profile from
auth.ini. Picked by, in order,--profile→CONTREE_PROFILE→ the file’s[DEFAULT] profile = ....
contree-mcp(no args) loads the active profile, even if your shell hasNEBIUS_API_KEYset for other tools.CONTREE_TOKEN=NEW contree-mcprotates the token but reuses the profile’sprojectandurl— handy for short-lived tokens.contree-mcp --token X --project Ypopulates token + project from the CLI;urlandauth_typestill come from the loaded profile unless--url/--auth-typeare also supplied.- With no profile loaded and an incomplete
CONTREE_TOKEN/--token, the server stops with “No API token configured” rather than running with half-set credentials.
* NEBIUS_* are read only when both are set.
Tokens passed via env may appear in process listings — prefer the
profile file for routine use.
Server Options
Cache Configuration
Client Configuration Examples
With credentials stored in~/.config/contree/auth.ini, MCP client
configs are minimal:
Claude Code
HTTP Mode
For network access from other machines:http://localhost:9452/ for interactive documentation with setup guides, tool reference, and best practices.

The HTTP interface showing Setup, Instructions, Tools, Resources, and Guides tabs.