Autonomous onboarding
Once an agent has a key it can run the whole platform unattended. Getting that first key still needs a person, for two specific reasons.
What works today
One human step, once, then nothing else:
- A person signs in at platform.metadata.io and mints a key under Settings, API Keys.
- The key goes into the agent's environment as
METADATA_PAT. - From there the agent is autonomous across all 160 tools: it can discover the surface
with
tools/list, resolve its own account withget_account_details, and work without further human involvement.
The key is shown once. Rotate rather than recover it — see Authentication.
What does not work yet, and why
| Blocked | Reason |
|---|---|
| An agent minting its own key | There is no key-issuance endpoint. Keys exist only through the app UI, so nothing an agent can call produces one. |
| An agent creating its own account | Trial registration requires an identity that has already been created by a person, so the flow cannot start from nothing. |
Until both exist, any claim that an agent onboards itself end to end would be untrue, so this page does not make it.
What changes when they ship
The human step disappears and this page gains the two calls that replace it: one to create
an MCP-scoped account, one to mint a scoped key. The agent flow becomes register, mint, then
tools/list, with no person in the loop. Nothing above changes for anyone already
running a key.
Designing an unattended agent in the meantime
The constraint worth designing around is not the key. It is that 39 of the 160 tools are marked destructive by the server: they delete, archive, launch or move budget.
- Start unattended loops on the 65 read-only tools. They cannot change anything.
- Put a human approval in front of the destructive set, or deny it outright at the client.
launch_campaignandmanage_campaignare in it. check_campaign_launch_readinessis read-only and tells you whether a launch would succeed. Call it before the thing that spends.- Filter the full list by effect in the tool reference.