Hanzo AI

IAM

iam: 75 operations.

Also for this capability: API · CLI · MCP · SDKs

iam: 75 operations. Name one in "op" and pass that operation's own arguments in "input". describe returns an operation's input schema.

Tooliam
Addresshttps://api.hanzo.ai/v1/mcp
Methodtools/call (JSON-RPC 2.0)
Arguments2, 1 required
OperationPOST /v1/iam/providers · POST /v1/iam/organizations · DELETE /v1/iam/organizations/{owner}/{name} · DELETE /v1/iam/providers/{owner}/{name} · GET /v1/iam/organizations/{owner}/{name} · GET /v1/iam/providers/{owner}/{name} · GET /v1/iam/account · GET /v1/iam/auth/application · GET /v1/iam/consent · GET /v1/iam/oauth/authorize · GET /v1/iam/oauth/callback · GET /v1/iam/oauth/userinfo · GET /v1/iam/scim/v2/ServiceProviderConfig · GET /v1/iam/web3/nonce · GET /v1/iam/whoami · GET /v1/iam/organizations · GET /v1/iam/providers · POST /v1/iam/organizations/avatar · PUT /v1/iam/organizations/{owner}/{name} · PUT /v1/iam/providers/{owner}/{name} · POST /v1/iam/admin/applications/upsert
Productiam

Arguments

FieldTypeRequiredDefaultValuesDescription
inputobjectarguments for the chosen op
opstringyes

tools/list declares a type, a description, which fields are required and an enumerated value set for each field and nothing further, and every column above is MCP's own. This tool takes an operation name and that operation's arguments, so what the document constrains is what goes inside input, field by field, on the operation you name — ask describe for that. A means MCP does not constrain the field.

Call it

A tools/call carries every argument in one flat object — nothing binds to a path or a query string. This call carries exactly the arguments the operation requires, so it is the smallest one that can run.

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Authorization: Bearer $HANZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "iam",
         "arguments": {
           "op": "list__well_known_jwks"
         }
       }
     }'

Values are the operation's own defaults and enumerated values where it declares them, and a <placeholder> where neither source declares one. tools/list needs no credential; tools/call does — called without one MCP answers HTTP 200 with a JSON-RPC result whose isError is set and whose text says what was missing. How to get a key →

The operation behind it

iam dispatches to 75 operations. 21 of them MCP names exactly as the document ids them, and those are below; for the rest MCP has its own verb, which describe resolves.

OperationRouteProductSummary
addProviderPOST /v1/iam/providersiamAdds an identity provider your people can sign in with, or a service your applications…
createOrganizationPOST /v1/iam/organizationsiamMakes a new organization — the account your users, applications, roles, projects and…
deleteOrganizationDELETE /v1/iam/organizations/{owner}/{name}iamRemoves an organization and everything named inside it.
deleteProviderDELETE /v1/iam/providers/{owner}/{name}iamRemoves a provider.
getOrganizationGET /v1/iam/organizations/{owner}/{name}iamReturns one organization: its display, its defaults and the sign-in rules everyone in it…
getProviderGET /v1/iam/providers/{owner}/{name}iamReturns one provider: what it connects to and how it is configured.
get_iam_accountGET /v1/iam/accountiamReturns the signed-in person's own account and the organization they belong to — what a…
get_iam_auth_applicationGET /v1/iam/auth/applicationiamReturns everything a login screen needs to draw itself for one application: its branding,…
get_iam_consentGET /v1/iam/consentiamReturns the calling person's own privacy and communication choices.
get_iam_oauth_authorizeGET /v1/iam/oauth/authorizeiamStarts a sign-in — the address you send a browser to, and the beginning of every OAuth…
get_iam_oauth_callbackGET /v1/iam/oauth/callbackiamCompletes the round-trip: it resolves and burns the single-use transaction (checking…
get_iam_oauth_userinfoGET /v1/iam/oauth/userinfoiamReturns the profile claims for whoever the access token belongs to — the standard OpenID…
get_iam_scim_v2_serviceproviderconfigGET /v1/iam/scim/v2/ServiceProviderConfigiamTells your identity provider which parts of SCIM this directory supports, so it…
get_iam_web3_nonceGET /v1/iam/web3/nonceiamStarts a wallet sign-in: it returns a one-time challenge for the wallet to sign.
get_iam_whoamiGET /v1/iam/whoamiiamTells you who the current caller is — the lightweight check a page makes on load to…
listOrganizationsGET /v1/iam/organizationsiamReturns the organizations you can act in, the ones you belong to first and the rest…
listProvidersGET /v1/iam/providersiamReturns your organization's providers, newest first — the identity providers your people…
setOrganizationAvatarPOST /v1/iam/organizations/avatariamChanges how an organization appears across Hanzo: the square mark beside its name, as an…
updateOrganizationPUT /v1/iam/organizations/{owner}/{name}iamChanges an organization's display, its defaults and the sign-in rules everyone in it…
updateProviderPUT /v1/iam/providers/{owner}/{name}iamChanges a provider's settings or rotates the credentials it holds.
upsertApplicationPOST /v1/iam/admin/applications/upsertiamCreates an application or updates it in place, so a deployment can declare the…

The same capability over plain HTTP is in the iam API reference, on https://api.hanzo.ai.


All 121 tools · MCP · API reference

Generated from tools/list on https://api.hanzo.ai/v1/mcp — 121 tools captured 2026-08-16.

How is this guide?