Veriswarm Mcp

io.github.veriswarmPublished by GitHub account veriswarmv0.6.0Updated Nov 4, 2026

VeriSwarm MCP Server — Trust infrastructure for AI agents via Model Context Protocol

Overview

Veriswarm's local MCP server; no sign-in required; STDIO; 102 tools.

No AI overview yet: these facts come from the registry entry and the server itself.

Installation

In SourceWeft

  1. Open Veriswarm Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

VeriSwarm SDK & Integrations

[pip veriswarm] [pip veriswarm-mcp] [npm @veriswarm/sdk] [MCP Registry]

Official client libraries, MCP server, and plugins for VeriSwarm — trust infrastructure for AI agents.

Packages

PackageLanguageInstallDescription
Python SDKPythonpip install veriswarmREST client with Workflows, credential issuance, scoring profiles, LangChain adapter
Node.js SDKJavaScriptnpm install @veriswarm/sdkESM client for decisions, events, Workflows, agent management
MCP ServerPythonpip install veriswarm-mcp102 MCP tools for trust scoring, Guard, Passport, Vault, Workflows, Compliance (OWASP/EU AI Act/NIST/ISO 42001), Cedar policies + ABAC attributes, SRE, context governance, and content provenance (EU AI Act Art. 50). Works with Claude Desktop, Cursor, and any MCP client. (approve_jit_grant and issue_jit_token are deliberately not exposed to the LLM — those actions live behind an authenticated session in the web UI.)
OpenClaw PluginTypeScriptopenclaw plugins install veriswarm11 tools + 5 hooks for OpenClaw agents. Local secret redaction, PII tokenization, policy enforcement, Session Sentry, audit. Per-feature enable/disable.
GitHub ActionPythonGitHub MarketplaceCI/CD trust gate — check agent trust scores in your pipeline
JSON SchemasJSONnpm install @veriswarm/schemasSchema definitions for events, profiles, scores, and workflows

Secret & PII protection at a glance

The packages share setting names but not behaviour. "Redacted locally" means replaced in-process, before any network call; "fails closed" lists what blocks (or withholds) instead of passing data through when a check can't run.

PackageSetting (default)Redacted locallySent to the VeriSwarm APIFails closed
Node SDKsecretsDetection (false)When on, guardOutboundText() redacts provider-prefix secrets (ghp_, sk-, AKIA, …). When off it is a no-op. Other methods are not filteredWhen on and a secret was found, the already-redacted text, for PII tokenization. Everything else you pass to a method is sent as-isguardOutboundText() returns the locally redacted text if tokenization fails
Python SDKsecrets_detection (False)Same as the Node SDK, via guard_outbound_text()Same as the Node SDKSame as the Node SDK
Python adapters (decorator, Claude Agent SDK, OpenAI Agents, CrewAI; LangChain handler)guard_secrets (True), guard_pii (True). The LangChain handler always guards secrets, does no PII tokenization, and enforces decisions only with enforce=TrueSecrets in string tool arguments (including strings nested in dict/list/tuple arguments), string tool output, error messages and audit eventsThe trust-decision check (tool name), and secret-redacted strings for PII tokenization; wrapped functions receive the tokenized arguments (strings, and strings inside dict/list/tuple arguments; other types pass unchanged)Anything but an explicit allow decision (including review and API errors) blocks the call; an input PII-tokenization failure blocks it; output that can't be tokenized, or a secret check that errors, is replaced with [VS:REDACTED:guard_unavailable]. on_deny="log" turns decision blocking off (a non-allow decision or decision-check error is logged and the call runs); a PII-tokenization outage still blocks
MCP Guard hooks (Claude Code)GUARD_SECRETS_DETECTION (off), GUARD_BLOCK_PROMPT_PII (on), GUARD_PII_FAIL_OPEN (off)Always: secrets in prompts (the prompt is blocked), MCP tool arguments and MCP tool responsesWith VERISWARM_API_KEY set: prompts (a prompt with a secret is blocked before this) and secret-redacted tool arguments/responses, for PII tokenization. With GUARD_SECRETS_DETECTION=1, tool-argument strings that contain a secret are sent unredacted first, for recoverable tokensSecret checks block. A tool-argument PII scan that can't finish blocks the call (unless GUARD_PII_FAIL_OPEN=1); a tool-response scan that can't finish withholds the output. The prompt PII check fails open with a warning
OpenClaw pluginsecretsDetection (false), piiEnabled (true), failOpen (false)Always: secrets in tool params and outbound messages (with secretsDetection on, these block / cancel instead). Tool results: secrets always, structured PII patterns when piiEnabledSecret-redacted param strings and message text, for PII tokenization and Session SentryPII tokenization, Session Sentry and hook errors block / cancel / withhold unless failOpen; missing secret rules always block. With secretsDetection off, another plugin's approval request can drop the param rewrite, so the tool itself may receive the secret
GitHub Actionfail-on-pii, fail-on-injection, fail-on-deny, fail-on-ci-exfil (all true)Nothing. Sensitive-named files (.env, keys, .git/) and files outside the workspace are skippedScanned file chunks (scan mode) and CI files/diffs (ci-exfil mode), as-isAn enabled gate fails on API errors or unexpected responses. The decision gate fails only on deny: a review decision passes CI, unlike the Python adapters

