Decision Log
Append-only decisions with provenance, supersession, retrieval, and audited MCP actions.
Should I use this
Quality & Safety
Findings (18)
- LOWin decision_log_render_workspace_brief
- LOWin decision_log_supersede_decision
- LOWin decision_log_approve_decision_action
- LOWin decision_log_get_decision_governance
- LOWin decision_log_list_recent_decisions
- LOWin decision_log_get_source_decisions
- LOWin decision_log_convert_candidate_to_supersession
- LOWin decision_log_get_current_decision
- LOWin decision_log_get_supersession_history
- LOWin decision_log_get_decision_sources
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"mcp": {
"url": "https://www.decisionlog.ai/api/mcp"
}
}
}Remote endpoints
https://www.decisionlog.ai/api/mcpstreamable-httpWhat it can do
Tool inventory
Tools (30)
🟡decision_log_create_decision(title, summary, decisionText, rationale, decisionType, ...)
Create an immutable Decision when permitted, otherwise create a reviewable DecisionCandidate.
Input Schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "Concise direct-action title without speaker wrappers or ellipses."
},
"summary": {
"type": "string",
"description": "Optional summary."
},
"decisionText": {
"type": "string",
"description": "The immutable meaning of the decision."
},
"rationale": {
"type": "string",
"description": "Why the decision was made."
},
"decisionType": {
"type": "string",
"enum": [
"policy",
"technical",
"product",
"vendor",
"security",
"financial",
"legal",
"operational",
"architecture",
"process",
"personnel",
"other"
]
},
"sourceIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"metadata": {
"type": "object",
"additionalProperties": true
}
},
"required": [
"title",
"decisionText",
"rationale",
"decisionType"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_search_decisions(query, status, decisionType, decisionKey, projectId, ...)
Search decisions in the authenticated workspace.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search text."
},
"status": {
"type": "string",
"description": "Optional Decision status filter."
},
"decisionType": {
"type": "string",
"description": "Optional Decision type filter."
},
"decisionKey": {
"type": "string",
"description": "Optional stable Decision key filter."
},
"projectId": {
"description": "Optional Project identifier filter.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"tag": {
"type": "string",
"description": "Optional Tag slug filter."
},
"domain": {
"type": "string",
"description": "Optional Domain slug filter."
},
"includeSuperseded": {
"type": "boolean",
"default": false
},
"currentOnly": {
"type": "boolean"
},
"sort": {
"type": "string",
"enum": [
"newest",
"oldest",
"title"
],
"default": "newest"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
},
"offset": {
"type": "integer",
"minimum": 0,
"default": 0
}
},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "object",
"properties": {
"results": {
"type": "array",
"description": "Decisions matched by the current page and filters.",
"items": {
"type": "object",
"additionalProperties": true
}
},
"totalCount": {
"type": "integer",
"minimum": 0,
"description": "Exact number of matching Decisions across all pages."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"offset": {
"type": "integer",
"minimum": 0
},
"hasNext": {
"type": "boolean",
"description": "Whether another page exists after this page."
}
},
"required": [
"results",
"totalCount",
"limit",
"offset",
"hasNext"
],
"additionalProperties": false
}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_get_decision(decisionId)
Retrieve one decision by ID.
Input Schema
{
"type": "object",
"properties": {
"decisionId": {
"type": "string",
"description": "Decision identifier.",
"format": "uuid"
}
},
"required": [
"decisionId"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}🔴decision_log_supersede_decision(decisionId, title, summary, decisionText, rationale, ...)
Create a replacement Decision and supersession relationship for an existing Decision.
Input Schema
{
"type": "object",
"properties": {
"decisionId": {
"type": "string",
"description": "Decision being superseded.",
"format": "uuid"
},
"title": {
"type": "string",
"description": "Concise direct-action title without speaker wrappers or ellipses."
},
"summary": {
"type": "string",
"description": "Optional summary."
},
"decisionText": {
"type": "string",
"description": "The immutable meaning of the decision."
},
"rationale": {
"type": "string",
"description": "Why the decision was made."
},
"decisionType": {
"type": "string",
"enum": [
"policy",
"technical",
"product",
"vendor",
"security",
"financial",
"legal",
"operational",
"architecture",
"process",
"personnel",
"other"
]
},
"sourceIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"metadata": {
"type": "object",
"additionalProperties": true
},
"reason": {
"type": "string",
"description": "Reason for supersession."
}
},
"required": [
"decisionId",
"title",
"decisionText",
"rationale",
"decisionType",
"reason"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}🔴decision_log_lock_decision(decisionId, rationale, sourceIds)
Irreversibly prevent a current Decision from ever being superseded; may create an approval request.
Input Schema
{
"type": "object",
"properties": {
"decisionId": {
"type": "string",
"description": "Decision to lock.",
"format": "uuid"
},
"rationale": {
"type": "string",
"description": "Why permanent finality is required."
},
"sourceIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
}
},
"required": [
"decisionId",
"rationale"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}⚪decision_log_approve_decision_action(approvalRequestId, approvalGroupId, decision, comment)
Record one immutable approval or rejection attestation.
Input Schema
{
"type": "object",
"properties": {
"approvalRequestId": {
"type": "string",
"description": "Approval request identifier.",
"format": "uuid"
},
"approvalGroupId": {
"type": "string",
"description": "Approval group identifier."
},
"decision": {
"type": "string",
"enum": [
"approve",
"reject"
]
},
"comment": {
"type": "string",
"description": "Optional approval comment."
}
},
"required": [
"approvalRequestId",
"approvalGroupId",
"decision"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_get_decision_governance(decisionId)
Retrieve lock, authority snapshot, and approval state for a Decision.
Input Schema
{
"type": "object",
"properties": {
"decisionId": {
"type": "string",
"description": "Decision identifier.",
"format": "uuid"
}
},
"required": [
"decisionId"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_list_recent_decisions(limit)
List the most recent decisions in the authenticated workspace.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 10
}
},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}🟡decision_log_submit_source(title, contentText, contentBlobUrl, externalId, externalUrl, ...)
Submit source content for ingestion and later provenance links.
Input Schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "Optional source title."
},
"contentText": {
"type": "string",
"description": "Inline source text."
},
"contentBlobUrl": {
"type": "string",
"format": "uri"
},
"externalId": {
"type": "string",
"description": "External provider identifier."
},
"externalUrl": {
"type": "string",
"format": "uri"
},
"sourceType": {
"type": "string",
"description": "Source type; defaults to mcp."
},
"metadata": {
"type": "object",
"additionalProperties": true
}
},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_list_sources(query, sourceType, retentionState, sort, limit, ...)
List visible SourceContent using bounded excerpts and canonical retention redaction.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Optional title, content, or external identifier search."
},
"sourceType": {
"type": "string",
"description": "Optional exact source type."
},
"retentionState": {
"type": "string",
"description": "Optional exact retention lifecycle state."
},
"sort": {
"type": "string",
"enum": [
"newest",
"oldest",
"title"
],
"default": "newest"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
},
"offset": {
"type": "integer",
"minimum": 0,
"default": 0
}
},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "array",
"description": "Visible SourceContent summaries with bounded excerpts and retention redaction applied.",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "SourceContent identifier.",
"format": "uuid"
},
"sourceType": {
"type": "string",
"description": "Source type."
},
"title": {
"description": "Source title, or null when retention policy hides it.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"contentExcerpt": {
"description": "Bounded source excerpt, or null when unavailable or hidden.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"retentionState": {
"type": "string",
"description": "Source retention lifecycle state."
},
"createdAt": {
"type": "string",
"description": "Source creation timestamp."
},
"submittedByActorId": {
"type": "string",
"description": "Submitting Actor identifier.",
"format": "uuid"
},
"externalId": {
"description": "Provider source identifier.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"externalUrl": {
"description": "Provider source URL.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"integrationId": {
"description": "Integration identifier.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"sourceType",
"title",
"contentExcerpt",
"retentionState",
"createdAt",
"submittedByActorId",
"externalId",
"externalUrl",
"integrationId"
],
"additionalProperties": false
}
}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_get_source(sourceId)
Retrieve one visible SourceContent detail projection. Redacted, purged, and unknown retention states never return stored title, content, blob URL, or metadata.
Input Schema
{
"type": "object",
"properties": {
"sourceId": {
"type": "string",
"description": "SourceContent identifier.",
"format": "uuid"
}
},
"required": [
"sourceId"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "SourceContent identifier.",
"format": "uuid"
},
"organizationId": {
"type": "string",
"description": "Owning Organization identifier.",
"format": "uuid"
},
"workspaceId": {
"description": "Owning Workspace identifier.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"sourceType": {
"type": "string",
"description": "Source type."
},
"title": {
"description": "Source title, or null when retention policy hides it.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"contentText": {
"description": "Retained source text, or null when absent or retention-hidden.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"contentBlobUrl": {
"description": "Retained source blob URL, or null when absent or retention-hidden.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"externalId": {
"description": "Provider source identifier.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"externalUrl": {
"description": "Provider source URL.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"externalCreatedAt": {
"description": "Provider creation timestamp.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"externalUpdatedAt": {
"description": "Provider update timestamp.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"submittedByActorId": {
"type": "string",
"description": "Submitting Actor identifier.",
"format": "uuid"
},
"integrationId": {
"description": "Integration identifier.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"retentionState": {
"type": "string",
"description": "Source retention lifecycle state."
},
"metadata": {
"description": "Retained source metadata, or null when absent or retention-hidden.",
"anyOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "null"
}
]
},
"createdAt": {
"type": "string",
"description": "Source creation timestamp."
},
"updatedAt": {
"type": "string",
"description": "Source update timestamp."
},
"archivedAt": {
"description": "Source archive timestamp.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"organizationId",
"workspaceId",
"sourceType",
"title",
"contentText",
"contentBlobUrl",
"externalId",
"externalUrl",
"externalCreatedAt",
"externalUpdatedAt",
"submittedByActorId",
"integrationId",
"retentionState",
"metadata",
"createdAt",
"updatedAt",
"archivedAt"
],
"additionalProperties": false
}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_get_source_decisions(sourceId)
Retrieve visible DecisionSource links for one SourceContent record with each linked Decision's lifecycle, authoritative current-state, and supersession identity.
Input Schema
{
"type": "object",
"properties": {
"sourceId": {
"type": "string",
"description": "SourceContent identifier.",
"format": "uuid"
}
},
"required": [
"sourceId"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "array",
"description": "Visible DecisionSource links for one SourceContent record, paired with the minimal Decision lifecycle projection.",
"items": {
"type": "object",
"properties": {
"link": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "DecisionSource identifier.",
"format": "uuid"
},
"decisionId": {
"type": "string",
"description": "Linked Decision identifier.",
"format": "uuid"
},
"sourceContentId": {
"type": "string",
"description": "Linked SourceContent identifier.",
"format": "uuid"
},
"relationshipType": {
"type": "string",
"description": "Provenance relationship type."
},
"createdAt": {
"type": "string",
"description": "Timestamp when the source was linked."
}
},
"required": [
"id",
"decisionId",
"sourceContentId",
"relationshipType",
"createdAt"
],
"additionalProperties": false
},
"decision": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Decision identifier.",
"format": "uuid"
},
"decisionKey": {
"description": "Stable Decision key, or null when no key was recorded.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"title": {
"type": "string",
"description": "Decision title."
},
"decisionType": {
"type": "string",
"description": "Decision type."
},
"status": {
"type": "string",
"description": "Decision lifecycle status. Use isCurrent for the authoritative current-state signal."
},
"isCurrent": {
"type": "boolean",
"description": "Whether this is the authoritative current Decision after lifecycle and supersession evaluation."
},
"effectiveAt": {
"description": "Decision effective timestamp, or null when unspecified.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"decidedAt": {
"type": "string",
"description": "Timestamp when the Decision was decided."
},
"recordedAt": {
"type": "string",
"description": "Timestamp when the Decision was recorded."
},
"supersededByDecisionId": {
"description": "Replacement Decision identifier, or null when this Decision has no recorded replacement.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"archivedAt": {
"description": "Decision archive timestamp, or null when not archived.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"retractedAt": {
"description": "Decision retraction timestamp, or null when not retracted.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"decisionKey",
"title",
"decisionType",
"status",
"isCurrent",
"effectiveAt",
"decidedAt",
"recordedAt",
"supersededByDecisionId",
"archivedAt",
"retractedAt"
],
"additionalProperties": false
}
},
"required": [
"link",
"decision"
],
"additionalProperties": false
}
}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_list_candidates(query, status, decisionType, sort, limit, ...)
List reviewable DecisionCandidates visible in the current Organization and Workspace before taking a resolution action.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Optional title, summary, decision text, or rationale search."
},
"status": {
"type": "string",
"description": "Optional exact candidate review status."
},
"decisionType": {
"type": "string",
"description": "Optional exact decision type."
},
"sort": {
"type": "string",
"enum": [
"newest",
"oldest",
"confidence"
],
"default": "newest"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
},
"offset": {
"type": "integer",
"minimum": 0,
"default": 0
}
},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "array",
"description": "Visible DecisionCandidates in the current Organization and Workspace.",
"items": {
"type": "object",
"additionalProperties": true
}
}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_get_candidate(candidateId)
Get the complete visible review context for one DecisionCandidate before approving, rejecting, or converting it.
Input Schema
{
"type": "object",
"properties": {
"candidateId": {
"type": "string",
"description": "DecisionCandidate identifier.",
"format": "uuid"
}
},
"required": [
"candidateId"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "object",
"description": "The complete visible DecisionCandidate review model, including classification, alternatives, criteria, and source identifiers.",
"additionalProperties": true
}
},
"required": [
"result"
],
"additionalProperties": false
}🟡decision_log_create_candidate(title, summary, decisionText, rationale, decisionType, ...)
Create a reviewable DecisionCandidate.
Input Schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "Concise direct-action title without speaker wrappers or ellipses."
},
"summary": {
"type": "string",
"description": "Optional summary."
},
"decisionText": {
"type": "string",
"description": "The immutable meaning of the decision."
},
"rationale": {
"type": "string",
"description": "Why the decision was made."
},
"decisionType": {
"type": "string",
"enum": [
"policy",
"technical",
"product",
"vendor",
"security",
"financial",
"legal",
"operational",
"architecture",
"process",
"personnel",
"other"
]
},
"sourceIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"metadata": {
"type": "object",
"additionalProperties": true
},
"confidence": {
"type": "integer",
"minimum": 0,
"maximum": 100
}
},
"required": [
"title",
"decisionText",
"rationale",
"decisionType"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}🔴decision_log_resolve_candidate(candidateId, resolution, reason, title, summary, ...)
Approve or reject a pending DecisionCandidate.
Input Schema
{
"type": "object",
"properties": {
"candidateId": {
"type": "string",
"description": "Candidate identifier.",
"format": "uuid"
},
"resolution": {
"type": "string",
"enum": [
"approve",
"reject"
]
},
"reason": {
"type": "string",
"description": "Optional rejection reason."
},
"title": {
"type": "string",
"description": "Concise direct-action title without speaker wrappers or ellipses."
},
"summary": {
"type": "string",
"description": "Optional summary."
},
"decisionText": {
"type": "string",
"description": "The immutable meaning of the decision."
},
"rationale": {
"type": "string",
"description": "Why the decision was made."
},
"decisionType": {
"type": "string",
"enum": [
"policy",
"technical",
"product",
"vendor",
"security",
"financial",
"legal",
"operational",
"architecture",
"process",
"personnel",
"other"
]
},
"sourceIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"metadata": {
"type": "object",
"additionalProperties": true
}
},
"required": [
"candidateId",
"resolution"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}🔴decision_log_convert_candidate_to_supersession(candidateId, replacesDecisionId, reason)
Approve a pending DecisionCandidate as the immutable replacement for one current Decision, preserving provenance and supersession history.
Input Schema
{
"type": "object",
"properties": {
"candidateId": {
"type": "string",
"description": "Pending DecisionCandidate identifier.",
"format": "uuid"
},
"replacesDecisionId": {
"type": "string",
"description": "Current Decision identifier that the candidate replaces.",
"format": "uuid"
},
"reason": {
"type": "string",
"description": "Optional reason for the supersession."
}
},
"required": [
"candidateId",
"replacesDecisionId"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_get_current_decision(domain)
Get the newest active decision in a domain.
Input Schema
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"description": "Domain slug."
}
},
"required": [
"domain"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_get_supersession_history(decisionId)
Retrieve the complete visible Decision supersession chain in oldest-to-newest order. Malformed chains fail closed and never claim a current Decision.
Input Schema
{
"type": "object",
"properties": {
"decisionId": {
"type": "string",
"description": "Decision identifier from any point in the chain.",
"format": "uuid"
}
},
"required": [
"decisionId"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "object",
"properties": {
"requestedDecisionId": {
"type": "string",
"description": "Decision identifier used to start traversal.",
"format": "uuid"
},
"status": {
"type": "string",
"enum": [
"resolved",
"not_found",
"cycle_detected",
"depth_exceeded",
"ambiguous",
"broken_chain"
]
},
"chain": {
"type": "array",
"description": "Visible Decisions ordered oldest to newest.",
"items": {
"type": "object",
"additionalProperties": true
}
},
"relationships": {
"type": "array",
"description": "Visible DecisionSupersession relationships in chain order.",
"items": {
"type": "object",
"additionalProperties": true
}
},
"currentDecision": {
"description": "Canonical current Decision when status is resolved; otherwise null.",
"anyOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "null"
}
]
},
"cycleDetected": {
"type": "boolean"
},
"depthExceeded": {
"type": "boolean"
},
"ambiguous": {
"type": "boolean"
},
"maxDepth": {
"type": "integer",
"minimum": 1
}
},
"required": [
"requestedDecisionId",
"status",
"chain",
"relationships",
"currentDecision",
"cycleDetected",
"depthExceeded",
"ambiguous",
"maxDepth"
],
"additionalProperties": false
}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_get_decision_sources(decisionId)
Retrieve retention-safe provenance links for one visible Decision, including relationship, source lifecycle, and submitter metadata.
Input Schema
{
"type": "object",
"properties": {
"decisionId": {
"type": "string",
"description": "Decision identifier.",
"format": "uuid"
}
},
"required": [
"decisionId"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "array",
"items": {
"type": "object",
"properties": {
"link": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "DecisionSource identifier.",
"format": "uuid"
},
"decisionId": {
"type": "string",
"description": "Linked Decision identifier.",
"format": "uuid"
},
"sourceContentId": {
"type": "string",
"description": "Linked SourceContent identifier.",
"format": "uuid"
},
"relationshipType": {
"type": "string",
"description": "Provenance relationship type."
},
"createdAt": {
"type": "string",
"description": "Timestamp when the source was linked."
}
},
"required": [
"id",
"decisionId",
"sourceContentId",
"relationshipType",
"createdAt"
],
"additionalProperties": false
},
"source": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "SourceContent identifier.",
"format": "uuid"
},
"sourceType": {
"type": "string",
"description": "Source type."
},
"title": {
"description": "Source title, or null when retention policy hides it.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"contentExcerpt": {
"description": "Bounded source excerpt, or null when unavailable or hidden.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"retentionState": {
"type": "string",
"description": "Source retention lifecycle state."
},
"createdAt": {
"type": "string",
"description": "Source creation timestamp."
},
"submittedByActorId": {
"type": "string",
"description": "Submitting Actor identifier.",
"format": "uuid"
},
"externalId": {
"description": "Provider source identifier.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"externalUrl": {
"description": "Provider source URL.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"integrationId": {
"description": "Integration identifier.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"sourceType",
"title",
"contentExcerpt",
"retentionState",
"createdAt",
"submittedByActorId",
"externalId",
"externalUrl",
"integrationId"
],
"additionalProperties": false
}
},
"required": [
"link",
"source"
],
"additionalProperties": false
}
}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_list_audit_events(query, action, resourceType, actorType, sort, ...)
List the visible append-only audit events for the current Organization using the canonical permission-aware, attribution-safe projection.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Optional actor, action, resource, or identifier search."
},
"action": {
"type": "string",
"description": "Optional exact AuditEvent action."
},
"resourceType": {
"type": "string",
"description": "Optional exact resource type."
},
"actorType": {
"type": "string",
"description": "Optional exact actor type."
},
"sort": {
"type": "string",
"enum": [
"newest",
"oldest"
],
"default": "newest"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 50
},
"offset": {
"type": "integer",
"minimum": 0,
"default": 0
}
},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_list_decisions_by_tag(tag)
List decisions related to an exact tag slug.
Input Schema
{
"type": "object",
"properties": {
"tag": {
"type": "string",
"description": "Tag slug."
}
},
"required": [
"tag"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_list_decisions_by_domain(domain)
List decisions related to an exact domain slug.
Input Schema
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"description": "Domain slug."
}
},
"required": [
"domain"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"result": {}
},
"required": [
"result"
],
"additionalProperties": false
}🟢decision_log_render_decision(decisionId)
Use this when the user wants to inspect one known Decision in a visual card. Call a data retrieval tool first when the Decision ID is unknown.
Input Schema
{
"type": "object",
"properties": {
"decisionId": {
"type": "string",
"description": "Decision identifier returned by a retrieval tool.",
"format": "uuid"
}
},
"required": [
"decisionId"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"decision": {}
},
"required": [
"decision"
],
"additionalProperties": false
}🟢decision_log_render_workspace_brief
Use this when the user wants a visual briefing of recent decisions, pending candidates, and source activity.
Input Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"surface": {
"type": "string",
"description": "Workflow surface."
},
"decisions": {},
"candidates": {},
"sources": {},
"actors": {}
},
"required": [
"surface",
"decisions",
"candidates",
"sources"
],
"additionalProperties": false
}🟢decision_log_render_decision_explorer(decisionId)
Use this when the user wants to browse the five most recent Decisions and optionally inspect one in detail.
Input Schema
{
"type": "object",
"properties": {
"decisionId": {
"type": "string",
"description": "Optional Decision identifier to open immediately.",
"format": "uuid"
}
},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"surface": {
"type": "string",
"description": "Workflow surface."
},
"decisions": {},
"selected": {},
"actors": {}
},
"required": [
"surface",
"decisions"
],
"additionalProperties": false
}🟢decision_log_render_candidate_review(candidateId)
Use this when the user wants to inspect and disposition one known DecisionCandidate in a visual review workbench.
Input Schema
{
"type": "object",
"properties": {
"candidateId": {
"type": "string",
"description": "DecisionCandidate identifier.",
"format": "uuid"
}
},
"required": [
"candidateId"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"surface": {
"type": "string",
"description": "Workflow surface."
},
"candidate": {},
"actors": {}
},
"required": [
"surface",
"candidate"
],
"additionalProperties": false
}🟢decision_log_render_supersession_composer(decisionId, title, summary, decisionText, rationale, ...)
Use this when the user has a known active Decision and complete replacement meaning to review before supersession.
Input Schema
{
"type": "object",
"properties": {
"decisionId": {
"type": "string",
"description": "Decision being superseded.",
"format": "uuid"
},
"title": {
"type": "string",
"description": "Concise direct-action title without speaker wrappers or ellipses."
},
"summary": {
"type": "string",
"description": "Optional summary."
},
"decisionText": {
"type": "string",
"description": "The immutable meaning of the decision."
},
"rationale": {
"type": "string",
"description": "Why the decision was made."
},
"decisionType": {
"type": "string",
"enum": [
"policy",
"technical",
"product",
"vendor",
"security",
"financial",
"legal",
"operational",
"architecture",
"process",
"personnel",
"other"
]
},
"sourceIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"metadata": {
"type": "object",
"additionalProperties": true
},
"reason": {
"type": "string",
"description": "Reason for supersession."
}
},
"required": [
"decisionId",
"title",
"decisionText",
"rationale",
"decisionType",
"reason"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"surface": {
"type": "string",
"description": "Workflow surface."
},
"current": {},
"replacement": {},
"reason": {
"type": "string",
"description": "Reason for supersession."
},
"actors": {}
},
"required": [
"surface",
"current",
"replacement",
"reason"
],
"additionalProperties": false
}🟢decision_log_render_source_pipeline(sourceId)
Use this when the user wants to inspect one known source, its provenance lifecycle, and extracted candidates.
Input Schema
{
"type": "object",
"properties": {
"sourceId": {
"type": "string",
"description": "DecisionSource identifier.",
"format": "uuid"
}
},
"required": [
"sourceId"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"surface": {
"type": "string",
"description": "Workflow surface."
},
"source": {},
"candidates": {},
"actors": {}
},
"required": [
"surface",
"source",
"candidates"
],
"additionalProperties": false
}🟢decision_log_render_audit_explorer(query, limit)
Use this when the user wants to visually inspect attributable, append-only audit events with filtering and pagination.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Optional audit event filter."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
}
},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"surface": {
"type": "string",
"description": "Workflow surface."
},
"events": {},
"actors": {}
},
"required": [
"surface",
"events"
],
"additionalProperties": false
}Recommended Prompts
decision_log_search_decisionsdecision_log_search_decisionsdecision_log_get_decisiondecision_log_get_decisiondecision_log_list_recent_decisionsCommunity
Evidence