Documentation Index
Fetch the complete documentation index at: https://docs.complyhat.ai/llms.txt
Use this file to discover all available pages before exploring further.
ComplyHat exposes 14 entity tools and one guidance tool through a single MCP endpoint at https://complyhat.ai/api/mcp (streamable-HTTP). Every entity tool dispatches on a mode discriminator, so one tool name covers all CRUD-style operations for that entity — your host sends a single JSON call and ComplyHat routes it to the correct atomic op. Per-mode strict input validation runs before any handler is invoked.
Tool names are snake_case as registered in the MCP protocol. Host UIs may display them in camelCase or Title Case, but the wire-level name is what appears below.
The canonical MCP endpoint is https://complyhat.ai/api/mcp (streamable-HTTP). A legacy SSE endpoint at /api/mcp/sse is also available but deprecates mid-2026. Use the canonical endpoint for new integrations.
adversarial
Adversarial robustness findings submitted by host agents and surfaced for review.
ComplyHat does not generate attacks. Your host agent produces findings and submits them; ComplyHat stores and surfaces them through this tool.
| Mode | Description |
|---|
list_by_model | List adversarial findings for a model. |
get | Get one finding by ID. |
submit | Submit a new adversarial finding. |
{
"tool": "adversarial",
"arguments": { "mode": "list_by_model", "model_id": "mdl_..." }
}
{
"tool": "adversarial",
"arguments": {
"mode": "submit",
"model_id": "mdl_...",
"attack_type": "prompt_injection",
"severity": "high",
"details": { "vector": "...", "impact": "..." }
}
}
Requires adversarial:read to list or get, and adversarial:write to submit. See OAuth scopes for details.
alerts
Compliance alerts and the rules that trigger them.
| Mode | Description |
|---|
list | List alerts for the organization. |
get | Get one alert by ID. |
update | Update alert state (acknowledge, resolve). |
rules_list | List alert rules. |
rules_create | Create a new alert rule. |
{
"tool": "alerts",
"arguments": { "mode": "list", "limit": 50 }
}
{
"tool": "alerts",
"arguments": { "mode": "update", "alert_id": "alr_...", "state": "acknowledged" }
}
audit_events
Append-only audit trail for every compliance-relevant action. Every mutating op in ComplyHat automatically emits an audit event server-side; use this tool to query or supplement the trail from your host.
| Mode | Description |
|---|
list | List audit events with filters. |
get | Get one audit event by ID. |
emit | Emit a new audit event from the host agent. |
{
"tool": "audit_events",
"arguments": {
"mode": "emit",
"action": "model_card.reviewed",
"details": { "reviewer": "alice@example.com" }
}
}
{
"tool": "audit_events",
"arguments": { "mode": "list", "limit": 100 }
}
Requires audit:read to list or get, and audit:write to emit. See OAuth scopes.
bias_tests
Bias and fairness tests against registered models, plus their schedules.
| Mode | Description |
|---|
list | List bias tests for a model. |
get | Get one test result by ID. |
run | Run a bias test against a model and dataset. |
list_schedules | List recurring bias test schedules. |
create_schedule | Create a recurring bias test schedule. |
{
"tool": "bias_tests",
"arguments": {
"mode": "run",
"model_id": "mdl_...",
"dataset_id": "ds_...",
"framework": "nyc-ll144",
"test_types": ["disparate_impact", "statistical_parity"]
}
}
{
"tool": "bias_tests",
"arguments": {
"mode": "create_schedule",
"model_id": "mdl_...",
"framework": "eu-ai-act",
"cron": "0 2 * * *"
}
}
Requires bias-test:read to list or get, and bias-test:write to run or schedule. See the bias testing guide for a step-by-step walkthrough.
data_governance
Data sources, consent records, and data lineage entries.
| Mode | Description |
|---|
sources_list | List data sources. |
sources_create | Register a new data source. |
consent_list | List consent records. |
consent_create | Record a new consent grant. |
lineage_list | List data lineage entries. |
lineage_create | Create a data lineage entry. |
{
"tool": "data_governance",
"arguments": { "mode": "sources_list" }
}
{
"tool": "data_governance",
"arguments": {
"mode": "sources_create",
"name": "hiring-dataset-2025",
"type": "training",
"description": "Anonymized résumé dataset used to train fraud-detector-v2."
}
}
drift
Drift monitors, status checks, alert history, and snapshot ingestion.
| Mode | Description |
|---|
monitors_list | List drift monitors. |
monitors_create | Create a drift monitor for a model. |
monitors_status | Get the current status of a monitor. |
alerts_list_by_model | List drift alerts for a model. |
snapshots_list | List drift snapshots for a monitor. |
snapshots_submit | Submit a new drift snapshot from the host. |
{
"tool": "drift",
"arguments": { "mode": "monitors_status", "monitor_id": "mon_..." }
}
{
"tool": "drift",
"arguments": {
"mode": "snapshots_submit",
"monitor_id": "mon_...",
"features": { "age_mean": 34.2, "income_stddev": 12400 }
}
}
Requires drift:read to read monitors and snapshots, and drift:write to create monitors or submit snapshots. See the drift monitoring guide.
explainability
Explainability runs (LIME with intercept and coalition-attribution proxy) against registered models. See methodology for what these methods compute and their limitations.
| Mode | Description |
|---|
list_by_model | List explainability runs for a model. |
get | Get one run’s results. |
run | Trigger a new explainability run. |
{
"tool": "explainability",
"arguments": { "mode": "run", "model_id": "mdl_...", "method": "lime" }
}
{
"tool": "explainability",
"arguments": { "mode": "list_by_model", "model_id": "mdl_..." }
}
Requires explainability:read to list or get, and explainability:write to trigger runs.
frameworks
Regulatory framework status, gap analysis, and applicability checks.
| Mode | Description |
|---|
status | Overall framework coverage status for the organization. |
gaps | Gaps between current state and framework requirements. |
check | Check whether a framework applies to a given model or use case. |
{
"tool": "frameworks",
"arguments": { "mode": "status" }
}
{
"tool": "frameworks",
"arguments": {
"mode": "check",
"model_id": "mdl_...",
"framework": "eu-ai-act"
}
}
Requires frameworks:read. See supported frameworks for the full list of framework slugs.
model_cards
Model cards rendered as structured, audit-tagged documents.
| Mode | Description |
|---|
list | List model cards. |
get | Get one model card by ID. |
create | Create a model card from a model registration. |
update | Update an existing model card. |
{
"tool": "model_cards",
"arguments": { "mode": "create", "model_id": "mdl_..." }
}
{
"tool": "model_cards",
"arguments": {
"mode": "update",
"card_id": "mcd_...",
"sections": { "limitations": "Updated after Q2 bias audit." }
}
}
Prose fields returned by create and update are prefixed [EXTRACTED], [INFERRED], or [AMBIGUOUS] so reviewers can distinguish what the source documents state from what was inferred. Requires models:read to list or get, and models:write to create or update.
models
The model registry — the root entity most other tools reference.
| Mode | Description |
|---|
list | List registered models. |
get | Get one model by ID. |
register | Register a new model. |
update | Update model metadata or status. |
{
"tool": "models",
"arguments": {
"mode": "register",
"name": "fraud-detector-v2",
"version": "2.0.0"
}
}
{
"tool": "models",
"arguments": { "mode": "list" }
}
Register a model first — nearly every other tool takes a model_id returned from this tool. See the register a model guide.
Requires models:read to list or get, and models:write to register or update.
obligations
Per-framework regulatory obligations and how they map to your models.
| Mode | Description |
|---|
list | List obligations across frameworks. |
get | Get one obligation by ID. |
list_by_model | List obligations applicable to a specific model. |
assess | Assess whether a model satisfies a given obligation. |
{
"tool": "obligations",
"arguments": { "mode": "list_by_model", "model_id": "mdl_..." }
}
{
"tool": "obligations",
"arguments": {
"mode": "assess",
"model_id": "mdl_...",
"obligation_id": "obl_..."
}
}
Requires frameworks:read.
reg_intel
Regulatory intelligence: framework changes, deadlines, and relevance scoring.
| Mode | Description |
|---|
changes | List recent regulatory changes. |
deadlines | Upcoming compliance deadlines. |
relevance | Relevance scoring of changes against your models. |
change_detail | Full detail for one regulatory change. |
{
"tool": "reg_intel",
"arguments": { "mode": "deadlines" }
}
{
"tool": "reg_intel",
"arguments": {
"mode": "relevance",
"model_id": "mdl_..."
}
}
Requires frameworks:read.
reports
Compliance reports and their PDF binary downloads.
| Mode | Description |
|---|
list | List generated reports. |
get | Get report metadata and structured content. |
get_pdf_url | Get a signed URL for the report PDF. |
generate | Generate a new report for a model and framework. |
{
"tool": "reports",
"arguments": {
"mode": "generate",
"model_id": "mdl_...",
"framework": "eu-ai-act"
}
}
{
"tool": "reports",
"arguments": { "mode": "get_pdf_url", "report_id": "rpt_..." }
}
Requires models:read to list or get, and models:write to generate. See the generate a report guide.
wiki
Per-tenant compliance wiki backing every report and citation.
| Mode | Description |
|---|
list | List wiki pages. |
read | Read one wiki page. |
write | Write or update a wiki page. |
search | Lexical or semantic search across wiki pages. |
link | Create a wiki link between pages. |
draft_from_finding | Draft a wiki page from a compliance finding. |
log_list | List immutable wiki audit log entries. |
lint | Lint a wiki page for structural and content issues. |
archive | Archive a wiki page. |
{
"tool": "wiki",
"arguments": {
"mode": "search",
"query": "disparate impact threshold",
"search_mode": "lexical"
}
}
{
"tool": "wiki",
"arguments": {
"mode": "write",
"slug": "bias-thresholds-nyc-ll144",
"title": "NYC LL 144 bias thresholds",
"body": "..."
}
}
wiki.write and wiki.search accept host-supplied embeddings in pgvector wire format ([v1,v2,...]). ComplyHat never generates embeddings — your host provides them.
Requires kg:read to read or search, and kg:write to write or archive. See the compliance wiki guide.
guidance
The guidance tool returns the canonical SKILL.md body for any auditor agent or skill. The same content is also exposed as MCP resources at complyhat://{kind}/{slug} for hosts that respect the resource auto-include heuristic.
| Argument | Type | Description |
|---|
kind | "skills" or "agents" | Resource namespace. |
slug | string | Skill or agent slug. |
{
"tool": "guidance",
"arguments": { "kind": "agents", "slug": "bias-tester" }
}
{
"tool": "guidance",
"arguments": { "kind": "skills", "slug": "bias-test-prep" }
}
The tool reads canonical files from the ComplyHat repository at agents/<slug>/SKILL.md and skills/<slug>/SKILL.md. See built-in auditor agents for the full list of agent and skill slugs.