self-hosted · on-prem · your models

Mandate

The self-hosted agent platform for teams. Your hardware, your models, your identity provider — with governance on everything an agent can touch.

The platform

Mandate is a web-based agent workspace. Users chat with models that can read and write files, run shell commands, search the web, and call tools over MCP — each user in their own isolated workspace, with memory, artifacts, and scheduled tasks.

It ships as a single Docker container, or a NixOS module, with Postgres underneath. Point it at any OpenAI-compatible model server — llama.cpp, llama-swap, vLLM — or an Azure OpenAI deployment. There is no cloud dependency: the platform, the data, and the models all stay on your infrastructure.

On your hardware

One container, one Postgres. No per-seat cloud fees, no data leaving your network, no lock-in on the runtime.

Your models

Local models or Azure OpenAI behind a single endpoint. Per-user model allowlists keep each team on the models it is approved for.

Your identity

Single sign-on over OIDC. Microsoft Entra ID is the flagship; Okta, Keycloak, and Auth0 work too. SSO groups map straight onto permission groups.

Governance by default

Per-user and per-group tool permissions — files, shell, web, memory, MCP. Scoped MCP servers and skills, per-user workspaces, admin-managed settings.

Extensible

MCP servers scoped globally, per group, or per user — each with its own approval level. Skills in the open SKILL.md format, with personal overrides of shared ones.

Built to operate

Headless scheduled agent runs with per-task permission overrides, private web search, scheduled backups to disk or S3, and rate limits tuned for enterprise NAT.

A tour

The workspace: chat, tools, and model selection in one pane.
Users: accounts, roles, model allowlists, managed settings.
Groups: membership and the tool-permission defaults they inherit.
MCP servers: scoped per user, group, or everyone, with live status.
Skills: shared and personal, with per-user shadowing.
Settings: per-user controls, admin-managed where it matters.

Click any screenshot to view it full size — arrow keys step through the tour, Esc closes.

Pricing

B2B only. Every plan is self-hosted on your infrastructure — there is no hosted option and no free tier. Start with a 30-day, fully-featured trial; no credit card.

Team

$99/mo per instance

or $790/yr

  • Unlimited users
  • SSO (Entra ID / OIDC) and groups
  • Scoped MCP servers and skills
  • Local models or Azure OpenAI
  • Scheduled tasks and backups

Business

$299/mo per instance

or $2,390/yr

  • Everything in Team
  • Audit logs
  • SLA and priority support
  • White-label

Prefer to buy out? A perpetual license is available at 2× the annual price.

Deploy

1. Run it. docker compose up: one app container, Postgres, and an optional private SearXNG search service. A NixOS module is included for NixOS shops.

2. Point it at your models. Set OPENAI_SERVER_URL to any OpenAI-compatible server — llama.cpp, llama-swap, vLLM — or an Azure OpenAI endpoint.

3. Connect your identity provider. Configure OIDC (Entra ID, Okta, Keycloak, Auth0) and map SSO groups onto permission groups.

Requirements: any OpenAI-compatible model endpoint, and a GPU if you are running local models.

Contact

Trials are self-serve: email us, we set up credentials, and you have 30 days to poke at it.