Quick Start

MCP Server (Recommended)

Add to your MCP client config (Claude Desktop, Cursor, etc.):

json
{  "mcpServers": {    "veriswarm": {      "command": "python3",      "args": ["-m", "veriswarm_mcp"],      "env": {        "VERISWARM_API_URL": "https://api.veriswarm.ai",        "VERISWARM_API_KEY": "YOUR_API_KEY"      }    }  }}

Or use the setup CLI:

bash
pip install veriswarm-mcpveriswarm-setup --platform claude --api-key YOUR_API_KEY

This installs the MCP server, Guard hooks (PII protection + activity logging), and Guard Proxy config.

Python SDK

python
from veriswarm import VeriSwarmClient
client = VeriSwarmClient("https://api.veriswarm.ai", "YOUR_API_KEY")
# Register an agentagent = client.register_agent({"slug": "my-agent", "display_name": "My Agent"})
# Check if an action should be allowedresult = client.check_decision(agent_id="agt_123", action_type="send_email")print(result["decision"])  # "allow", "review", or "deny"
# Ingest eventsclient.ingest_event(    event_id="evt_001", agent_id="agt_123", source_type="platform",    event_type="task.completed", occurred_at="2026-04-01T00:00:00Z",    payload={"task": "onboarding", "success": True})

Node.js SDK

javascript
import { VeriSwarmClient } from '@veriswarm/sdk'
const client = new VeriSwarmClient({  baseUrl: 'https://api.veriswarm.ai',  apiKey: 'YOUR_API_KEY'})
const result = await client.checkDecision({  agentId: 'agt_123',  actionType: 'send_email'})

OpenClaw Plugin

json5
{  plugins: {    entries: {      veriswarm: {        enabled: true,        config: {          apiKey: "YOUR_API_KEY",          piiEnabled: true,          policyEnabled: true,          injectionScan: true,          auditEnabled: true        }      }    }  }}

Free Plan

Get started with no credit card:

  • 5,000 trust score queries/day
  • Up to 10 agents
  • Unlimited event ingestion
  • Portable credentials issued on demand (rate-limited per plan; see pricing for current limits)

Sign up at veriswarm.ai.

Links

License

MIT

Source: README.md at commit e91b3fa

Tools

102

check_trust

Get an agent's current trust scores, policy tier, and risk band.

Parametersagent_idrequired

check_decision

Check if an agent is allowed to perform an action. Returns allow, review, or deny. Uses x-api-key auth. The agent must belong to the tenant that owns the API key.

Parametersagent_idrequiredaction_typerequiredresource_type

get_my_score

Get your own trust scores with improvement guidance. Requires agent key auth (VERISWARM_AGENT_KEY). Not available with API key only.

Takes no parameters.

get_score_history

Get score history over time for an agent.

Parameterslimitagent_idrequired

get_score_breakdown

Get detailed score breakdown with contributing factors for an agent.

Parametersagent_idrequired

explain_score

Get a human-readable explanation of an agent's current trust scores.

Parametersagent_idrequired

report_action

Report a generic agent behavioral event to VeriSwarm for scoring. event_type: dot-separated event type, e.g. tool.call.success agent_id: the agent performing the action (required) payload: JSON string of additional event metadata (optional)

Parameterspayloadagent_idrequiredevent_typerequired

report_tool_call

Report a tool call event. Shorthand for tool.call.success / tool.call.failure events. agent_id is required by the event ingestion API.

