Pretorin Compliance
PYPI · PRETORIN · SCANNED SEP 22
Access Pretorin controls, evidence, narratives, and local Plan-backed Campaigns from AI tools.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security50
- Malware scan not yet available for this package.Unverified
- No known CVEs affecting this package version or its production dependencies.Pass
- Runs hatchling.build at install time, a recognised native-build step with no shell scripting around it. View diagnostics → Pass
- 6 of 71 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency19
- Repository check failed: the declared repository URL redirects; it must resolve directly. See how to fix → View diagnostics → Fail
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (Apache-2.0).Pass
- Actively maintained (last published 0 days ago).Pass
- Security-disclosure policy not yet verified: we couldn't inspect the source repository.Unverified
Schema Quality & AI Usability81
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 39124 tokens (~133/item across 293 items; 270 tools + 23 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management97
- Stability observed for 29 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage93
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 78% of tool parameters carry a description.Partial
Tool Safety75
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 0 of 9 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "delete_evidence" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
- An AI judge read all 272 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
How do I install the Pretorin Compliance MCP server?
Pretorin Compliance runs locally as a PyPI package, launched with uvx pretorin. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
pypi · pretorin
claude mcp add pretorin-ai-pretorin -- uvx pretorin
{
"mcpServers": {
"pretorin-ai-pretorin": {
"command": "uvx",
"args": [
"pretorin"
]
}
}
} {
"servers": {
"pretorin-ai-pretorin": {
"command": "uvx",
"args": [
"pretorin"
]
}
}
} codex mcp add pretorin-ai-pretorin -- uvx pretorin
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"pretorin-ai-pretorin": {
"type": "local",
"command": [
"uvx",
"pretorin"
],
"enabled": true
}
}
} openclaw mcp add pretorin-ai-pretorin --command uvx --arg pretorin
mcp_servers:
pretorin-ai-pretorin:
command: "uvx"
args: ["pretorin"] {
"McpServers": {
"pretorin-ai-pretorin": {
"Transport": "stdio",
"Command": "uvx",
"Arguments": [
"pretorin"
]
}
}
} assistant mcp add pretorin-ai-pretorin -t stdio -c uvx -a pretorin
{
"mcpServers": {
"pretorin-ai-pretorin": {
"command": "uvx",
"args": [
"pretorin"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 22 Sept 26 −14
- Malware scan: pass → unverified ▼ security
- Package version: 0.29.17 → 0.29.18 functional
- 21 Sept 26 +15
- Stability: 0.90 → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- Malware scan: unverified → pass ▲ security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Schema quality: 100 → unverified ▼ functional
- Package version: 0.29.14 → 0.29.17 functional
- Package version: 0.29.14 → 0.29.16 functional
- Package version: 0.29.14 → 0.29.15 functional
- 20 Sept 26 0
- Package version: 0.29.13 → 0.29.14 functional
- 19 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 18 Sept 26 −2
- Stability: fail → 0.83 functional
- Package version: 0.29.10 → 0.29.13 functional
- Package version: 0.29.10 → 0.29.12 functional
- Package version: 0.29.10 → 0.29.11 functional
- 17 Sept 26 0
- Package version: 0.29.9 → 0.29.10 functional
- 16 Sept 26 +1
- Package version: 0.29.8 → 0.29.9 functional
- 15 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 86 to 89.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 22 Sept 2026 · Analysed pypi/pretorin@0.29.18
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | pypi |
Background: How many MCP packages publish verified provenance →
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| build_backend | allowlisted | hatchling.build |
Background: Why install scripts are a supply-chain risk →
Dependencies 71 packages
| Packages resolved | 71 |
|---|---|
| Stale | 4 |
| No linked repository | 2 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
list_risks ~81
List risks in a system's risk register. Resolve the active system before calling. Optional filters: category, risk_level, status.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Optional category filter |
| risk_level | string | – | Optional risk-level filter |
| status | string | – | Optional status filter |
| system_id | string | yes | The system ID or name |
No output schema declared.
No examples provided.
list_stig_checklists ~120
List STIG checklists for a system (per-asset: benchmark, asset identity, title). Use to discover an existing checklist_id before export/import, or to confirm one exists for a (benchmark, asset) pair before creating a new one.
| Name | Type | Req | Description |
|---|---|---|---|
| inventory_item_id | string | – | Optional: filter to one asset's checklists by inventory item ID |
| limit | integer | – | Max results per page (1–500) |
| offset | integer | – | Pagination offset |
| system_id | string | yes | The system ID or name |
No output schema declared.
No examples provided.
list_stig_rules ~89
List rules for a STIG benchmark with optional severity and CCI filters.
| Name | Type | Req | Description |
|---|---|---|---|
| cci_id | string | – | Filter by CCI identifier |
| limit | integer | – | Max results to return |
| offset | integer | – | Offset for pagination |
| severity | string | – | Filter by severity (high, medium, low) |
| stig_id | string | yes | The STIG benchmark ID |
No output schema declared.
No examples provided.
list_stigs ~66
List STIG benchmarks with optional filters by technology area or product.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results to return |
| offset | integer | – | Offset for pagination |
| product | string | – | Filter by product name |
| technology_area | string | – | Filter by technology area |
No output schema declared.
No examples provided.
list_systems ~17
List all systems in the user's organization
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_tools ~70
Compact catalog of every available MCP tool. Returns {name, purpose, tier, requires_workflow} for each tool — a <100-line answer to 'what's available?' that fits in any agent's context. Cross-harness alternative to fetching every tool's full inputSchema just to browse. Unauthenticated.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_vendor_assessment_templates ~20
List vendor assessment templates available to the organization.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_vendor_assessments ~28
List assessments run against a vendor.
| Name | Type | Req | Description |
|---|---|---|---|
| vendor_id | string | yes | Vendor ID |
No output schema declared.
No examples provided.
list_vendor_contacts ~53
List contacts for a vendor. Requires the server-side `vendor.pii` scope (or an admin token); the platform returns 403 if the token is not authorized.
| Name | Type | Req | Description |
|---|---|---|---|
| vendor_id | string | yes | Vendor ID |
No output schema declared.
No examples provided.
list_vendor_contracts ~55
List contracts for a vendor. Requires the server-side `vendor.pii` scope (or an admin token). status and is_expired are server-derived, read-only fields.
| Name | Type | Req | Description |
|---|---|---|---|
| vendor_id | string | yes | Vendor ID |
No output schema declared.
No examples provided.
list_vendor_documents ~27
List evidence documents linked to a vendor.
| Name | Type | Req | Description |
|---|---|---|---|
| vendor_id | string | yes | Vendor ID |
No output schema declared.
No examples provided.
list_vendor_systems ~27
List the systems a vendor serves.
| Name | Type | Req | Description |
|---|---|---|---|
| vendor_id | string | yes | Vendor ID |
No output schema declared.
No examples provided.
list_vendors ~143
List all vendor/provider entities for the organization, with optional filters and sorting. Inactive vendors are hidden by default; pass include_inactive=true to include them.
| Name | Type | Req | Description |
|---|---|---|---|
| assessment_status | string | – | – |
| include_inactive | boolean | – | Include inactive vendors, which are hidden by default. |
| lifecycle_status | string | – | Filter by lifecycle status. |
| owner_user_id | string | – | Filter by vendor owner user ID. |
| provider_type | string | – | – |
| risk_tier | string | – | – |
| search | string | – | Case-insensitive search over vendor name and description. |
| sort_by | string | – | – |
| sort_dir | string | – | – |
No output schema declared.
No examples provided.
list_workflows ~101
List loaded workflow playbooks (single-control, scope-question, scope-artifacts, policy-question, campaign, preflight, STIG scan/remediation, risk assessment/RAR, formal assessment/auditor snapshot). Each workflow describes how to iterate items in its domain and which recipes to pick per item. Use this before picking a recipe so the agent works at the right granularity.
| Name | Type | Req | Description |
|---|---|---|---|
| iterates_over | string | – | Filter to one item-iteration shape |
No output schema declared.
No examples provided.
mutate_plan_structure ~184
Apply one audited structural change to an active Plan. Supports adding, removing, or replacing pending steps and replacing acceptance criteria. expected_version, actor, and reason are mandatory. Every successful change increments Plan.version and appends an immutable post-change snapshot. Step status updates and artifact recording remain runtime progress and do not increment the structural version.
| Name | Type | Req | Description |
|---|---|---|---|
| acceptance_criteria | array | – | Required for replace_acceptance_criteria. Replaces caller-added criteria only; workflow-required Definition-of-Done criteria are always preserved. An empty list clears only caller-added criteria. |
| actor | string | yes | – |
| expected_version | integer | yes | – |
| operation | string | yes | – |
| plan_id | string | yes | – |
| reason | string | yes | – |
| step | object | – | Required for add_step and replace_step. |
| step_index | integer | – | Required for remove_step and replace_step. |
No output schema declared.
No examples provided.
patch_org_policy_qa ~193
Update organization policy questionnaire answers. Accepts a list of question_id/answer pairs to apply as partial updates. IMPORTANT: Before drafting answers, research the local workspace — read source code, config files, existing policy documents, and infrastructure definitions to ground answers in observable facts. Do not invent organizational facts or procedures. Ask the user for clarification on anything that cannot be determined from the workspace.
| Name | Type | Req | Description |
|---|---|---|---|
| plan_id | string | – | Optional: ID of the agent-authored plan this write is part of. When supplied, the platform write is tagged with the plan and the plan's local produced_artifacts[] audit chain gets an entry. |
| policy_id | string | yes | The organization policy ID |
| step_index | integer | – | Optional: zero-based index of the plan step that triggered this write. Only meaningful when plan_id is also supplied. |
| updates | array | yes | List of question/answer updates to apply |
No output schema declared.
No examples provided.
patch_scope_qa ~216
Update scope questionnaire answers for a system/framework. Accepts a list of question_id/answer pairs to apply as partial updates. IMPORTANT: Before drafting answers, research the local workspace — read source code, infrastructure config, and documentation to ground answers in observable facts. Ask the user for clarification on anything that cannot be determined from the workspace.
| Name | Type | Req | Description |
|---|---|---|---|
| framework_id | string | yes | The framework ID (e.g., nist-800-53-r5, fedramp-moderate, soc2) |
| plan_id | string | – | Optional: ID of the agent-authored plan this write is part of. When supplied, the platform write is tagged with the plan and the plan's local produced_artifacts[] audit chain gets an entry. |
| step_index | integer | – | Optional: zero-based index of the plan step that triggered this write. Only meaningful when plan_id is also supplied. |
| system_id | string | yes | The system ID or name |
| updates | array | yes | List of question/answer updates to apply |
No output schema declared.
No examples provided.
prepare_campaign ~286
Deprecated checkpoint compatibility only. New Campaigns use `campaign start` and a parent Plan ID. Prepare a legacy workflow-aligned checkpoint for drafting, submission, and apply operations.
| Name | Type | Req | Description |
|---|---|---|---|
| all_controls | boolean | – | – |
| all_incomplete | boolean | – | – |
| apply | boolean | – | – |
| artifacts | string | – | – |
| checkpoint_path | string | – | Optional local checkpoint file path |
| concurrency | integer | – | – |
| control_ids | array | – | Optional explicit control IDs |
| domain | string | yes | – |
| family_id | string | – | Optional control family selector. Accepts canonical ID or abbreviation (case-insensitive). e.g. 'AC' or 'access-control' for NIST/FedRAMP, 'CC6' for SOC 2, 'AC-L2' for CMMC. Use `list_control_familie… |
| framework_id | string | – | Optional framework ID |
| max_retries | integer | – | – |
| mode | string | yes | Campaign mode for the selected domain |
| output | string | – | – |
| policy_ids | array | – | Optional explicit policy IDs |
| review_job | string | – | Family review job id for controls review-fix |
| system_id | string | – | Optional: The system ID or name |
| working_directory | string | – | Optional working directory for executors |
No output schema declared.
No examples provided.
preview_campaign ~281
After check_campaign_runtime reports launch_ready=true, resolve and durably freeze a Plan-backed Campaign without activating or dispatching it. This is the MCP equivalent of `pretorin campaign start ... --dry-run`: it uses the shared Campaign coordinator, runs preflight once, creates the deterministic parent/child Plan hierarchy, and returns the confirmation digest plus an informational same-host CLI watch command. Reusing the same idempotency_key with the same normalized request returns the same draft; reusing it with different inputs is an error.
| Name | Type | Req | Description |
|---|---|---|---|
| agent | string | – | Optional shared agent-harness override. |
| campaign_type | string | yes | – |
| concurrency | integer | – | – |
| framework_id | string | yes | – |
| idempotency_key | string | yes | Caller-owned durable preview reservation key; never enters Campaign state or digest. |
| max_retries | integer | – | – |
| model | string | – | – |
| model_provider | string | – | – |
| project_dir | string | – | Optional existing directory inside the MCP server's trusted startup/configured roots; defaults to the startup project. |
| reasoning_effort | string | – | – |
| request_platform_review | boolean | – | – |
| required_source_kinds | array | – | Optional source kinds that must each be ready in the frozen preflight before launch. |
| selector | object | yes | – |
| system_id | string | yes | – |
No output schema declared.
No examples provided.
push_monitoring_event ~254
Push a monitoring event within exactly one active system/framework scope
| Name | Type | Req | Description |
|---|---|---|---|
| allow_unverified_sources | boolean | – | Allow writes when source attestation shows a mismatch. Defaults to false. |
| control_id | string | – | Optional: The control ID. Use canonical IDs from list_controls. NIST/FedRAMP IDs are zero-padded (e.g., ac-02). CMMC IDs use dotted notation (e.g., AC.L2-3.1.1). |
| description | string | – | Optional: Detailed event description |
| event_type | string | – | Event type |
| framework_id | string | – | Optional: Framework ID; defaults to active scope |
| plan_id | string | – | Optional: ID of the agent-authored plan this write is part of. When supplied, the platform write is tagged with the plan and the plan's local produced_artifacts[] audit chain gets an entry. |
| severity | string | – | Event severity |
| step_index | integer | – | Optional: zero-based index of the plan step that triggered this write. Only meaningful when plan_id is also supplied. |
| system_id | string | – | Optional: The system ID or name |
| title | string | yes | Event title |
No output schema declared.
No examples provided.
read_evidence_content ~84
Read a bounded page or text slice of a stored evidence artifact visible to the current platform credential. Use the returned locator and SHA-256 when citing it.
| Name | Type | Req | Description |
|---|---|---|---|
| evidence_id | string | yes | – |
| max_chars | integer | – | – |
| offset | integer | – | – |
| page | integer | – | – |
| system_id | string | yes | The system ID or name |
No output schema declared.
No examples provided.
recipe_asset_inventory_aws_baseline__produce_diff ~87
[Recipe asset-inventory-aws-baseline (official)] Enumerate AWS EC2 instances and return {added, modified, decommissioned} vs last_seen_inventory. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| last_seen_inventory | array | – | Current platform asset inventory rows; the script diffs against this list. |
No output schema declared.
No examples provided.
recipe_asset_inventory_azure_baseline__produce_diff ~87
[Recipe asset-inventory-azure-baseline (official)] Enumerate Azure Compute VMs and return {added, modified, decommissioned} vs last_seen_inventory. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| last_seen_inventory | array | – | Current platform asset inventory rows; the script diffs against this list. |
No output schema declared.
No examples provided.
recipe_asset_inventory_iac_workspace__produce_diff ~110
[Recipe asset-inventory-iac-workspace (official)] Scan the cwd for IaC files, normalize the declared resources, and return {added, modified, decommissioned} vs last_seen_inventory. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| last_seen_inventory | array | – | Current platform asset inventory rows; the script diffs against this list. |
| root | string | – | Directory to scan. Defaults to the CLI's cwd. |
No output schema declared.
No examples provided.
recipe_asset_inventory_k8s_baseline__produce_diff ~144
[Recipe asset-inventory-k8s-baseline (official)] Enumerate K8s nodes + workload controllers + LoadBalancer Services and return {added, modified, decommissioned} vs last_seen_inventory. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| last_seen_inventory | array | – | Current platform asset inventory rows; the script diffs against this list. |
| namespace_environment_map | string | – | Optional JSON object of namespace-to-environment overrides. Values are normalized to the platform enum {dev, dr, other, prod, staging}; set a namespace value to empty/null to leave it unset. |
No output schema declared.
No examples provided.
recipe_ci_evidence_capture__compose_ci_evidence ~207
[Recipe ci-evidence-capture (official)] Compose auditor-facing Markdown evidence from CI/CD observations and redacted command/API output. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| branch_protection | string | – | Branch protection or repository ruleset output |
| environment_protection | string | – | Deployment environment protection output |
| observations | string | yes | Concise agent-written summary of what the CI/CD evidence demonstrates |
| repository | string | yes | Repository or CI/CD project identifier the evidence came from |
| required_checks | string | – | Required status-check evidence, usually from branch protection or ruleset output |
| source_version | string | – | Optional source version anchor such as commit SHA, API timestamp, or workflow run id |
| user_prose | string | – | Optional extra preamble rendered above the observations |
| workflow_runs | string | – | Relevant workflow run or build output, usually from gh run list/view or equivalent |
No output schema declared.
No examples provided.
recipe_cloud_aws_baseline__run_scan ~94
[Recipe cloud-aws-baseline (official)] Pull the manifest, run AWS-cloud checks, return per-run summary + rule-level details. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| region | string | – | Optional AWS region (defaults to AWS_REGION env / aws-cli default) |
| stig_id | string | yes | STIG benchmark id targeting AWS-cloud controls |
No output schema declared.
No examples provided.
recipe_cloud_azure_baseline__run_scan ~90
[Recipe cloud-azure-baseline (official)] Pull the manifest, run Azure-cloud checks, return per-run summary + rule-level details. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| stig_id | string | yes | STIG benchmark id targeting Azure-cloud controls |
| subscription | string | – | Optional subscription id (defaults to az CLI default) |
No output schema declared.
No examples provided.
recipe_code_evidence_capture__compose_snippet ~232
[Recipe code-evidence-capture (official)] Compose the auditor-facing markdown body: prose preamble + fenced snippet + horizontal rule + italic provenance footer. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| commit_hash | string | – | Optional git commit hash |
| is_uncommitted | boolean | – | True when the snippet reflects working-tree state ahead of the commit |
| language | string | – | Fence language tag (python, yaml, json, etc.). Empty string is fine. |
| line_range | string | – | Optional line range in 'N-M' form |
| secrets_redacted | integer | – | Count of secrets the redactor removed (from the redact_secrets tool's secrets_count field). Drives the footer's redaction summary. |
| snippet | string | yes | The snippet to embed (already redacted by the redact_secrets tool) |
| source_path | string | yes | Path or URL the snippet came from; required for the provenance footer to render |
| user_prose | string | – | Optional preamble paragraph rendered above the code fence |
No output schema declared.
No examples provided.
recipe_code_evidence_capture__redact_secrets ~86
[Recipe code-evidence-capture (official)] Run pretorin's secret redactor over the supplied text and return the redacted body plus per-kind counts. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| text | string | yes | Raw text to scan and redact (typically a file's contents or an excerpt) |
No output schema declared.
No examples provided.
recipe_inspec_baseline__run_scan ~100
[Recipe inspec-baseline (official)] Pull the test manifest for the requested STIG, run the InSpec scanner against the target, and return a per-run summary with rule-level pass/fail details. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| stig_id | string | yes | STIG benchmark id (matches the recipe-level param) |
| target | string | – | InSpec target string |
No output schema declared.
No examples provided.
recipe_manual_attestation__run_scan ~122
[Recipe manual-attestation (official)] Apply the supplied per-rule attestations against the manifest, return per-run summary + rule-level details. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| attestations | array | – | List of {rule_id, status, note} attestations the calling agent has gathered |
| stig_id | string | – | STIG benchmark id whose manual rules will be attested |
| subject | string | – | Owner-attested operating record or review-note subject when no STIG is supplied |
No output schema declared.
No examples provided.
recipe_openscap_baseline__run_scan ~111
[Recipe openscap-baseline (official)] Pull the test manifest, run OpenSCAP against the local host, and return per-run summary + rule-level details. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| datastream | string | – | Optional datastream path |
| profile | string | – | Optional XCCDF profile id (required for SSG datastreams to select rules) |
| stig_id | string | yes | STIG benchmark id |
No output schema declared.
No examples provided.
recipe_policy_q_answer__redact_answer ~72
[Recipe policy-q-answer (official)] Run the candidate answer through pretorin.evidence.redact and return cleaned text + counts. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| answer_text | string | yes | The candidate answer text to redact before submission. |
No output schema declared.
No examples provided.
recipe_postgresql_stig_baseline__apply_remediation ~247
[Recipe postgresql-stig-baseline (official)] After human plan approval, apply the exact AU-10 PostgreSQL settings while preserving existing preload libraries, restart the verified target, verify PASS, and return passing submit_test_results arguments. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| action_id | string | yes | Exact executable plan action already transitioned to in_progress |
| confirm | boolean | yes | Explicit execution acknowledgement; authoritative approval is verified from the bound platform plan |
| container | string | yes | Docker container name or id hosting PostgreSQL 16 |
| database_name | string | – | Database used for the psql connection |
| database_user | string | – | PostgreSQL role used for ALTER SYSTEM and verification |
| issue_id | string | yes | Exact scanner-derived AU-10 Issue in the active system/framework/control scope |
| plan_id | string | yes | Exact approved remediation plan belonging to issue_id |
| rule_id | string | yes | Exact rule id; must be SV-261860r1000977_rule |
| stig_id | string | yes | Exact benchmark id; must be CD_Postgres_16_STIG |
No output schema declared.
No examples provided.
recipe_postgresql_stig_baseline__run_scan ~156
[Recipe postgresql-stig-baseline (official)] Verify manifest applicability, inspect the exact PostgreSQL settings, and return the one-rule result plus submit_test_results arguments. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| container | string | yes | Docker container name or id hosting PostgreSQL 16 |
| database_name | string | – | Database used for the psql connection |
| database_user | string | – | PostgreSQL role used for SHOW commands |
| rule_id | string | yes | Exact rule id; must be SV-261860r1000977_rule |
| stig_id | string | yes | Exact benchmark id; must be CD_Postgres_16_STIG |
No output schema declared.
No examples provided.
recipe_scope_artifact_compose__compose_document ~305
[Recipe scope-artifact-compose (official)] Wrap a body fragment (inline SVG diagram or a render_table table) in the Pretorin brand document shell with a provenance footer, write it to a file, and return the file path for upload_evidence. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| body_html | string | yes | The artifact body: inline SVG (using the kit's diagram classes) or table HTML from render_table. |
| capture_query | string | – | The query/command used to capture the data (e.g. 'az resource graph'). |
| producer | string | – | Producer string for provenance (e.g. 'pretorin-cli scope-artifact-compose v0.1.0'). |
| secrets_redacted | integer | – | Count of secret-shaped values redacted before composition. |
| source_label | string | – | The source the artifact was derived from (e.g. 'azure_tenant'). |
| source_locator | string | – | Locator within the source (e.g. subscription id). |
| subtitle | string | – | One-line subtitle, e.g. 'system · framework · generated <date>'. |
| title | string | yes | Document title (e.g. 'Authorization boundary'). |
| wide | boolean | – | Render in the wide document shell so a large diagram is not squeezed into the prose column. Set true for diagram kinds (boundary_diagram, network_dfd); leave false for narrow tables. |
No output schema declared.
No examples provided.
recipe_scope_artifact_compose__redact_secrets ~80
[Recipe scope-artifact-compose (official)] Run pretorin's secret redactor over text destined for an artifact body. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| text | string | yes | Raw text (e.g. SVG labels or table cells) to scan and redact. |
No output schema declared.
No examples provided.
recipe_scope_artifact_compose__render_table ~100
[Recipe scope-artifact-compose (official)] Render a brand-styled, fully-escaped HTML table for a tabular artifact (PPSM, interconnection). Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| caption | string | – | Optional table caption. |
| headers | array | yes | Column headers. |
| rows | array | yes | Row data — each row is an array of cell strings. |
No output schema declared.
No examples provided.
recipe_scope_q_answer__redact_answer ~72
[Recipe scope-q-answer (official)] Run the candidate answer through pretorin.evidence.redact and return cleaned text + counts. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| answer_text | string | yes | The candidate answer text to redact before submission. |
No output schema declared.
No examples provided.
recipe_ssp_gap_analysis__compose_excerpt_evidence ~120
[Recipe ssp-gap-analysis (official)] Compose auditor-facing Markdown evidence from one or more cited document snippets. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| assessment_note | string | – | Brief explanation of how the cited excerpt informs the assessment |
| finding_label | string | yes | Short label for what this excerpt demonstrates |
| snippets | array | yes | Snippet objects returned by search_corpus or detect_control_claims |
| target_control | string | yes | Control the excerpt supports or informs |
No output schema declared.
No examples provided.
recipe_ssp_gap_analysis__detect_control_claims ~104
[Recipe ssp-gap-analysis (official)] Detect NIST-style control IDs and CCI IDs in the corpus and return cited occurrences grouped by identifier. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| corpus_path | string | yes | Corpus JSON path returned by ingest_documents |
| focus_controls | array | – | Optional control IDs to restrict results |
| max_occurrences | integer | – | Maximum occurrences returned per identifier |
No output schema declared.
No examples provided.
recipe_ssp_gap_analysis__ingest_documents ~111
[Recipe ssp-gap-analysis (official)] Extract supported document text into a local page/chunk corpus JSON file with file hashes and warnings. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| include_globs | array | – | Optional glob patterns to include when path is a directory |
| max_file_bytes | integer | – | Maximum bytes per file; larger files are skipped with a warning |
| path | string | yes | File or directory path to ingest |
No output schema declared.
No examples provided.
recipe_ssp_gap_analysis__search_corpus ~96
[Recipe ssp-gap-analysis (official)] Search the ingested document corpus and return top cited snippets without loading the full corpus into context. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| corpus_path | string | yes | Corpus JSON path returned by ingest_documents |
| query | string | yes | Search query |
| top_k | integer | – | Maximum number of snippets to return |
No output schema declared.
No examples provided.
recipe_workspace_capture__compose_artifact ~162
[Recipe workspace-capture (official)] Compose an auditor-facing Markdown evidence body with provenance for any workspace artifact. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | yes | Redacted artifact content to embed |
| secrets_redacted | integer | – | Number of secret-shaped values redacted before composition |
| source_label | string | – | Human-readable artifact label |
| source_locator | string | – | Optional section, selector, page, or line locator |
| source_path | string | yes | Workspace-relative path, directory, glob, or summary label for the captured artifact |
| source_version | string | – | Optional source version anchor |
| user_prose | string | – | Short explanation of what the artifact demonstrates |
No output schema declared.
No examples provided.
recipe_workspace_capture__redact_secrets ~66
[Recipe workspace-capture (official)] Run pretorin's secret redactor over the supplied workspace artifact text. Requires an active recipe execution context for this recipe (call start_recipe first).
| Name | Type | Req | Description |
|---|---|---|---|
| text | string | yes | Raw artifact text to scan and redact |
No output schema declared.
No examples provided.
record_campaign_assessment ~124
Record the independent assessment axis only for a Campaign item that has no frozen objective roster. Objective-backed items must instead use record_campaign_objective_disposition exactly once per UUID; their aggregate assessment is derived. grounded requires scoped evidence, gap requires an authoritative control-gap Issue, and needs_input requires a limitation. This does not alter execution or review.
| Name | Type | Req | Description |
|---|---|---|---|
| assessment | string | yes | – |
| evidence_ids | array | yes | – |
| issue_id | string | – | – |
| limitations | array | yes | – |
| plan_id | string | yes | – |
| step_index | integer | yes | – |
No output schema declared.
No examples provided.
record_campaign_evidence_disposition ~126
Record retained, remapped, superseded, or needs_input for the frozen evidence artifact/set. The server verifies every evidence ID remains inside the assigned control. Remapping requires a matching typed evidence_link artifact; superseding records replacements without deleting data.
| Name | Type | Req | Description |
|---|---|---|---|
| disposition | string | yes | – |
| evidence_ids | array | yes | – |
| limitations | array | yes | – |
| plan_id | string | yes | – |
| reason | string | yes | – |
| step_index | integer | yes | – |
| superseding_evidence_ids | array | yes | – |
| target_control_id | string | – | – |
No output schema declared.
No examples provided.
record_campaign_issue_disposition ~108
Record one bounded outcome for the exact frozen Issue. The server re-reads the assigned canonical Issue and verifies lifecycle state and evidence before persisting it. This does not approve treatment, accept risk, or void an Issue.
| Name | Type | Req | Description |
|---|---|---|---|
| disposition | string | yes | – |
| evidence_ids | array | yes | – |
| limitations | array | yes | – |
| next_action | string | – | – |
| plan_id | string | yes | – |
| reason | string | yes | – |
| step_index | integer | yes | – |
No output schema declared.
No examples provided.
record_campaign_objective_disposition ~105
Record one bounded process disposition for one frozen assessment-objective UUID. grounded requires persisted evidence IDs; needs_input requires a concrete limitation. This does not approve the parent control and stores no narrative body.
| Name | Type | Req | Description |
|---|---|---|---|
| disposition | string | yes | – |
| evidence_ids | array | yes | – |
| issue_id | string | – | – |
| limitations | array | yes | – |
| objective_uuid | string | yes | – |
| plan_id | string | yes | – |
| step_index | integer | yes | – |
No output schema declared.
No examples provided.
What is the Pretorin Compliance MCP server?
Pretorin Compliance is an MCP server listed in the public MCP registry as io.github.pretorin-ai/pretorin. Access Pretorin controls, evidence, narratives, and local Plan-backed Campaigns from AI tools. This page covers its PyPI package (pretorin).
Is the Pretorin Compliance MCP server safe to use?
Pretorin Compliance scores 63 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 22 September 2026. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Pretorin Compliance MCP server expose?
Pretorin Compliance exposes 270 tools: list_frameworks, get_framework, list_control_families, list_controls, get_control, and 265 more. Their descriptions and schemas cost roughly 37,576 tokens of context every time the server is loaded.
Is the Pretorin Compliance MCP server still maintained?
Pretorin Compliance is still listed as active in the MCP registry. We last reached this channel on 22 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the Pretorin Compliance MCP server under?
Pretorin Compliance declares the Apache-2.0 licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.