Put a business in the directory
register_businessFor a business's own AI: put the business in this directory with its doors (MCP, A2A, OpenAPI, an API, UCP, ACP, a platform's door) and its facts: name, what it is (a category of list_categories or a place category, and one line), where (a storefront, a service area, or online with the countries it ships to), its languages, and agree. One call when its proof is already in place; otherwise the answer gives a challenge to put on its domain (a well-known file, its inbox manifest, a DNS record), a key's signature, or a code sent to an address at its domain, and the next call proves it. The answer names every part not taken and why, its readiness level, and what the next level takes. Doors count once this network's crawler has checked them; a door on another host counts only when the site leads to it or its own document names the business's domain. Mail, phone, messaging, forms and web pages are never doors. Every kind of business is listed except adult services, gambling, weapons, tobacco, cannabis and vaping, payday loans and bail bonds. agree accepts the listing terms (/bot#terms). Being listed is free, and nothing about the order can be bought.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| pay | No | Payment tokens of list_attributes. | |
| name | Yes | As the business writes it. | |
| agree | Yes | The business agrees to be listed by the network's published rules (GET /v1/ranking) and listing terms. | |
| doors | No | ||
| hours | No | As a profile's hours: {"timezone": "Europe/Paris", "weekly": {"tue": [["09:00", "19:00"]]}}. | |
| proof | No | ||
| where | Yes | A storefront needs an address or geo, a service area its radius or countries, online its ships_to. | |
| domain | Yes | The business's own website domain. A business without a website is not supported yet. | |
| locale | No | The language to answer in. | |
| category | Yes | What the business is: one category, and at most two more. | |
| languages | Yes | Language tags, like pt or fr-CA. | |
| attributes | No | Keys of list_attributes. | |
| currencies | No | ISO 4217. | |
| price_band | No | 1 (cheapest) to 4. | |
| want_inbox | No | ||
| claim_token | No | Given by a successful register_business: proof again for 90 days, for this listing only. | |
| description | Yes | One line on what it does; the first line is at most 160. | |
| alternate_names | No | Other names the business goes by; a name longer than the network keeps is dropped (the reference network keeps 60 characters and 4 words at most). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| card | No | The card search_businesses gives, as it stands now. | |
| level | No | ||
| notes | No | ||
| proof | No | ||
| detail | No | The answer in one plain sentence. | |
| domain | Yes | ||
| listed | No | Whether search shows it now. | |
| status | Yes | listed: in search now; not_agent_ready: claimed, below askable; probe_pending: doors declared, not yet probed; proof_needed: see challenge; code_sent: call again with the code; member: it is listed through its inbox; refused: see detail. | |
| claimed | No | ||
| dropped | No | Each part not taken and why: refused_kind, category_not_listed, contact_detail, not_in_vocabulary, and the like. | |
| challenge | No | Put the token in place one of these ways, then call again with proof.method and challenge_id. | |
| next_level | No | What it takes to reach the next level, in plain words. | |
| want_inbox | No | ||
| claim_token | No | Given by a successful register_business: proof again for 90 days, for this listing only. | |
| claim_token_expires_at | No |