Parameterssuccessagent_idrequiredtool_namerequirederror_typeduration_ms

report_interaction

Report an agent-to-agent interaction event. other_agent_id: the agent being interacted with interaction_type: type of interaction, e.g. delegate, collaborate, query outcome: outcome of the interaction, e.g. success, failure, refused agent_id: the acting agent (required)

Parametersoutcomerequiredagent_idrequiredother_agent_idrequiredinteraction_typerequired

report_incident

Report a security incident or anomalous behavior for Guard review. severity: critical, high, medium, or low description: human-readable description of the incident agent_id: the agent involved (required) pattern_type: optional classification, e.g. prompt_injection, data_exfil, abuse

Parametersagent_idrequiredseverityrequireddescriptionrequiredpattern_type

scan_tool

Scan text/tool content for security threats (injection and moderation). tool_name: name of the tool or MCP server to scan tool_config: optional JSON string with tool configuration/schema details

Parameterstool_namerequiredtool_config

check_tool_allowed

Check whether a tool is permitted under active Guard policies for this workspace. Requires session auth (x-account-access-token). Not available with API key only.

Parameterstool_namerequired

get_findings

List Guard security findings. Optionally filter by agent_id.

Parametersagent_id

kill_agent

Activate the kill switch for an agent, immediately blocking all trust decisions. Works with an API key that a workspace owner or admin has granted the guard.killswitch.write scope (requires server support for that scope), or with an account session (x-account-access-token). agent_id: the agent to kill-switch reason: human-readable reason for the kill switch activation

Parametersreasonrequiredagent_idrequired

unkill_agent

Deactivate the kill switch for an agent, restoring normal trust decision processing. Works with an API key that a workspace owner or admin has granted the guard.killswitch.write scope (requires server support for that scope), or with an account session (x-account-access-token).

Parametersagent_idrequired

tokenize_pii

Remove PII from text, replacing with safe tokens like [VS:EMAIL:a1b2c3]. Use BEFORE sending text containing personal data to an LLM. The LLM will see tokens instead of real emails, phone numbers, SSNs, etc. Tokens carry type information so the LLM knows what kind of data was there. text: the text that may contain PII agent_id: optional agent ID to associate with the tokenization session_id: optional session ID to group tokens (auto-generated if empty)

Parameterstextrequiredagent_idsession_id

scan_injection

Scan text for prompt injection patterns. Returns is_injection (bool), confidence score, and matched patterns.

Parameterstextrequired

get_pii_session

Get details of a PII tokenization session including all tokens created.

Parameterssession_idrequired

revoke_pii_session

Revoke a PII tokenization session, deleting all stored tokens. Requires session auth (x-account-access-token). Not available with API key only.

Parameterssession_idrequired

list_guard_policies

List all active Guard policies for the workspace. Requires session auth (x-account-access-token). Not available with API key only.

Takes no parameters.

rehydrate_pii

Restore original PII values from VeriSwarm tokens in text. Use AFTER the LLM has processed tokenized text and you need to write the real values back to a database, email, CRM, or other system. text: text containing VeriSwarm tokens like [VS:EMAIL:a1b2c3] session_id: the session ID from the original tokenize_pii call

Parameterstextrequiredsession_idrequired

guard_scan_session

Score one conversation turn for multi-turn exfiltration risk (Session Sentry). Call this once per turn — after the agent has generated its reply and before you send it to the user. Pass a stable ``session_id`` for the entire conversation and a monotonically increasing ``turn_index`` (0, 1, 2 …). The scorer accumulates canary-token egress and system-prompt extraction signals across turns with time decay. Key response fields: - ``blocked`` (bool) — if True, suppress the reply and halt the turn; the enforcement_level and block_threshold explain why. - ``session_score`` — cumulative exfiltration risk for the session (0.0–1.0). - ``turn_value`` — this turn's raw contribution before decay. - ``highest_severity`` — "none" | "low" | "medium" | "high" | "critical". - ``contributions`` — list of scored signals (type, value, weight). - ``enabled`` — False while the tenant is on the free tier (dormant); blocked will always be False in that state. session_id: stable identifier for this conversation (≤64 chars, alphanumeric / hyphens / underscores). Use the same value for every turn in the same conversation. turn_index: zero-based turn counter; must increase monotonically within a session. The scorer uses ordering to apply time decay. user_text: the user's message for this turn (optional but improves signal). agent_text: the agent's reply for this turn — primary exfil surface; always pass this. system_prompt: the system prompt active for this turn (optional; used to detect system-prompt extraction attempts in agent_text). agent_id: optional VeriSwarm agent ID (`agt_*`) to associate the scan with a registered agent's trust record. actor_id: optional caller / user identifier for audit purposes.

