Install Guardian

Connect Guardian to your AI tools

Guardian runs in two places — in your coding agent (Claude Code, Claude Desktop, Codex) as 23 MCP tools, and in your chat apps (WhatsApp, Telegram, Discord, Slack) via OpenClaw. Same data room, same compliance intelligence.

One click · Claude Desktop

Download the desktop extension

Download the guardian.dxt file and double-click it. Claude Desktop handles the pip install, prompts you for your token, and wires up the MCP server. No terminal.

Download guardian.dxt
Requires Claude Desktop 0.9+ with Extensions enabled (Settings → Extensions → Developer mode).
CLI path · 60 seconds

Let your agent install it

Paste this one line to your Claude Code or Codex session. The agent fetches the install instructions, configures your client, and verifies the connection.

Install Guardian MCP by following https://guardiancompliance.app/AGENTS.md
Agent's workspace blocks URL fetch?

Enterprise workspaces often have a domain allowlist. Paste this zero-fetch command instead — replace the token with one from /connect.

bash
pip install "compliance-os[agent]" && \ GUARDIAN_TOKEN="gdn_oc_YOUR_TOKEN" \ GUARDIAN_API_URL="https://guardiancompliance.app" \ guardian-mcp install --auto

Or paste the full AGENTS.md content into your chat so the agent can follow it without fetching.

Manual path

Three steps, by hand

1

Install the Python package

Requires Python 3.11+. Use whichever env manager you already have.

bash
pip install "compliance-os[agent]"
2

Get your auth token

Open guardiancompliance.app/connect, sign in, click Generate token. The token starts with gdn_oc_.

Skip this step if you're running Guardian locally on localhost:8000 — an empty token auto-auths via the dev JWT flow.

3

Write the config

Easiest — use the installer:

bash
GUARDIAN_TOKEN="gdn_oc_YOUR_TOKEN" \ guardian-mcp install --auto

…or edit the config file yourself. Pick your host:

Anthropic CLI — edit ~/.claude/settings.json
json
{ "mcpServers": { "guardian": { "command": "/ABSOLUTE/PATH/TO/PYTHON", "args": ["-m", "compliance_os.mcp_server"], "env": { "GUARDIAN_API_URL": "https://guardiancompliance.app", "GUARDIAN_TOKEN": "gdn_oc_YOUR_TOKEN" } } } }

Replace /ABSOLUTE/PATH/TO/PYTHON with the path from python -c "import sys; print(sys.executable)".

4. Verify

Restart your app (fully quit Claude Desktop; re-run the CLI). Then ask:

"What's my Guardian compliance status?"

If you see a formatted summary — you're done. If the tool isn't listed, your config didn't load. If it errors "Cannot reach Guardian API", re-check the token and URL.

What you get · 23 tools

Compliance context
guardian_status
guardian_deadlines
guardian_risks
guardian_documents
guardian_ask
Case templates
case_active_search
h1b_active_search
cpa_active_search
Documents
parse_document
classify_document
upload_document
batch_upload
query_documents
index_documents
Forms & Gmail
generate_form_8843
run_compliance_check
get_filing_guidance
gmail_search / read / draft
gmail_send / reply / download_attachment
Chat · OpenClaw

Guardian in WhatsApp, Telegram, Discord, Slack

OpenClaw is a router that exposes Guardian as a chat skill, so your clients can message in plain language from any platform they already use. Best for status checks, deadline reminders, and quick questions — no app install.

Ask naturally

"Check my compliance status"
"When are my deadlines?"
"Do I need to file FBAR?"
"What documents have I uploaded?"
"When is my I-20 expiring?"
"Show me my active findings"

Set up in 30 seconds

1
Install OpenClaw

If you don't have OpenClaw yet, install from openclaw.io and link it to the chat app(s) you already use.

2
Install the Guardian skill
bash
openclaw skills install guardian-compliance
3
Paste your token

Get a token from guardiancompliance.app/connect (same one you'd use for MCP — they're scoped identically), then paste it when OpenClaw prompts, or set it in your skill settings as GUARDIAN_TOKEN.

4
Say hi

Message "guardian status" in any chat where you've linked OpenClaw — you should see a compliance summary within a few seconds.

Tokens are scoped read+write on your data room. Revoke anytime at /connect (hit Rotate token).