Developer clients and an AATS readiness CLI for the MC-1 Trust API. This repository is the public source distribution. Registry package releases are identified separately in GitHub Releases; do not assume pip install mc1-trust or npm install @mc1/trust is available unless the release notes say so. AATS is a public working draft. A readiness result is not certification or independent assurance.
python -m pip install -e ./python
mc1 trust init --output aats.json
mc1 trust check --file aats.json
mc1 trust scan --file aats.json --json
mc1 trust verify --agent-id tagn_x --action tool:read_invoicesMC1_TRUST_API_URL and MC1_TRUST_API_TOKEN are required for remote verification. HTTPS is required except for explicit loopback development URLs. mc1 trust monitor polls the trust state and exits nonzero when it leaves ACTIVE; mc1 trust certify explains the independent assessment requirement and does not issue certificates.
from mc1.trust import Agent, TrustClient
client = TrustClient.from_env()
agent = Agent(identity="agent_x", policy="enterprise", client=client)
state = agent.trust_state()
agent.require_authorized(action="tool:read_invoices")import { Agent, TrustClient } from "@mc1/trust";
const client = new TrustClient({ baseUrl: process.env.MC1_TRUST_API_URL!, token: process.env.MC1_TRUST_API_TOKEN! });
const agent = new Agent({ identity: "agent_x", policy: "enterprise", client });
await agent.requireAuthorized("tool:read_invoices");Remote requests use GET /v1/trust/agents/{agent_id} and POST /v1/trust/decisions. A decision must contain decision: "allow" and state: "ACTIVE"; missing fields, errors, redirects, inactive states, and malformed responses fail closed. Action strings must match the registered agent policy exactly. Clients do not independently validate certificate signatures; the reference repository includes pinned-key registry verification.
The local manifest checks a small, documented subset of AATS controls. It cannot discover cloud assets, prove isolation, or attest that configured policies are actually enforced. See examples/aats.json and the CLI report for its precise evidence scope.
schemas/readiness-manifest.schema.json describes the shared CLI and Action input. The checker validates its required fields and values and does not currently implement full JSON Schema validation.
Clients fail closed on transport errors, malformed responses, or an authorization response other than authorized: true. Never place long-lived production tokens in a manifest or source-controlled environment file. See SECURITY.md for reporting instructions.