Parametersactor_idagent_iduser_textagent_textsession_idrequiredturn_indexrequiredsystem_prompt

get_credentials

Issue a signed JWT Passport credential for the authenticated agent. Requires agent key auth (VERISWARM_AGENT_KEY). Not available with API key only. Also requires the platform signing key to be configured.

Takes no parameters.

verify_credential

Verify a Passport JWT credential and return the decoded trust claims. credential: the JWT string issued by VeriSwarm Passport

Parameterscredentialrequired

verify_identity

Mark an agent as identity-verified in VeriSwarm Passport (admin action). Requires session auth (x-account-access-token). Not available with API key only. agent_id: the agent to mark as verified

Parametersagent_idrequired

check_delegation

Check active delegation grants for an agent. Requires session auth (x-account-access-token). Not available with API key only. agent_id: the agent whose delegations to check scope: optional scope filter, e.g. read, write, admin

Parametersscopeagent_idrequired

query_ledger

Query the immutable Vault audit ledger. Optionally filter by agent. agent_id: filter ledger entries to a specific agent (optional) limit: maximum number of entries to return (default 50)

Parameterslimitagent_id

verify_chain

Verify the hash-chain integrity of the Vault audit ledger. limit: number of recent entries to verify (default 100)

Parameterslimit

export_vault

Create a Vault export job. Returns the job ID and status. export_type: format for the export — json or csv (default json)

Parametersexport_type

register_agent

Register a new agent in VeriSwarm and return its agent_id. slug: URL-safe unique identifier for the agent, e.g. my-coding-agent display_name: human-readable name shown in dashboards description: optional description of the agent's purpose

Parametersslugrequireddescriptiondisplay_namerequired

get_agent

Get a full agent profile including current trust scores and metadata. agent_id: the agent's unique identifier

Parametersagent_idrequired

get_agent_timeline

Get an agent's event timeline. agent_id: the agent's unique identifier limit: maximum number of timeline entries (default 50)

Parameterslimitagent_idrequired

get_agent_flags

Get active moderation flags for an agent. agent_id: the agent's unique identifier

Parametersagent_idrequired

list_agents

List agents in the workspace. Supports search and filtering by policy tier. query: optional search string to filter agents by name or slug tier: optional policy tier filter — tier_0 (most restricted), tier_1, tier_2, tier_3 (most trusted), or all page: page number for pagination (default 1)

Parameterspagetierquery

platform_status

Check VeriSwarm platform health, uptime, and active feature flags.

Takes no parameters.

get_scoring_profile

Get the current workspace's scoring profile and weight configuration. Requires session auth (x-account-access-token). Not available with API key only.

Takes no parameters.

set_scoring_profile

Set the workspace's scoring profile. Requires session auth (x-account-access-token). Not available with API key only. profile_code: one of 'general', 'high_security', 'community', 'enterprise', 'minimal' weight_overrides: optional JSON string of custom weight overrides

Parametersprofile_coderequiredweight_overrides

list_notifications

List recent notifications for the workspace. Requires session auth (x-account-access-token). Not available with API key only.

Parameterslimit

get_ip_allowlist

Get the current IP allowlist configuration for the workspace. Requires session auth (x-account-access-token). Not available with API key only.

Takes no parameters.

set_ip_allowlist

Set the IP allowlist for the workspace. Requires session auth (x-account-access-token). Not available with API key only. cidrs: comma-separated list of CIDR ranges, e.g. '10.0.0.0/8,192.168.1.0/24' enabled: whether to enable the allowlist (default True)

Parameterscidrsrequiredenabled

get_custom_domain

Get the custom domain configuration for the workspace. Requires session auth (x-account-access-token). Not available with API key only.

Takes no parameters.

set_custom_domain

Set a custom domain for the workspace. Requires session auth (x-account-access-token). Not available with API key only. domain: the custom domain, e.g. 'trust.mycompany.com'

Parametersdomainrequired

list_team_members

List team members in the current workspace. Requires session auth (x-account-access-token). Not available with API key only.

Takes no parameters.

invite_team_member

Invite a new team member to the workspace. Requires session auth (x-account-access-token). Not available with API key only. email: the email address to invite role: 'admin' or 'member' (default 'member')

Parametersroleemailrequired

get_agent_analytics

Get aggregated quality analytics for an agent. agent_id: the agent to analyze days: lookback period (1-365) Returns resolution rate, accuracy, tone, efficiency, security scores, escalation rate, cost, and grade distribution.

Parametersdaysagent_idrequired

get_cost_recommendations

Get cost optimization recommendations for an agent. Analyzes conversation patterns and suggests: model downgrades, KB improvements, prompt optimization, and security reviews.

Parametersdaysagent_idrequired

list_red_team_attacks

List available adversarial red team attack patterns. Returns attack counts by category: injection, PII extraction, policy boundary, off-topic, and jailbreak.

Takes no parameters.

check_tool_permission

Check if an agent has trust-gated permission to use a tool. agent_id: the agent requesting the tool tool_name: name of the tool to check (e.g., 'process_refund') Returns whether the tool is allowed based on the agent's trust score.

Parametersagent_idrequiredtool_namerequired

score_conversation_security

Compute a security grade (A-F) for a conversation. Uses Guard + Vault audit data to score PII exposure, injection resistance, policy adherence, tool authorization, and grounding.

Parametersconversation_idrequiredinjection_blockedpolicy_violationsinjection_attemptspii_tokens_in_response

forget_contact

GDPR: Delete all data associated with a contact. Requires session auth (x-account-access-token). Not available with API key only. contact_identifier: email, phone, or contact ID to purge contact_type: 'email', 'phone', or 'contact_id' dry_run: if True, shows what would be deleted without deleting Purges from PII tokens, events, and KB chunks. Generates a cryptographic deletion proof stored in Vault.

Parametersdry_runcontact_typecontact_identifierrequired

list_deletion_records

List GDPR deletion records with verification hashes. Requires session auth (x-account-access-token). Not available with API key only.

Takes no parameters.

verify_deletion

Verify a GDPR deletion record exists and return its cryptographic proof.

Parametersrecord_idrequired

get_agent_reputation

Get an agent's cross-platform reputation score. Returns reputation score (0-100), platform count, positive/negative interaction counts, and per-platform breakdown.

Parametersdaysagent_idrequired

get_a2a_history

Get agent-to-agent interaction history. agent_id: the agent to query role: 'requesting' (outbound) or 'receiving' (inbound)

Parametersrolelimitagent_idrequired

get_benchmark_history

Get benchmark results for an agent across versions. Returns scores, pass rates, and promote/review/block recommendations.

Parameterslimitagent_idrequired

get_provider_health

Get health status of all LLM providers. Returns per-provider: success rate, P95 latency, active requests, cooldown status, and consecutive failure count.

Takes no parameters.

list_workflows

List all Cortex Workflows for the current tenant. is_active: optional filter — true for active only, false for inactive only

Parametersis_active

get_workflow

Get details of a specific workflow including recent executions. workflow_id: the workflow ID (starts with wf_)

Parametersworkflow_idrequired

create_workflow

Create a new Cortex Workflow from a JSON definition. name: display name for the workflow slug: URL-safe identifier (lowercase, hyphens ok) definition: the full workflow definition as a JSON string description: optional description of what the workflow does

Parametersnamerequiredslugrequireddefinitionrequireddescription

run_workflow

Manually trigger a workflow execution. workflow_id: the workflow ID to run

Parametersworkflow_idrequired

get_execution

Get the status and step-by-step results of a workflow execution. execution_id: the execution ID (starts with wfx_)

Parametersexecution_idrequired

activate_workflow

Activate a workflow so its triggers (schedule/event/webhook) start firing. workflow_id: the workflow ID to activate

Parametersworkflow_idrequired

deactivate_workflow

Deactivate a workflow, stopping all triggers. workflow_id: the workflow ID to deactivate

Parametersworkflow_idrequired

list_workflow_templates

List available workflow templates (both built-in and custom).

Takes no parameters.

deploy_template

Deploy a workflow template as a new workflow in your workspace. template_id: the template ID (e.g., "builtin:content-pipeline-v2" or a custom template ID)

Parameterstemplate_idrequired

workflow_stats

