
Append-only decisions with provenance, supersession, retrieval, and audited MCP actions.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Registered Decision Log MCP client identifier.
Bearer authentication using the registered MCP client secret.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Record one immutable approval or rejection attestation.
Approval group identifier.
Approval request identifier.
Optional approval comment.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Record one immutable approval or rejection attestation.
| Argument | Type | Description |
|---|---|---|
| comment | string | Optional approval comment. |
| decision* | string | |
| approvalGroupId* | string | Approval group identifier. |
| approvalRequestId* | string | Approval request identifier. |
{
"type": "object",
"required": [
"approvalRequestId",
"approvalGroupId",
"decision"
],
"properties": {
"comment": {
"type": "string",
"description": "Optional approval comment."
},
"decision": {
"enum": [
"approve",
"reject"
],
"type": "string"
},
"approvalGroupId": {
"type": "string",
"description": "Approval group identifier."
},
"approvalRequestId": {
"type": "string",
"format": "uuid",
"description": "Approval request identifier."
}
},
"additionalProperties": false
}Approve a pending DecisionCandidate as the immutable replacement for one current Decision, preserving provenance and supersession history.
| Argument | Type | Description |
|---|---|---|
| reason | string | Optional reason for the supersession. |
| candidateId* | string | Pending DecisionCandidate identifier. |
| replacesDecisionId* | string | Current Decision identifier that the candidate replaces. |
{
"type": "object",
"required": [
"candidateId",
"replacesDecisionId"
],
"properties": {
"reason": {
"type": "string",
"description": "Optional reason for the supersession."
},
"candidateId": {
"type": "string",
"format": "uuid",
"description": "Pending DecisionCandidate identifier."
},
"replacesDecisionId": {
"type": "string",
"format": "uuid",
"description": "Current Decision identifier that the candidate replaces."
}
},
"additionalProperties": false
}Create a reviewable DecisionCandidate.
| Argument | Type | Description |
|---|---|---|
| title* | string | Concise direct-action title without speaker wrappers or ellipses. |
| summary | string | Optional summary. |
| metadata | object | |
| rationale* | string | Why the decision was made. |
| sourceIds | array | |
| confidence | integer | |
| decisionText* | string | The immutable meaning of the decision. |
| decisionType* | string |
{
"type": "object",
"required": [
"title",
"decisionText",
"rationale",
"decisionType"
],
"properties": {
"title": {
"type": "string",
"description": "Concise direct-action title without speaker wrappers or ellipses."
},
"summary": {
"type": "string",
"description": "Optional summary."
},
"metadata": {
"type": "object",
"additionalProperties": true
},
"rationale": {
"type": "string",
"description": "Why the decision was made."
},
"sourceIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"confidence": {
"type": "integer",
"maximum": 100,
"minimum": 0
},
"decisionText": {
"type": "string",
"description": "The immutable meaning of the decision."
},
"decisionType": {
"enum": [
"policy",
"technical",
"product",
"vendor",
"security",
"financial",
"legal",
"operational",
"architecture",
"process",
"personnel",
"other"
],
"type": "string"
}
},
"additionalProperties": false
}Create an immutable Decision when permitted, otherwise create a reviewable DecisionCandidate.
| Argument | Type | Description |
|---|---|---|
| title* | string | Concise direct-action title without speaker wrappers or ellipses. |
| summary | string | Optional summary. |
| metadata | object | |
| rationale* | string | Why the decision was made. |
| sourceIds | array | |
| decisionText* | string | The immutable meaning of the decision. |
| decisionType* | string |
{
"type": "object",
"required": [
"title",
"decisionText",
"rationale",
"decisionType"
],
"properties": {
"title": {
"type": "string",
"description": "Concise direct-action title without speaker wrappers or ellipses."
},
"summary": {
"type": "string",
"description": "Optional summary."
},
"metadata": {
"type": "object",
"additionalProperties": true
},
"rationale": {
"type": "string",
"description": "Why the decision was made."
},
"sourceIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"decisionText": {
"type": "string",
"description": "The immutable meaning of the decision."
},
"decisionType": {
"enum": [
"policy",
"technical",
"product",
"vendor",
"security",
"financial",
"legal",
"operational",
"architecture",
"process",
"personnel",
"other"
],
"type": "string"
}
},
"additionalProperties": false
}Get the complete visible review context for one DecisionCandidate before approving, rejecting, or converting it.
| Argument | Type | Description |
|---|---|---|
| candidateId* | string | DecisionCandidate identifier. |
{
"type": "object",
"required": [
"candidateId"
],
"properties": {
"candidateId": {
"type": "string",
"format": "uuid",
"description": "DecisionCandidate identifier."
}
},
"additionalProperties": false
}Get the newest active decision in a domain.
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain slug. |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Domain slug."
}
},
"additionalProperties": false
}Retrieve one decision by ID.
| Argument | Type | Description |
|---|---|---|
| decisionId* | string | Decision identifier. |
{
"type": "object",
"required": [
"decisionId"
],
"properties": {
"decisionId": {
"type": "string",
"format": "uuid",
"description": "Decision identifier."
}
},
"additionalProperties": false
}Retrieve lock, authority snapshot, and approval state for a Decision.
| Argument | Type | Description |
|---|---|---|
| decisionId* | string | Decision identifier. |
{
"type": "object",
"required": [
"decisionId"
],
"properties": {
"decisionId": {
"type": "string",
"format": "uuid",
"description": "Decision identifier."
}
},
"additionalProperties": false
}Retrieve retention-safe provenance links for one visible Decision, including relationship, source lifecycle, and submitter metadata.
| Argument | Type | Description |
|---|---|---|
| decisionId* | string | Decision identifier. |
{
"type": "object",
"required": [
"decisionId"
],
"properties": {
"decisionId": {
"type": "string",
"format": "uuid",
"description": "Decision identifier."
}
},
"additionalProperties": false
}Retrieve one visible SourceContent detail projection. Redacted, purged, and unknown retention states never return stored title, content, blob URL, or metadata.
| Argument | Type | Description |
|---|---|---|
| sourceId* | string | SourceContent identifier. |
{
"type": "object",
"required": [
"sourceId"
],
"properties": {
"sourceId": {
"type": "string",
"format": "uuid",
"description": "SourceContent identifier."
}
},
"additionalProperties": false
}Retrieve visible DecisionSource links for one SourceContent record with each linked Decision's lifecycle, authoritative current-state, and supersession identity.
| Argument | Type | Description |
|---|---|---|
| sourceId* | string | SourceContent identifier. |
{
"type": "object",
"required": [
"sourceId"
],
"properties": {
"sourceId": {
"type": "string",
"format": "uuid",
"description": "SourceContent identifier."
}
},
"additionalProperties": false
}Retrieve the complete visible Decision supersession chain in oldest-to-newest order. Malformed chains fail closed and never claim a current Decision.
| Argument | Type | Description |
|---|---|---|
| decisionId* | string | Decision identifier from any point in the chain. |
{
"type": "object",
"required": [
"decisionId"
],
"properties": {
"decisionId": {
"type": "string",
"format": "uuid",
"description": "Decision identifier from any point in the chain."
}
},
"additionalProperties": false
}List the visible append-only audit events for the current Organization using the canonical permission-aware, attribution-safe projection.
| Argument | Type | Description |
|---|---|---|
| sort | string | |
| limit | integer | |
| query | string | Optional actor, action, resource, or identifier search. |
| action | string | Optional exact AuditEvent action. |
| offset | integer | |
| actorType | string | Optional exact actor type. |
| resourceType | string | Optional exact resource type. |
{
"type": "object",
"properties": {
"sort": {
"enum": [
"newest",
"oldest"
],
"type": "string",
"default": "newest"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"query": {
"type": "string",
"description": "Optional actor, action, resource, or identifier search."
},
"action": {
"type": "string",
"description": "Optional exact AuditEvent action."
},
"offset": {
"type": "integer",
"default": 0,
"minimum": 0
},
"actorType": {
"type": "string",
"description": "Optional exact actor type."
},
"resourceType": {
"type": "string",
"description": "Optional exact resource type."
}
},
"additionalProperties": false
}List reviewable DecisionCandidates visible in the current Organization and Workspace before taking a resolution action.
| Argument | Type | Description |
|---|---|---|
| sort | string | |
| limit | integer | |
| query | string | Optional title, summary, decision text, or rationale search. |
| offset | integer | |
| status | string | Optional exact candidate review status. |
| decisionType | string | Optional exact decision type. |
{
"type": "object",
"properties": {
"sort": {
"enum": [
"newest",
"oldest",
"confidence"
],
"type": "string",
"default": "newest"
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"query": {
"type": "string",
"description": "Optional title, summary, decision text, or rationale search."
},
"offset": {
"type": "integer",
"default": 0,
"minimum": 0
},
"status": {
"type": "string",
"description": "Optional exact candidate review status."
},
"decisionType": {
"type": "string",
"description": "Optional exact decision type."
}
},
"additionalProperties": false
}List decisions related to an exact domain slug.
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain slug. |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Domain slug."
}
},
"additionalProperties": false
}List decisions related to an exact tag slug.
| Argument | Type | Description |
|---|---|---|
| tag* | string | Tag slug. |
{
"type": "object",
"required": [
"tag"
],
"properties": {
"tag": {
"type": "string",
"description": "Tag slug."
}
},
"additionalProperties": false
}List the most recent decisions in the authenticated workspace.
| Argument | Type | Description |
|---|---|---|
| limit | integer |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 100,
"minimum": 1
}
},
"additionalProperties": false
}List visible SourceContent using bounded excerpts and canonical retention redaction.
| Argument | Type | Description |
|---|---|---|
| sort | string | |
| limit | integer | |
| query | string | Optional title, content, or external identifier search. |
| offset | integer | |
| sourceType | string | Optional exact source type. |
| retentionState | string | Optional exact retention lifecycle state. |
{
"type": "object",
"properties": {
"sort": {
"enum": [
"newest",
"oldest",
"title"
],
"type": "string",
"default": "newest"
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"query": {
"type": "string",
"description": "Optional title, content, or external identifier search."
},
"offset": {
"type": "integer",
"default": 0,
"minimum": 0
},
"sourceType": {
"type": "string",
"description": "Optional exact source type."
},
"retentionState": {
"type": "string",
"description": "Optional exact retention lifecycle state."
}
},
"additionalProperties": false
}Irreversibly prevent a current Decision from ever being superseded; may create an approval request.
| Argument | Type | Description |
|---|---|---|
| rationale* | string | Why permanent finality is required. |
| sourceIds | array | |
| decisionId* | string | Decision to lock. |
{
"type": "object",
"required": [
"decisionId",
"rationale"
],
"properties": {
"rationale": {
"type": "string",
"description": "Why permanent finality is required."
},
"sourceIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"decisionId": {
"type": "string",
"format": "uuid",
"description": "Decision to lock."
}
},
"additionalProperties": false
}Use this when the user wants to visually inspect attributable, append-only audit events with filtering and pagination.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| query | string | Optional audit event filter. |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"query": {
"type": "string",
"description": "Optional audit event filter."
}
},
"additionalProperties": false
}Use this when the user wants to inspect and disposition one known DecisionCandidate in a visual review workbench.
| Argument | Type | Description |
|---|---|---|
| candidateId* | string | DecisionCandidate identifier. |
{
"type": "object",
"required": [
"candidateId"
],
"properties": {
"candidateId": {
"type": "string",
"format": "uuid",
"description": "DecisionCandidate identifier."
}
},
"additionalProperties": false
}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.
| Argument | Type | Description |
|---|---|---|
| decisionId* | string | Decision identifier returned by a retrieval tool. |
{
"type": "object",
"required": [
"decisionId"
],
"properties": {
"decisionId": {
"type": "string",
"format": "uuid",
"description": "Decision identifier returned by a retrieval tool."
}
},
"additionalProperties": false
}Use this when the user wants to browse the five most recent Decisions and optionally inspect one in detail.
| Argument | Type | Description |
|---|---|---|
| decisionId | string | Optional Decision identifier to open immediately. |
{
"type": "object",
"properties": {
"decisionId": {
"type": "string",
"format": "uuid",
"description": "Optional Decision identifier to open immediately."
}
},
"additionalProperties": false
}Use this when the user wants to inspect one known source, its provenance lifecycle, and extracted candidates.
| Argument | Type | Description |
|---|---|---|
| sourceId* | string | DecisionSource identifier. |
{
"type": "object",
"required": [
"sourceId"
],
"properties": {
"sourceId": {
"type": "string",
"format": "uuid",
"description": "DecisionSource identifier."
}
},
"additionalProperties": false
}Use this when the user has a known active Decision and complete replacement meaning to review before supersession.
| Argument | Type | Description |
|---|---|---|
| title* | string | Concise direct-action title without speaker wrappers or ellipses. |
| reason* | string | Reason for supersession. |
| summary | string | Optional summary. |
| metadata | object | |
| rationale* | string | Why the decision was made. |
| sourceIds | array | |
| decisionId* | string | Decision being superseded. |
| decisionText* | string | The immutable meaning of the decision. |
| decisionType* | string |
Use this when the user wants a visual briefing of recent decisions, pending candidates, and source activity.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Approve or reject a pending DecisionCandidate.
| Argument | Type | Description |
|---|---|---|
| title | string | Concise direct-action title without speaker wrappers or ellipses. |
| reason | string | Optional rejection reason. |
| summary | string | Optional summary. |
| metadata | object | |
| rationale | string | Why the decision was made. |
| sourceIds | array | |
| resolution* | string | |
| candidateId* | string | Candidate identifier. |
| decisionText | string | The immutable meaning of the decision. |
| decisionType | string |
Search decisions in the authenticated workspace.
| Argument | Type | Description |
|---|---|---|
| tag | string | Optional Tag slug filter. |
| sort | string | |
| limit | integer | |
| query | string | Search text. |
| domain | string | Optional Domain slug filter. |
| offset | integer | |
| status | string | Optional Decision status filter. |
| projectId | any | Optional Project identifier filter. |
| currentOnly | boolean | |
| decisionKey | string | Optional stable Decision key filter. |
| decisionType | string |
Submit source content for ingestion and later provenance links.
| Argument | Type | Description |
|---|---|---|
| title | string | Optional source title. |
| metadata | object | |
| externalId | string | External provider identifier. |
| sourceType | string | Source type; defaults to mcp. |
| contentText | string | Inline source text. |
| externalUrl | string | |
| contentBlobUrl | string |
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "Optional source title."
},
"metadata": {
"type": "object",
"additionalProperties": true
},
"externalId": {
"type": "string",
"description": "External provider identifier."
},
"sourceType": {
"type": "string",
"description": "Source type; defaults to mcp."
},
"contentText": {
"type": "string",
"description": "Inline source text."
},
"externalUrl": {
"type": "string",
"format": "uri"
},
"contentBlobUrl": {
"type": "string",
"format": "uri"
}
},
"additionalProperties": false
}Create a replacement Decision and supersession relationship for an existing Decision.
| Argument | Type | Description |
|---|---|---|
| title* | string | Concise direct-action title without speaker wrappers or ellipses. |
| reason* | string | Reason for supersession. |
| summary | string | Optional summary. |
| metadata | object | |
| rationale* | string | Why the decision was made. |
| sourceIds | array | |
| decisionId* | string | Decision being superseded. |
| decisionText* | string | The immutable meaning of the decision. |
| decisionType* | string |
{
"type": "object",
"required": [
"decisionId",
"title",
"decisionText",
"rationale",
"decisionType",
"reason"
],
"properties": {
"title": {
"type": "string",
"description": "Concise direct-action title without speaker wrappers or ellipses."
},
"reason": {
"type": "string",
"description": "Reason for supersession."
},
"summary": {
"type": "string",
"description": "Optional summary."
},
"metadata": {
"type": "object",
"additionalProperties": true
},
"rationale": {
"type": "string",
"description": "Why the decision was made."
},
"sourceIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"decisionId": {
"type": "string",
"format": "uuid",
"description": "Decision being superseded."
},
"decisionText": {
"type": "string",
"description": "The immutable meaning of the decision."
},
"decisionType": {
"enum": [
"policy",
"technical",
"product",
"vendor",
"security",
"financial",
"legal",
"operational",
"architecture",
"process",
"personnel",
"other"
],
"type": "string"
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"candidateId",
"resolution"
],
"properties": {
"title": {
"type": "string",
"description": "Concise direct-action title without speaker wrappers or ellipses."
},
"reason": {
"type": "string",
"description": "Optional rejection reason."
},
"summary": {
"type": "string",
"description": "Optional summary."
},
"metadata": {
"type": "object",
"additionalProperties": true
},
"rationale": {
"type": "string",
"description": "Why the decision was made."
},
"sourceIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"resolution": {
"enum": [
"approve",
"reject"
],
"type": "string"
},
"candidateId": {
"type": "string",
"format": "uuid",
"description": "Candidate identifier."
},
"decisionText": {
"type": "string",
"description": "The immutable meaning of the decision."
},
"decisionType": {
"enum": [
"policy",
"technical",
"product",
"vendor",
"security",
"financial",
"legal",
"operational",
"architecture",
"process",
"personnel",
"other"
],
"type": "string"
}
},
"additionalProperties": false
}| Optional Decision type filter. |
| includeSuperseded | boolean |
{
"type": "object",
"properties": {
"tag": {
"type": "string",
"description": "Optional Tag slug filter."
},
"sort": {
"enum": [
"newest",
"oldest",
"title"
],
"type": "string",
"default": "newest"
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"query": {
"type": "string",
"description": "Search text."
},
"domain": {
"type": "string",
"description": "Optional Domain slug filter."
},
"offset": {
"type": "integer",
"default": 0,
"minimum": 0
},
"status": {
"type": "string",
"description": "Optional Decision status filter."
},
"projectId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Optional Project identifier filter."
},
"currentOnly": {
"type": "boolean"
},
"decisionKey": {
"type": "string",
"description": "Optional stable Decision key filter."
},
"decisionType": {
"type": "string",
"description": "Optional Decision type filter."
},
"includeSuperseded": {
"type": "boolean",
"default": false
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"decisionId",
"title",
"decisionText",
"rationale",
"decisionType",
"reason"
],
"properties": {
"title": {
"type": "string",
"description": "Concise direct-action title without speaker wrappers or ellipses."
},
"reason": {
"type": "string",
"description": "Reason for supersession."
},
"summary": {
"type": "string",
"description": "Optional summary."
},
"metadata": {
"type": "object",
"additionalProperties": true
},
"rationale": {
"type": "string",
"description": "Why the decision was made."
},
"sourceIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"decisionId": {
"type": "string",
"format": "uuid",
"description": "Decision being superseded."
},
"decisionText": {
"type": "string",
"description": "The immutable meaning of the decision."
},
"decisionType": {
"enum": [
"policy",
"technical",
"product",
"vendor",
"security",
"financial",
"legal",
"operational",
"architecture",
"process",
"personnel",
"other"
],
"type": "string"
}
},
"additionalProperties": false
}