Onboarding tools
Take your account from sign-up to live: who the platform thinks you are, your go-live checklist, the integration checks your sandbox traffic has covered, and your API keys. These tools are served on the same endpoint, with the same key, as the travel tools.
- Endpoint
/mcp/public- Sign-in
- An API key for agents, from your console.
Your account and go-live 2
get_me
Read only#Who the platform thinks you are. Your account, site and permissions.
Read only.
Resourceresources/read aikonic://public/get_me
Arguments
A resource takes no arguments: the agent reads it by its address.
get_activation
Read only#Your account's go-live checklist. Each step, its state and what is still needed.
Read only.
Resourceresources/read aikonic://public/get_activation
Arguments
A resource takes no arguments: the agent reads it by its address.
Integration checks 2
get_certification
Read only#The integration checks observed from your sandbox traffic.
Read only.
Resourceresources/read aikonic://public/get_certification
Arguments
A resource takes no arguments: the agent reads it by its address.
run_missing_certification_checks
Change, if allowed#Run the integration checks your sandbox traffic has not covered yet.
Makes a change that moves no money. It runs only where your account lets agents make changes; otherwise the agent is told the change needs approval.
Tool signaturerun_missing_certification_checks( idempotencyKey*: string (uuid) ) // * required ? optional
Arguments
idempotencyKeyrequiredstring (uuid) Mandatory on mutations: **48h TTL**; replay with same body-hash returns the original response with Idempotency-Replayed true; same key + different body is 409 ….
More onboarding tools 2
resolve_agent
Read only#The public profile of one agent by handle.
Read only.
Resourceresources/read aikonic://public/resolve_agent{?handle}
Arguments
handlerequiredstring The agent handle, name@domain: a hosted handle is name@<tenantSlug>.agents.aikonic.travel, an own-domain handle is name@your-domain.
search_agent_directory
Read only#Search the travel agent directory.
Read only.
Tool signaturesearch_agent_directory( canHold?: boolean, cursor?: string, limit?: integer, protocol?: enum, q?: string, tier?: enum ) // * required ? optional
Arguments
canHoldoptionalboolean True lists only agents allowed to place holds (commit-lite tools); false lists only read-only agents; omitted lists both.cursoroptionalstring Opaque cursor from the previous page nextCursor; omit for the first page.limitoptionalinteger Rows per page, 1 to 50; the default is 20.protocoloptionalenum Only agents that speak this protocol: mcp, a2a or http.mcpa2ahttpqoptionalstring Free text matched against the agent name, handle and capabilities.tieroptionalenum The lowest tier to list, T1 to T3; the default is T1.T1T2T3
Coming soon 4
onboard
Coming soon#Where your account is on the way to going live, and the next step to take.
Coming soon. Documented here, not available to agents yet.
Tool signatureonboard()
Arguments
Takes no arguments.
list_api_keys
Coming soon#Your account's API keys. Never a secret.
Coming soon. Documented here, not available to agents yet.
Tool signaturelist_api_keys()
Arguments
Takes no arguments.
mint_api_key
Coming soon#Create a scoped API key. The secret is shown once, in the answer.
Coming soon. Documented here, not available to agents yet.
Tool signaturemint_api_key( body*: MintApiKeyRequest ) // * required ? optional
Arguments
bodyrequiredMintApiKeyRequest A new API key, what it may do and the limits it runs under.MintApiKeyRequest: 15 fields
actorKindoptionalenum The channel the key acts as; default ai.aisystemcancelsPerDayoptionalinteger \| null The most cancellations the key may request per UTC day; null means no cap.environmentoptionalenum Optional; defaults to this deployment's environment, and any other value is a 400.sandboxliveexpiresAtoptionalstring \| null (date-time) In the future (else 400 VALIDATION details.field expiresAt).holdsPerHouroptionalinteger \| null The most holds the key may place per hour; null means no cap.ipAllowlistoptionalarray of string The only addresses or ranges the key may call from; empty means any.lookToBookoptionalinteger \| null The most searches the key may make per booking, counted per UTC day; null means no cap.nameoptionalstring A name for the key, shown in the key list.onBehalfOfoptionalstring (email) The Member the key acts for (its principal); default the caller.productsoptionalarray \| null Product tab keys (hotels, flights), each reached by one of the key's search:<tabKey> scopes (else 400 VALIDATION details.field products).reqPerSecoptionalinteger \| null The most requests per second the key may make; null means no cap of its own.scopesrequiredarray of string At least one and at most 32 (ApiKeyService.MAX_SCOPES; more is 400 VALIDATION details.field scopes); known permission strings, a subset of the minting user's (deny-by-default).spendPerDayoptionaloneOf Daily spend cap, in the tenant's cap currency (else 400 VALIDATION CURRENCY_MISMATCH).suppliersoptionalarray of string Optional supplier allowlist: the supplier registry codes (GET /v1/capabilities products[].suppliers[].code) this key may reach.writesoptionaloneOf The write ladder (KeyWrites); under the narrowing rule no higher than the minting key's, and the minting key's when left out or null.
revoke_api_key
Coming soon#Revoke an API key immediately.
Coming soon. Documented here, not available to agents yet.
Tool signaturerevoke_api_key( keyPrefix*: string ) // * required ? optional
Arguments
keyPrefixrequiredstring The key to revoke, by the prefix the key list shows.
Types 3
The shapes the arguments above refer to.
KeySpendCap
#A key's daily spend cap, in minor units of an ISO 4217 currency.
amountrequiredinteger Minor units.currencyrequiredstring ISO 4217.
KeyWrites
#The writes a key may make, a ladder where each level includes the ones below it: none (reads, search and reprice only) < hold < cancel (a servicing key: holds and cancels, never books) < book-requires-approval < book (books, holds ….
MintApiKeyRequest
#A new API key, what it may do and the limits it runs under.
actorKindoptionalenum The channel the key acts as; default ai.aisystemcancelsPerDayoptionalinteger \| null The most cancellations the key may request per UTC day; null means no cap.environmentoptionalenum Optional; defaults to this deployment's environment, and any other value is a 400.sandboxliveexpiresAtoptionalstring \| null (date-time) In the future (else 400 VALIDATION details.field expiresAt).holdsPerHouroptionalinteger \| null The most holds the key may place per hour; null means no cap.ipAllowlistoptionalarray of string The only addresses or ranges the key may call from; empty means any.lookToBookoptionalinteger \| null The most searches the key may make per booking, counted per UTC day; null means no cap.nameoptionalstring A name for the key, shown in the key list.onBehalfOfoptionalstring (email) The Member the key acts for (its principal); default the caller.productsoptionalarray \| null Product tab keys (hotels, flights), each reached by one of the key's search:<tabKey> scopes (else 400 VALIDATION details.field products).reqPerSecoptionalinteger \| null The most requests per second the key may make; null means no cap of its own.scopesrequiredarray of string At least one and at most 32 (ApiKeyService.MAX_SCOPES; more is 400 VALIDATION details.field scopes); known permission strings, a subset of the minting user's (deny-by-default).spendPerDayoptionaloneOf Daily spend cap, in the tenant's cap currency (else 400 VALIDATION CURRENCY_MISMATCH).suppliersoptionalarray of string Optional supplier allowlist: the supplier registry codes (GET /v1/capabilities products[].suppliers[].code) this key may reach.writesoptionaloneOf The write ladder (KeyWrites); under the narrowing rule no higher than the minting key's, and the minting key's when left out or null.