Global Agent Bureau

Know the agent before the payment goes through.

One desk for the check. Identity, the signed intent, and the decision sit together. Global Agent Bureau is an agent bureau and a technology company. Participants register agents, check signed intents, inquire with a purpose code, and report incidents. The checks are powered by KATA — Know And Trust Agents — the framework underneath this service, under the PolyForm Noncommercial License. A valid identity is not the same thing as a valid action.

01 · Agent identity

Who is the agent?

Agent
shopper-01
Principal
K. Uluer
Assurance
Operator verified
Scored
The agent, not a person

Identity and provenance of the agent that wants to act. Registration is not permission to spend.

02 · Authorization

Who authorized it?

What was it authorized to do?

Who signed
K. Uluer
Purpose
purchase
Ceiling
CAD 1,500
Category
electronics
Merchant
Any, unless named
Expiry
Required, or step-up

The principal who signed the delegation and the intent. Purpose, ceiling, currency, merchants, and expiry.

Find and buy a laptop for me, maximum CAD 1,500.

03 · This payment

ALLOW

Does this behavior match? CAD 1,300 at techstore.example is inside the signed ceiling. Identity, authorization, intent, and this payment agree. The payment is checked against that signed record.

It does not spend money.

Trust score

On the agent

Individuals are not scored. The check returns allow, step-up, or deny. Deny blocks the action and does not revoke the grant.

ALLOW CAD 1,300

Under the CAD 1,500 ceiling.

STEP-UP No expiry

The check asks for approval.

DENY CAD 4,200

Above the ceiling. The grant stays.

SYNTHETIC TEST DATA – not real customers

This synthetic stress test of the trust score uses 10,000 synthetic agents and 100,000 synthetic transactions over 90 days. Against adaptive attackers, 73% of attempted fraud dollars are stopped and $0.71M is executed. When attackers do not know the rules, 78% is stopped and $0.68M is executed. Legitimate agents denied at day 90 are 0.15% and 0.16%. Tables and charts are on the Simulation page. Global Agent Bureau is an agent bureau and a technology company. Learn more at globalagentbureau.com.

Explainer73.5 seconds · silent · captions
How the check works. 73.5 seconds, silent, with captions on the picture and an English text track in the player. It stays paused until you press play.

Dispute evidence

Kept with the agent

A dispute keeps the signed record with the agent. Evidence is the intent, the payment, and the outcome, linked to the agent. A report that is not linked to an agent is rejected. Participants can inquire for dispute resolution with a purpose code. An inquiry does not change the score.

Linked

Chargeback on shopper-01

The signed ceiling, the payment, and the outcome stay on the same agent. Chargeback for the laptop payment at techstore.example.

Rejected

Report with no agent

An unlinked report is not evidence. It does not enter the record.

Inquiry

Purpose code required

Dispute resolution is one purpose. The inquiry does not change the score.

The service

Explore the site for what is published now.

Documentation, status, and the simulation are on this site. KATA is the framework underneath the checks, licensed under PolyForm Noncommercial.

MCP

5 tools, remote

POST /mcp is a remote MCP server over streamable HTTP. The 5 tools are verify agent, inquire, report, check revocation, and fetch a signed receipt. The tools require a bearer API key.

Sandbox

gab_test_ keys

Test keys use the gab_test_ prefix. Live keys use the gab_ prefix. Live and test rows stay isolated. A test report does not change a live score. When GAB_ENV is sandbox, only a gab_test_ key is accepted.

Health

/health and /status

GET /health and GET /v1/health need no API key. The same reading is on /status.

Limits

Retry-After on 429

Defaults are 60 verifies, 30 inquiries, and 10 reports each minute, and 120 requests overall. A limit answers 429 with Retry-After: 60.

UCP

Sandbox checkout check

In the sandbox, the bureau verifies a Universal Commerce Protocol checkout as an action. It does not host checkout. The path accepts a gab_test_ key only.

AmEx

Assumed mapping

The AmEx Intent Intelligence note is an assumed mapping into the KATA agreement. Read it in the mapping note.

Live demo

Try a signed intent

This sample uses public demo keys for K. Uluer and the agent shopper-01. The page asks the reference library to render the confirmation, sign it, and return allow, deny, or step-up. It does not spend money.

Intent the principal signs
Payment the agent proposes

Transparency log

What this deployment is publishing

Three public records. None of them is a customer list.

List

Revocation list

Pulled from GET /v1/revocations. Cached for five minutes. A deny is not a revocation.

Loading the revocation list…

Keys

Published keys

The log public key and any extra records at /.well-known/kata-keys.json.

Loading published keys…

Log

Transparency log

The signed tree head from GET /v1/log/head.

Loading the tree head…

History