Get workflow usage statistics: execution counts, success rates, and LLM costs. days: time period in days (default 30, max 90)

Parametersdays

cancel_workflow_execution

Cancel a running or paused workflow execution. execution_id: the execution ID to cancel (starts with wfx_)

Parametersexecution_idrequired

retry_workflow_execution

Retry a failed workflow execution from where it left off. execution_id: the execution ID to retry (starts with wfx_)

Parametersexecution_idrequired

get_owasp_attestation

Get a per-tenant OWASP Agentic AI Top 10 (2026) coverage report. Returns covered/partial/gap status for each of the 10 risks, evidence counts from Guard/Vault, and an overall coverage score.

Takes no parameters.

list_compliance_frameworks

List supported compliance frameworks (eu-ai-act, nist-ai-rmf, iso-42001).

Takes no parameters.

get_compliance_report

Get a per-tenant compliance report for a specific framework. framework_id: 'eu-ai-act' | 'nist-ai-rmf' | 'iso-42001' Returns pass/warn/fail per control with evidence counts and recommendations.

Parametersframework_idrequired

list_cedar_policies

List active Cedar declarative policies for the tenant.

Takes no parameters.

validate_cedar_policy

Validate Cedar policy syntax without persisting. Returns {"valid": true} on success, {"valid": false, "error": "..."} on failure.

Parameterspolicy_textrequired

test_cedar_policy

Dry-run a Cedar policy against test input. Returns the decision.

Parametersagent_idrisk_scoreaction_typeis_verifiedpolicy_textrequiredpolicy_tier

get_sre_dashboard

Combined SRE dashboard — circuit breakers + SLO + error budget + provider health.

Takes no parameters.

get_circuit_breakers

Get current state of all LLM provider circuit breakers (closed/open/half-open).

Takes no parameters.

reset_circuit_breaker

Manually reset a circuit breaker to closed state (e.g., after fixing a provider outage).

Parametersmodelrequiredproviderrequired

get_error_budget

Get error budget status based on tenant SLO targets and recent LLM usage.

Takes no parameters.

get_context_dashboard

Combined context governance dashboard — topics + quality + gaps.

Parametersdays

get_context_gaps

Detect agents with high failure rates and low knowledge base coverage.

Parametersdays

scan_mcp_tools

Scan MCP tool definitions for security risks (pre-deploy audit). tools_json: JSON string of an array of MCP tool definitions Checks for tool poisoning, typosquatting, schema manipulation, rug-pull patterns, prompt injection, and excessive permissions.

Parameterstools_jsonrequired

scan_ci

Scan CI workflow YAML + Dockerfiles for secret-exfiltration risk. files_json: JSON string of an array of file objects, each {"path": str, "content"?: str, "diff"?: str}. Pass "content" (full file at head) for Layer 1 vulnerable-config checks and "diff" (unified diff hunks) for Layer 2 exfil-pattern checks. Returns findings plus a "blocked" decision from the tenant's GuardPolicy enforcement level.

Parametersfiles_jsonrequired

verify_response

Cross-model verification — route a response through multiple LLMs and check consensus. Defends against memory poisoning (OWASP ASI06). Results are logged to Vault.

Parameterspromptrequiredresponserequired

provision_a2a_keys

Provision Ed25519 transport keys for an agent. Returns the public key. After provisioning, the agent's public key appears in agent cards under x-veriswarm-transport. Inter-agent messages can then be cryptographically signed.

Parametersagent_idrequired

label_content

Generate an Ed25519-signed provenance manifest for AI-generated content. Returns the manifest (signature, content hash, metadata). Machine-readable format compatible with EU AI Act Article 50 transparency requirements.

Parametersmodelcontentrequiredagent_idcontent_type

get_content_provenance

Public lookup of a provenance manifest by SHA-256 content hash. Use this to verify whether a piece of content was AI-generated by a VeriSwarm agent. No authentication required on the server side.

Parameterscontent_hashrequired

get_agent_attributes

Read the tenant-defined ABAC attributes for an agent. These attributes are merged into the Cedar entity at decision time and can be referenced in custom policies as principal.<key>.

Parametersagent_idrequired

set_agent_attributes

Set ABAC attributes for an agent (replaces existing). attributes_json: JSON string of the attributes dict. Values must be strings, numbers, booleans, or lists of those. Reserved keys (policy_tier, risk_score, is_verified) are silently rejected.

