Back to OpenA2A

Data Transparency

We separate two kinds of data. Invocation telemetry tells us which CLI and command ran. Scan-result contribution tells the registry which package you scanned and what the verdict was. They have different consent shapes, and this page describes both.

Two buckets, two consent shapes.

Invocation telemetry (which CLI, which command, which version, which OS) is on by default. It collects no package names, no scan content, and no personally identifiable information. Disable any time with OPENA2A_TELEMETRY=off.

Scan-result contribution (the package you scanned + verdict + finding counts) is opt-in only. It is requested explicitly the first time you run a local scan and persists your choice. Disable a single scan with --no-contribute.

1. The Two Buckets

Invocation telemetry says “this CLI was used.” Scan-result contribution says “this is what the user is investigating.” Folding both into a single consent surface hides a boundary that matters under GDPR, SOC2, and FedRAMP, and we treat them as two separate decisions.

BucketWhat we collectConsentDisable
Invocation telemetry
Tool name + version, command run, OS, timestamp. No package names, no scan content.Default-on, opt-outOPENA2A_TELEMETRY=offhackmyagent telemetry off
Scan-result contribution
Package name + version + scan findings + verdict. Names what you scanned.Opt-in (prompted on first local scan; choice persists)--no-contribute
Author publish
Full scan + narrative, for a package the author explicitly publishes.Explicit (secure --publish)Don’t pass the flag

2. Scan-Result Contribution Detail

When you opt in to scan-result contribution, the following metadata is sent to the OpenA2A Registry per scan:

FieldExamplePurpose
Package name@modelcontextprotocol/server-filesystemIdentify which package was scanned
Package version2024.10.14Track security across versions
Scan severity countscritical: 0, high: 1Aggregate community trust scores
Scan verdictsafe, warningAggregate community health metrics
Behavioral metricsfileCount: 42Detect anomalous package behavior
Timestamp2026-04-28T16:00:00ZTime-series analysis

3. What We Never Collect

Neither bucket collects any of the following:

  • Source code or file contents
  • API keys, tokens, or credentials
  • Personal information (name, email, IP address)
  • File paths or directory structures
  • Environment variables or configuration values
  • Git history or commit messages

4. Silent After Consent

After you have opted in to scan-result contribution, the CLI does not print a per-scan banner, queue notice, or “sent-to-registry” line on subsequent scans. Once you have consented, repeating the disclosure on every run trains users to ignore CLI output and feels surveillance-y even when consent is in place. The disclosure is on --help and on this page; the consent prompt itself fires once.

The silent rule does not apply to:

  • The initial consent prompt on first local scan.
  • --verbose or debug flags.
  • Hard errors that prevent the primary command from succeeding.
  • Author-driven publishes (secure --publish) — those print a result line by design because the user explicitly asked.

5. How Data Flows

Your Machine
OpenA2A CLI
api.oa2a.org
Community Trust Scores

Both buckets flow over TLS 1.3 to api.oa2a.org. Invocation telemetry rolls up into anonymous usage metrics. Scan-result contributions land in the registry’s anonymous tier and are aggregated into community trust scores. No raw scan data is stored beyond the field set above.

6. Your Controls

Disable invocation telemetry — works on every OpenA2A CLI:

export OPENA2A_TELEMETRY=off

Per-CLI subcommands also work where supported, e.g. hackmyagent telemetry off, ai-trust telemetry off.

Skip scan-result contribution for one scan:

hackmyagent check express --no-contribute

Check current status:

hackmyagent telemetry status

Inspect what would be sent — pass --verbose to surface telemetry debug output:

hackmyagent secure --verbose

Request data deletion:

Email info@opena2a.org

7. Storage and Retention

  • Stored on Azure-hosted PostgreSQL (East US 2 region).
  • Encrypted at rest (AES-256) and in transit (TLS 1.3).
  • Scan-result metadata is retained for 12 months, then purged.
  • No data is sold, shared with third parties, or used for advertising.

8. Open Source Verification

Every line of code that handles telemetry is open source. You can audit exactly what each bucket sends:

9. Contact

Questions about data transparency or this policy? Reach out:

Last updated: April 28, 2026.