Skip to content

Repository files navigation

GovSchema — open standards for agent–government interaction. The trusted, versioned, machine-readable contract that lets AI agents understand, validate, and safely prepare government forms — without guessing from webpages.

GovSchema

GovSchema is the trusted, versioned, machine-readable contract that lets AI agents understand, validate, and safely prepare government forms and workflows — without guessing from webpages, HTML, or PDFs. Open-source and independent: it describes and verifies government processes; it does not submit them.

GovSchema publishes versioned, machine-readable schemas for government forms and processes (DMV systems, passports, visas, company formation, and beyond), together with verification practices that confirm each schema matches its live government source. It is the standard layer that agent developers build on top of.

GovSchema is stewarded by an independent, open-source foundation. We are to agent–government interaction what ISO, the IETF, and the W3C are to their domains: a neutral body that defines and maintains the standard.

What this is for two audiences. For agent developers: a stable, validated, semantically-versioned schema you can fetch, pin, and program against, with provenance and a verification record attached, so you know how current it is. For the people those agents act on behalf of: a public, auditable record of what a government process actually asks for, maintained by a neutral, open-source project, not a black box.

What this is not. GovSchema is not a government entity and is not endorsed by or affiliated with any government. It does not fill out or submit forms. It is the standard, not the agent. It stores no personal data: schemas describe forms, they don't contain anyone's answers.

This is an early, founding-stage project. We are founding a standard, and the specification line is explicitly pre-stable (v0.x).

Repository layout

Path What lives there
spec/ The GovSchema specification and its machine-readable meta-schema.
registry/ All published schemas, one immutable directory per version.
discovery/ The discovery catalog — a prioritized backlog of processes to schematize next.
practices/ Verification practices — documented methods for confirming a schema matches its source.
conformance/ Non-submitting conformance fixtures — sample payloads and browser-flow walks that prove out agent behavior against a schema version.
tools/ Tooling to validate schemas (zero-dependency, CI-ready), plus an optional reference client and MCP server for agent consumption.
site/ The landing/marketing site — a data-driven static generator (zero-dependency).
VERSIONING.md How the spec and each schema are versioned.
GOVERNANCE.md How decisions are made.
CONTRIBUTING.md How to add or correct a schema.

A schema at a glance

A GovSchema document is one JSON object describing one government process: its jurisdiction and authority, the exact live source it was derived from, the fields an agent must collect (typed, validated, and traced to the source form), an optional process flow, and a verification record. It validates against the meta-schema for the spec line it targets. The current line is spec/v0.2/govschema.schema.json (which adds an edition axis for time-versioned forms; v0.1 documents remain conforming and validate against spec/v0.1).

See the reference schemas:

How agents consume this

See docs/agent-consumption.md for every supported consumption path side by side: raw HTTPS fetch + JSON Schema validation (the baseline, always sufficient on its own), the llms.txt discovery entry point, the reference MCP server, and the installable Skill. The latter three are optional convenience layers over the first. None of them gate the standard.

Registry layout & versioning (the short version)

A schema's location is derived from its identity:

registry/<country>/<…>/<process>/<version>/schema.json
        └─────────── id ───────────┘ └ semver ┘

The id and version inside the document must match the path; tooling enforces it. Each schema carries its own semantic version: MAJOR = breaking for a consuming agent, MINOR = backward-compatible addition, PATCH = no contract change (e.g. a re-verification). Published version directories are immutable: corrections ship as a new version, so a pinned (id, version) always resolves to the same bytes. Full rules: registry/README.md and VERSIONING.md.

Validate locally

node tools/validate.mjs

Checks every schema against the meta-schema and confirms each one's id/version match its path. Runs with plain Node (≥18), no install. CI runs the same check on every push and pull request.

Scope

GovSchema is global and multi-jurisdictional by design. Early coverage focuses on a small number of jurisdictions (the schemas above are format references), but no jurisdiction is privileged. Every country sits at the same top level of the registry.

Contributing

We welcome new schemas, corrections, re-verifications, and tooling. Start with CONTRIBUTING.md and the specification. All participation is under our Code of Conduct.

License

  • Schema content, specification text, and verification practices (registry/, spec/, practices/): CC-BY-4.0.
  • Tooling and code (tools/): Apache-2.0.

About

GovSchema: open standards for agent–government interaction (spec, registry, tooling).

Resources

Code of conduct

Contributing

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages