Intelligence API
Part of CLPI Phase 3: Intelligence Layer. The Intelligence API provides fault line analysis, risk forecasting, and policy recommendations.
https://api.mnemom.ai/v1
Authentication
All intelligence endpoints require API key authentication.| Endpoint | Auth Required | Notes |
|---|---|---|
POST /v1/teams/fault-lines | API key | Analyze team fault lines |
POST /v1/teams/forecast | API key | Forecast team risks |
POST /v1/teams/recommend-policy | API key | Generate policy recommendation |
POST /v1/transactions | API key | Create transaction with guardrails |
GET /v1/transactions/{id} | API key | Get transaction details |
DELETE /v1/transactions/{id} | API key | Delete transaction |
Authorization header:
POST /v1/api-keys.
Rate limits
| Endpoint | Rate Limit | Window |
|---|---|---|
POST /teams/fault-lines | 10 requests | per minute |
POST /teams/forecast | 10 requests | per minute |
POST /teams/recommend-policy | 10 requests | per minute |
| Transaction endpoints | 30 requests | per minute |
429 with a Retry-After header.
LLM-powered endpoints (
recommend-policy, forecast) have lower limits due to compute cost.Endpoints
POST /v1/teams/fault-lines
Analyze fault lines in a team’s configuration — value conflicts, capability gaps, and agent incompatibilities. Request body:| Field | Type | Required | Description |
|---|---|---|---|
team_id | string | Yes | Team identifier |
200 OK
| Field | Type | Description |
|---|---|---|
team_id | string | Team identifier |
analysis_id | string | Unique identifier for this analysis (used as input to /forecast) |
fleet_score | number | Overall fleet alignment score (0.0 — 1.0) |
fault_lines | array | List of detected fault lines |
alignments | array | List of structural fault line alignments (compound fault lines that consistently split the same agents) |
summary | object | Aggregate counts by classification and severity |
| Field | Type | Description |
|---|---|---|
id | string | Unique fault line identifier |
value | string | The value or capability where the fault line exists |
classification | string | Fault line classification (see below) |
severity | string | Severity level: low, medium, high, or critical |
agents_declaring | string[] | Agents that declare this value |
agents_missing | string[] | Agents that are missing this value |
agents_conflicting | string[] | Agents with conflicting definitions of this value |
impact_score | number | Estimated impact on team operations (0.0 — 1.0) |
resolution_hint | string | Suggested action to resolve the fault line |
affects_capabilities | string[] | Capabilities affected by this fault line |
| Value | Description |
|---|---|
resolvable | The fault line can be automatically resolved by adjusting agent configurations |
priority_mismatch | Agents have the same value but with different priority levels |
incompatible | Agents have fundamentally conflicting values that cannot be automatically reconciled |
complementary | Value divergence appears intentional given agent specializations — may be a feature of the team architecture |
| Level | Description |
|---|---|
low | Minor misalignment, unlikely to cause operational issues |
medium | Moderate misalignment that may affect coordination under certain conditions |
high | Significant misalignment that will likely cause issues in production |
critical | Severe conflict that requires immediate resolution before deployment |
| Field | Type | Description |
|---|---|---|
total | number | Total number of detected fault lines |
resolvable | number | Count of resolvable fault lines |
priority_mismatch | number | Count of priority_mismatch fault lines |
incompatible | number | Count of incompatible fault lines |
critical_count | number | Count of fault lines with critical severity |
| Field | Type | Description |
|---|---|---|
id | string | Unique alignment identifier |
fault_line_ids | string[] | IDs of the individual fault lines that form this structural fault line |
minority_agents | string[] | Agents on the smaller side of the divide |
majority_agents | string[] | Agents on the larger side of the divide |
alignment_score | number | Strength of the structural alignment (0.0 — 1.0); higher means the same agents are consistently isolated across multiple fault lines |
severity | string | Severity level: low, medium, high, or critical |
description | string | Human-readable summary of the structural fault line |
The fault line analysis is grounded in the
checkFleetFaultLines function from @mnemom/agent-alignment-protocol. The same analysis is reproducible locally without the API.| Status | Meaning |
|---|---|
404 | Team not found |
422 | Team has no agents registered |
POST /v1/teams/forecast
Forecast risks based on fault line analysis. Uses LLM analysis (Claude Haiku) to predict failure modes and their probabilities. Request body:| Field | Type | Required | Description |
|---|---|---|---|
team_id | string | Yes | Team identifier |
fault_line_analysis_id | string | Yes | Analysis ID from a previous /teams/fault-lines call |
200 OK
| Field | Type | Description |
|---|---|---|
forecast_id | string | Unique forecast identifier |
fault_line_analysis_id | string | The analysis this forecast is based on |
failure_modes | array | Predicted failure modes |
overall_risk_level | string | Aggregate risk: low, medium, high, or critical |
confidence | number | Model confidence in the forecast (0.0 — 1.0) |
| Field | Type | Description |
|---|---|---|
mode | string | Failure mode type (see below) |
description | string | Human-readable description of the predicted failure |
probability | number | Estimated probability of occurrence (0.0 — 1.0) |
severity | string | Severity if the failure occurs: low, medium, high, or critical |
triggered_by | string[] | Fault line IDs that contribute to this failure mode |
affected_agents | string[] | Agents that would be affected |
mitigation_available | boolean | Whether a policy recommendation can address this failure mode |
| Type | Description |
|---|---|
escalation_conflict | Two or more agents have conflicting escalation triggers or thresholds |
capability_gap | A required capability is not covered by any agent in the team |
value_override | An agent may override another agent’s value constraints during coordination |
coordination_deadlock | Agents may reach a deadlock state due to circular dependencies or conflicting preconditions |
trust_erosion | Repeated misalignment may degrade trust scores over time |
| Status | Meaning |
|---|---|
404 | Team or analysis not found |
422 | Analysis ID does not belong to the specified team |
POST /v1/teams/recommend-policy
Generate a policy recommendation based on team analysis. Uses LLM analysis to produce a policy that resolves detected fault lines and mitigates forecasted risks. Request body:| Field | Type | Required | Description |
|---|---|---|---|
team_id | string | Yes | Team identifier |
200 OK
| Field | Type | Description |
|---|---|---|
recommendation_id | string | Unique recommendation identifier |
policy | object | The generated policy object, ready for use with the Policy Management API |
reasoning_chain | array | Step-by-step reasoning for the policy recommendation |
confidence | number | Model confidence in the recommendation (0.0 — 1.0) |
forecast_summary | object | Summary of how the recommended policy affects risk |
validation | object | Whether the generated policy passes schema validation |
| Field | Type | Description |
|---|---|---|
step | number | Step number in the reasoning chain |
action | string | What the recommendation does at this step |
rationale | string | Why this action was chosen |
fault_lines_addressed | string[] | Fault line IDs resolved by this step |
| Field | Type | Description |
|---|---|---|
risk_reduction | string | Risk level change (e.g., "medium → low") |
fault_lines_resolved | number | Number of fault lines resolved by the recommendation |
| Field | Type | Description |
|---|---|---|
valid | boolean | Whether the generated policy passes schema validation |
errors | string[] | Validation errors, if any |
| Status | Meaning |
|---|---|
404 | Team not found |
422 | Team has no agents registered or no fault line data available |
POST /v1/transactions
Create a transaction with scoped guardrails. Transaction guardrails use a 3-layer merge: org + team + transaction policies with intersection semantics forcapability_mappings.
Request body:
| Field | Type | Required | Description |
|---|---|---|---|
agent_id | string | Yes | Agent performing the transaction |
description | string | Yes | Human-readable description of the transaction |
action_type | string | Yes | Category of the action (e.g., financial_operation, data_access, content_generation) |
tools | string[] | Yes | MCP tools the agent is authorized to use during this transaction |
duration_hours | number | No | Transaction TTL in hours (default: 1, max: 24) |
policy | object | No | Transaction-scoped policy overrides; merged with org and team policies |
201 Created
| Field | Type | Description |
|---|---|---|
transaction_id | string | Unique transaction identifier |
agent_id | string | Agent performing the transaction |
description | string | Transaction description |
action_type | string | Action category |
status | string | Transaction status: active, completed, or expired |
tools | string[] | Authorized tools for this transaction |
merged_policy | object | The resolved policy after 3-layer merge (org + team + transaction) |
created_at | string | ISO 8601 creation timestamp |
expires_at | string | ISO 8601 expiry timestamp |
| Status | Meaning |
|---|---|
400 | Invalid request body or unsupported action_type |
404 | Agent not found |
422 | Policy merge conflict or invalid tool reference |
GET /v1/transactions/
Get transaction details including the resolved policy. Parameters:| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes | Transaction identifier |
200 OK
Returns the same transaction object as POST /v1/transactions.
Error responses:
| Status | Meaning |
|---|---|
404 | Transaction not found |
DELETE /v1/transactions/
Delete or cancel an active transaction. Expired transactions are automatically cleaned up and do not need to be deleted. Parameters:| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes | Transaction identifier |
204 No Content
Error responses:
| Status | Meaning |
|---|---|
404 | Transaction not found |
Error codes
| Status | Code | Description |
|---|---|---|
400 | invalid_request | Missing or invalid parameters |
401 | unauthorized | API key required but not provided or invalid |
402 | feature_required | Intelligence features require Team or Enterprise plan |
404 | not_found | Requested resource does not exist |
422 | validation_error | Request body fails schema validation or business rule checks |
429 | rate_limited | Too many requests; check Retry-After header |
500 | internal_error | Server error; retry with exponential backoff |
SDK usage
The Intelligence endpoints are not yet wrapped by the
@mnemom/sdk client (which currently covers the agents and catalog namespaces). Call them directly over HTTP until SDK helpers ship.See also
- Policy Engine — Policy concepts
- Team Reputation — Team scoring
- Policy Management — Policy workflows
- Risk Engine Guide — Risk assessment