Dates and titles below are the git history, CHANGELOG.md, and the GitHub pull requests. When a commit date and a GitHub merge time fall on different days, both are stated. The repository is https://github.com/kaanuluer/KATA.

  1. Repository starts

    a581f1c Initial commit. c57c16c KATA framework initial content: README, docs, schemas, examples, research. 6ffc9f7 KATA assets: logo. d9037b3 Remove corrupted logo upload (retry via web UI). 302ba83 KATA assets: hero banner and logo.

    Five commits that day share the message “KATA framework part 1: README, license, gitignore”: 3d5275a, 29899e1, 1a514d4, e85217e, 2191ce3.

  2. Price integrity, and a mapping onto other mandates

    0129d8a Record price integrity and the AgentCommerceBench gap (#1). GitHub #1 Add price integrity and an AgentCommerceBench mapping was opened 2026-10-09T02:02:58Z and merged 2026-10-09T02:05:23Z.

    2ab98f5 Map KATA objects to Verifiable Intent and AP2 mandates. (#2). GitHub #2 Map KATA to Verifiable Intent, AP2, TAP, and AGNTCY was opened 2026-10-09T02:42:08Z and merged 2026-10-09T02:52:11Z.

  3. Related-work notes, then the intent agreement

    37d54b0 Record a reading of Sardine's agentic-commerce fraud report in the KATA docs. (#3). GitHub #3 Update KATA docs from Sardine's 2026 agentic commerce fraud report was opened 2026-10-12T05:06:29Z and merged 2026-10-12T05:07:08Z. CHANGELOG.md for that day records the reading of Sardine's public report Rethinking Fraud Prevention for Agentic Commerce (2026). The changelog says no schema or example changed, and that nothing in the update is a measured result.

    d9d5712 Separate the KATA core from optional profiles and related work. (#4). GitHub #4 Keep the KATA core lean: optional profiles and Darwinium as related work was opened 2026-10-12T12:43:56Z and merged 2026-10-12T12:44:19Z. The changelog says an implementation needs the four questions, the intent and delegation schemas, and the decision outcomes, and that use-case examples are profiles. It cites Darwinium's press release of 8 October 2026 as that related-work entry.

    8ca5197 Add a signed intent agreement and a reference action check. The changelog points at docs/intent-agreement.md, schemas/intent-mandate.json, schemas/agreement.json, and the reference library's Ed25519 mandate, action check, and revoke-or-expire path.

    GitHub #5 Add a signed intent agreement and a reference action check was opened 2026-10-12T22:46:54Z. GitHub lists it as a draft and records no merge time.

  4. Decisions, the deployment service, and this page

    32711ab Apply Kaan's intent-agreement decisions to the spec and the reference check. The changelog records the agreement inside the delegation, the spend ledger on the agreement, several live intents inside one parent set, and the principal's signature as the activation.

    39c6328 Apply the confirmation, ledger, revocation, FX, institution-key, and ES256 decisions. The changelog records canonical confirmation text, a hash-chained ledger with a 60-second staleness step-up, auto-selection of one matching intent, pull plus push plus a transparency log, a pluggable daily FX ceiling, institution keys at .well-known plus an allowlist, and ES256 beside Ed25519.

    5df8892 Add a Vercel service for the revocation list, transparency log, and daily FX. 2e36a7d Point the Vercel FastAPI entrypoint at the repository-root app.py. 28c0765 Send a user agent on Frankfurter FX requests and use the v1 host.

    87d97e2 Add an English KATA page with a sample intent check and live status. b237da9 Use the teal seal and KATA wordmark on the web page.

    GitHub #6 Relicense KATA under PolyForm Noncommercial 1.0.0 was opened 2026-10-13T03:45:55Z and merged 2026-10-13T04:16:43Z. The LICENSE file in this checkout is the PolyForm Noncommercial License 1.0.0. Versions published before that change were released under Apache-2.0.

    CHANGELOG.md for 2026-10-13 also records /history and /docs (design, authorization, intent, threat model, schemas, and the API reference), with FastAPI's generated OpenAPI page at /docs/openapi.

    This checkout adds the Global Agent Bureau on that service: organizations and hashed API keys, the agent registry, stored intents and the verify API, incident reports, purpose-coded inquiries, the rule-based trust score, signed alerts, the individual portal, and disputes. The requirements are in docs/gab-requirements.md. The organization dashboard is /dashboard and the individual portal is /portal.

  5. Bureau defenses and one synthetic stress test

    The service rejects an unlinked report, denies a velocity breach, and publishes one synthetic stress test at /simulation. Every figure is labeled SYNTHETIC TEST DATA – not real customers. Against adaptive attackers, 73% of attempted fraud dollars are stopped and $0.71M is executed. When attackers do not know the rules, 78% is stopped and $0.68M is executed. The home page states that same headline.