Parametersagent_idrequiredattributes_jsonrequired

request_jit_grant

Request a just-in-time access grant for an agent. Trusted agents (composite_trust >= 75, risk_score <= 30, verified, ttl <= 10min) are auto-approved. Others go to pending for human review.

Parametersreasonagent_idrequiredaction_typerequiredresource_idttl_secondsresource_type

revoke_jit_grant

Revoke an approved JIT grant immediately.

Parametersreasongrant_idrequired

list_jit_grants

List JIT grants for the tenant, optionally filtered by agent or status.

Parameterslimitstatusagent_id

list_a2a_catalog

List the tenant's trust-ranked A2A agent catalog. Returns agents in descending trust-score order, excluding any agent currently in the kill-switch state. Each entry includes the agent's id, slug, current trust score, and a short description suitable for an A2A discovery flow.

Takes no parameters.

get_a2a_agent_card

Get an A2A agent card for the given agent. The card is an A2A-compatible JSON document that includes the `x-veriswarm-trust` extension (current trust score + tier), and — when keys are provisioned — the `x-veriswarm-transport` extension carrying the agent's Ed25519 public key for inter-agent message signing. agent_id: VeriSwarm agent id (`agt_*`).

Parametersagent_idrequired

submit_a2a_task

Submit a task to an agent via the A2A protocol. agent_id: the receiving agent (`agt_*`). requesting_agent_id: the calling agent's id (`agt_*`). messages_json: JSON-encoded list of message dicts (A2A message shape). signature_json: optional JSON-encoded Ed25519 signature envelope (`{"key_id": "...", "signature": "...", "algo": "ed25519"}`). Returns the new task id and accepted status, or an error if the receiving agent is killed, paused, or stopped (lifecycle-blocked).

Parametersagent_idrequiredmessages_jsonrequiredsignature_jsonrequesting_agent_idrequired

invoke_a2a_agent

Submit an A2A task to a (trust-ranked) agent and wait for the result. Convenience over submit_a2a_task + get_a2a_task: submits the task, then polls until it reaches a terminal state (completed / failed / canceled) or max_wait_seconds elapses, and returns the final task JSON (status, messages, artifacts). On timeout it returns the latest non-terminal task with "timed_out": true — keep polling with get_a2a_task. All trust / policy enforcement happens server-side; this tool only orchestrates submit + poll.

Parametersagent_idrequiredmessages_jsonrequiredsignature_jsonmax_wait_secondsrequesting_agent_idrequiredpoll_interval_seconds

get_a2a_task

Get the status + result of an A2A task. agent_id: the receiving agent (`agt_*`). task_id: the task id returned by `submit_a2a_task` (`a2a_*`). Returns the task's status (submitted / running / succeeded / failed / cancelled), the response messages (when complete), and any error context.

Parameterstask_idrequiredagent_idrequired

cancel_a2a_task

Cancel an in-flight A2A task. agent_id: the receiving agent (`agt_*`). task_id: the task id to cancel (`a2a_*`). Returns the updated task state. No-op if the task already terminated.

Parameterstask_idrequiredagent_idrequired

create_approval

Submit a new approval request to the operator queue. agent_id: optional VeriSwarm agent id (`agt_*`); omit for system-initiated reviews. requested_action_json: JSON-encoded dict describing the action being approved (free-form per-tenant schema). ttl_seconds: how long the request stays pending before expiring. Server enforces 60 ≤ ttl_seconds ≤ 30 days.

Parametersagent_idttl_secondsrequested_action_json

list_approvals

List approval requests for the authenticated tenant. state: one of "pending", "approved", "rejected", "expired", "all". agent_id: optional filter to a single agent (`agt_*`). limit: 1..500 (server-enforced).

Parameterslimitstateagent_id

get_approval

Get a single approval request by id (`apr_*`).

Parametersapproval_idrequired

approve_approval

Approve a pending approval request. Requires an account-session token (operator role); api-key-only callers get a 401. `reason` is captured in the audit ledger.

Parametersreasonapproval_idrequired

reject_approval

Reject a pending approval request. Requires an account-session token (operator role); api-key-only callers get a 401. `reason` is captured in the audit ledger.

Parametersreasonapproval_idrequired

Version history

2
  1. v0.6.0LatestNov 4, 2026
  2. v0.4.0Sep 16, 2026

Score

90% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts