Guardrails

Guardrails

ToolDescriptionPermission
list_peer_messagesList held messages as JSON: {"messages":[{"message_id":"id","expires_at":"ISO-8601"}]}.None
read_peer_messageReturn a held message as text, or refusal feedback with remedy offers.None
get_openappa_yellRead a saved OpenAPPA report from the current organization, including its originating user or service account.log:read
resolve_openappa_yellMark an OpenAPPA yell resolved, or reopen it with resolved=false.log:read
list_openappa_yellsList the organization's saved OpenAPPA yells, newest first, with each one's id, session, tool call, kind (agent, or approval_waived / block_waived for a call the Break the glass settings let throug...log:read
list_openappa_consultsList the external consults OpenAPPA recorded for one session, newest first: every annotator, context provider, authority, sanitizer and audience source it asked, with the outcome, the HTTP status, ...log:read
create_guardrails_repositoryCreate a private policy repository from the OpenAPPA configuration template, seed it with the current policy and battery declarations, and start Git sync.organizationSettings:update
connect_guardrails_repositoryMake a policy file in an existing GitHub repository or GitLab project the organization's OpenAPPA policy source, pull it now, and keep it in sync.organizationSettings:update
sync_guardrails_repositoryPull the policy file from the connected Git repository now instead of waiting for the next scheduled sync, so a merged policy or validation pull request takes effect.organizationSettings:update
yellSend feedback about OpenAPPA, with a diagnostic archive for review in the Guardrails Yells tab.None
get_guardrails_policyRead organization.appa.toml and its revision before changing guardrails.guardrailsPolicy:read
inspect_guardrails_serverInspect one caller-readable MCP catalog's stored tools and current policy coverage.guardrailsPolicy:read
list_guardrails_battery_fitsList the batteries that fit the MCP servers you can see and are not declared yet, or only those fitting one server when mcpServerId is a catalog ID.guardrailsPolicy:read
validate_guardrails_policyValidate proposed organization.appa.toml without applying changes.guardrailsPolicy:read
preview_guardrails_policy_changeValidate a proposed change to organization.appa.toml and return its unified diff and changed line counts.guardrailsPolicy:read
update_guardrails_policyPublish a change to organization.appa.toml.guardrailsPolicy:update
bind_guardrails_credentialBind one battery credential variable to a runtime credential key, or pass key null to unbind it.guardrailsPolicy:update
get_openappa_policy_testsRead the authoritative .appa validation files, their version, configured directory and accepted Git commit.guardrailsPolicy:read
run_openappa_policy_testsReplay saved validations against the current policy and record the result in validation run history.guardrailsPolicy:update
preview_guardrails_validation_changeValidate a proposed change to the .appa validation files and replay it.guardrailsPolicy:read
update_guardrails_validationSave a change to the .appa validation files.guardrailsPolicy:update
get_guardrails_policy_change_statusCheck the review state of an OpenAPPA policy pull request and whether Git sync has processed the merged policy.guardrailsPolicy:read
get_remedy_plansRead why the organization's guardrails policy blocked a tool call, and which remedy plans the policy offers.None
execute_remedy_planApply a remedy plan that the organization's guardrails policy offers for a blocked call.None
list_runtime_credentialsList reusable credential definitions visible to the caller, including whether a personal or organization connection is configured.credential:read
get_runtime_credentialRead one reusable credential definition and its usage.credential:read
create_runtime_credentialCreate credential metadata.credential:create
update_runtime_credentialUpdate metadata for an existing credential.update on the credential (granted per item)
delete_runtime_credentialDelete an unused credential and its connection.delete on the credential (granted per item)
request_runtime_credential_setupAsk the person to create and connect a GitHub App through the native chat dialog.credential:create
request_battery_credentialsShow the person one card in Archestra chat for the tokens these batteries need: what each battery adds, how to make its token, and a picker of the organization's credentials with an option to add a...credential:create

list_peer_messages

Required RBAC permission: None

This tool takes no arguments.

read_peer_message

Required RBAC permission: None

Input

ParameterTypeRequiredDescription
message_idstringYes

get_openappa_yell

Required RBAC permission: log:read

Input

ParameterTypeRequiredDescription
idstringYes

resolve_openappa_yell

Required RBAC permission: log:read

Input

ParameterTypeRequiredDescription
idstringYes
resolvedbooleanNofalse reopens a resolved yell

list_openappa_yells

Required RBAC permission: log:read

Input

ParameterTypeRequiredDescription
status"unresolved" | "resolved" | "all"NoOnly unresolved or resolved yells; all by default.
sessionIdstringNoOnly the yells of this session.
searchstringNoOnly yells whose message contains this text.
cursorstringNoThe nextCursor of the previous call, with the same filters, for the next page.

list_openappa_consults

Required RBAC permission: log:read

Input

ParameterTypeRequiredDescription
sessionIdstringYesThe session to read, such as the sessionId of a yell.
outcome"answered" | "unregistered" | "unreachable" | "dismissed" | "non_success" | "timeout" | "transport" | "malformed" | "oversized" | "unsupported_version" | "module_error" | "module_panicked"NoOnly consults with this outcome, such as non_success.
externalNamestringNoOnly consults of this external, such as github.repository-visibility.
role"authority" | "sanitizer" | "annotator" | "audience_source" | "input" | "context_provider"NoOnly consults of externals in this role, such as annotator.
cursorstringNoThe nextCursor of the previous call, with the same filters, for the next page.

create_guardrails_repository

Required RBAC permission: organizationSettings:update

Input

ParameterTypeRequiredDescription
ownerstringYes
namestringYes
githubAppConfigIdstringNo
gitlabTokenIdstringNo
interval"15m" | "1h" | "1d"No

connect_guardrails_repository

Required RBAC permission: organizationSettings:update

Input

ParameterTypeRequiredDescription
repostringYesThe existing repository, as owner/name (GitLab: group/subgroup/project).
pathstringNoRepository-relative path of the policy file.
refstring | nullNoBranch, tag, or commit to follow. Omit to follow the default branch.
githubAppConfigIdstringNoAn organization GitHub App, for a GitHub repository.
gitlabTokenIdstringNoA GitLab access token, for a GitLab project.
interval"15m" | "1h" | "1d"No

sync_guardrails_repository

Required RBAC permission: organizationSettings:update

This tool takes no arguments.

yell

Required RBAC permission: None

Input

ParameterTypeRequiredDescription
messagestringYes
with_trajectorybooleanYes

get_guardrails_policy

Required RBAC permission: guardrailsPolicy:read

Input

ParameterTypeRequiredDescription
composedboolean | nullNoAlso return effective.content, the composed policy text. Omit it unless you need the included batteries' rules.

inspect_guardrails_server

Required RBAC permission: guardrailsPolicy:read

Input

ParameterTypeRequiredDescription
mcpServerIdstringYesThe exact MCP catalog ID to inspect.
detail"summary" | "full"Nosummary for a coverage overview; full adds input schemas, full descriptions and rule details.
toolsstring[]NoOnly these tools, by name or full name (<prefix>__<name>). Empty or omitted means every tool.
offsetintegerNoThe first row to return; pass the previous nextOffset.

list_guardrails_battery_fits

Required RBAC permission: guardrailsPolicy:read

Input

ParameterTypeRequiredDescription
mcpServerIdstring | nullNoThe catalog ID of one MCP server. Omit it for every server you can see.

validate_guardrails_policy

Required RBAC permission: guardrailsPolicy:read

Input

ParameterTypeRequiredDescription
contentstringYes

preview_guardrails_policy_change

Required RBAC permission: guardrailsPolicy:read

Input

ParameterTypeRequiredDescription
contentstring | nullNoThe complete policy text. Use it only for a first policy or a full rewrite. Leave it empty when you send edits.
editsobject[] | nullNoExact-text replacements applied in order to the current policy, each to the result of the one before. Use them to change an existing policy. To insert rules, replace an anchor line with the new rules followed by that same anchor line.
edits[].oldTextstringYesExact text copied from the current policy, including whitespace and line breaks. It must match one place unless replaceAll is true.
edits[].newTextstringYesThe text that replaces oldText. Empty deletes oldText.
edits[].replaceAllboolean | nullNoReplace every match of oldText instead of exactly one.
expectedRevisionintegerYesThe revision get_guardrails_policy returned.

update_guardrails_policy

Required RBAC permission: guardrailsPolicy:update

Input

ParameterTypeRequiredDescription
contentstring | nullNoThe complete policy text. Use it only for a first policy or a full rewrite. Leave it empty when you send edits.
editsobject[] | nullNoExact-text replacements applied in order to the current policy, each to the result of the one before. Use them to change an existing policy. To insert rules, replace an anchor line with the new rules followed by that same anchor line.
edits[].oldTextstringYesExact text copied from the current policy, including whitespace and line breaks. It must match one place unless replaceAll is true.
edits[].newTextstringYesThe text that replaces oldText. Empty deletes oldText.
edits[].replaceAllboolean | nullNoReplace every match of oldText instead of exactly one.
expectedRevisionintegerYesThe revision get_guardrails_policy returned.
titlestringNo
summarystringNo

bind_guardrails_credential

Required RBAC permission: guardrailsPolicy:update

Input

ParameterTypeRequiredDescription
variablestringYesThe battery's credential variable, e.g. APPA_PROVIDER_GITHUB_TOKEN.
keystring | nullYesThe runtime credential key to bind, or null to unbind.

get_openappa_policy_tests

Required RBAC permission: guardrailsPolicy:read

This tool takes no arguments.

run_openappa_policy_tests

Required RBAC permission: guardrailsPolicy:update

Input

ParameterTypeRequiredDescription
pathstringNoA saved validation file's path, as get_openappa_policy_tests lists it. Omit to run every saved validation.

preview_guardrails_validation_change

Required RBAC permission: guardrailsPolicy:read

Input

ParameterTypeRequiredDescription
expectedRevisionintegerYes
expectedVersionstringYes
changesobjectNo
changes.upsertobject[]No
changes.upsert[].pathstringYes
changes.upsert[].contentstringYes
changes.deletestring[]No

update_guardrails_validation

Required RBAC permission: guardrailsPolicy:update

Input

ParameterTypeRequiredDescription
expectedRevisionintegerYes
expectedVersionstringYes
changesobjectNo
changes.upsertobject[]No
changes.upsert[].pathstringYes
changes.upsert[].contentstringYes
changes.deletestring[]No
titlestringNo
summarystringNo

get_guardrails_policy_change_status

Required RBAC permission: guardrailsPolicy:read

Input

ParameterTypeRequiredDescription
numberintegerYes

get_remedy_plans

Required RBAC permission: None

Input

ParameterTypeRequiredDescription
toolstringYes
argumentsstring | objectYes
rulingstringYes
noticeobjectYes
notice.v1Yes
notice.call_idstringYes
notice.namespacestringNo
notice.customtrueNo

execute_remedy_plan

Required RBAC permission: None

Input

ParameterTypeRequiredDescription
offer_idstringNo
planstringNo
labelobjectNo
label.truststringNo
label.audiencestring[]No
return_schemaobjectNo

list_runtime_credentials

Required RBAC permission: credential:read

This tool takes no arguments.

get_runtime_credential

Required RBAC permission: credential:read

Input

ParameterTypeRequiredDescription
keystringYes

create_runtime_credential

Required RBAC permission: credential:create

Input

ParameterTypeRequiredDescription
keystringYes
namestringYes
kind"secret" | "github_app" | "github_app_user" | "gitlab_token"No
githubUrlstring | nullNo
appIdstring | nullNo
installationIdstring | nullNo
githubClientIdstring | nullNo
githubAppCredentialKeystring | nullNo
gitlabUrlstring | nullNo
descriptionstringNo
iconstring | nullNo
allowPersonalbooleanNo
allowOrganizationbooleanNo

update_runtime_credential

Required RBAC permission: update on the credential (granted per item)

Input

ParameterTypeRequiredDescription
keystringYes
changesobjectYes
changes.namestringNo
changes.githubUrlstring | nullNo
changes.gitlabUrlstring | nullNo
changes.appIdstring | nullNo
changes.installationIdstring | nullNo
changes.githubClientIdstring | nullNo
changes.githubAppCredentialKeystring | nullNo
changes.descriptionstringNo
changes.iconstring | nullNo

delete_runtime_credential

Required RBAC permission: delete on the credential (granted per item)

Input

ParameterTypeRequiredDescription
keystringYes

request_runtime_credential_setup

Required RBAC permission: credential:create

Input

ParameterTypeRequiredDescription
kind"github_app"Yes

request_battery_credentials

Required RBAC permission: credential:create

Input

ParameterTypeRequiredDescription
batteriesstring[]YesThe battery names, e.g. slack or github.

Output

FieldTypeRequiredDescription
batteriesobject[]Yes
batteries[].namestringYes
batteries[].titlestringYes
batteries[].benefitstring | nullYes
batteries[].setupstring[]Yes
batteries[].credentialsstring[]Yes