Agent integration
Connect. Inspect the quote.
Decide before you pay.
Security Preflight checks supplied MCP manifests, schemas, policies, and sample text. It does not connect to or certify a deployed runtime.
Connect an MCP client
{
"mcpServers": {
"viridis-security-preflight": {
"url": "https://mcp.viridis-security.com/security-preflight/mcp"
}
}
}Use a client with Streamable HTTP support. Tool discovery is free. The assessment requires a buyer-authorized payment. The existing /mcp endpoint serves Injection Detector separately.
Inspect an unpaid HTTP quote
Save the public example below as inputs.json, then send it without a payment signature. A valid unpaid request returns HTTP 402. This does not purchase or execute an assessment.
{
"agent_id": "example-research-agent",
"manifest": {
"endpoint": "https://agent.example/mcp",
"auth": "bearer",
"tools": [
{
"name": "read_status",
"input_schema": {
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
],
"additionalProperties": false
}
}
]
},
"policy": {
"allowed_tools": [
"read_status"
],
"denied_tools": [],
"approval_required_tools": []
},
"sample_inputs": [
"Summarize the supplied status record."
]
}curl -i https://mcp.viridis-security.com/x402/security-preflight/security_preflight \
-H 'Content-Type: application/json' \
--data-binary @inputs.jsonDecode the PAYMENT-REQUIRED response header as Base64 JSON. Check the exact resource URL, amount, recipient, asset, and network. The list price is $1 USDC; an eligible introductory quote may be $0.01. The fresh quote is authoritative.
Only after your own budget and payment mandate allow it, use an x402 v2 client to sign and retry the same request at this exact URL. Keep your private key in your client. A successful paid result includes signed assessment evidence and a delivery receipt.
Check only when inputs change
git clone https://github.com/jdhart81/viridis-agent-fleet.git
cd viridis-agent-fleet
python3 scripts/viridis_preflight_watch.py \
--base-url https://mcp.viridis-security.com \
--inputs examples/security-preflight-inputs.jsonThis free call returns BASELINE_REQUIRED without creating a scan or payment. On later checks, use your current caller-owned inputs and add --paid-result saved-paid-result.json. Unchanged inputs retain the assessment and its findings; a relevant change, expiry, or scanner change requires a new quote and a separate purchase decision.
You own the schedule. This endpoint does not create a monitoring subscription or authorize a runtime action.
Machine-readable contracts
Service metadata and example inputs · OpenAPI · Agent guide · Receipt and change-check recipe