onboarding_start
Sets up a new account from inside the agent. Use it when another tool reports that the user's account is not set up yet.
Behavior:
Call it with no arguments first. It returns status "options" with where the user can go: join a workspace they were invited to, join a team found by their email domain (automatic, or by request to its admins), or start their own. Ask the user which they want. When there is nothing to choose (no invite, no team), it skips straight to status "start".
Call it again with action "create", or action "join" plus the workspace_id of one option. It returns status "start" with a perspective_id: take the getting-started conversation as the user with perspective_participate (action "start" with that perspective_id, then "respond" to each question). Answer from what you know about the user and ask them what you don't. When the conversation is complete, call this tool again to confirm the account is set up, then retry the tool you were using.
Joining by request returns status "requested": the team's admins get an email and the user is emailed when approved. Suggest the user start their own workspace meanwhile (action "create") so they can use Perspective while they wait; the team workspace is added to their workspaces on approval. If they wait instead, calling this tool after approval offers that workspace as an invite.
Returns status "browser" with only a browser_url when this server's onboarding conversation cannot finish the setup by itself: give the user the link and wait for them to finish there.
Returns status "onboarded" when the user already finished setting up. On a workspace-scoped connection, only workspaces in its scope the user was invited to are offered; with none, it returns status "unavailable".
Right after a getting-started conversation ends, the tool waits for its setup to finish before answering, so calling it again (or retrying the original tool) then is safe. If setup is still running after that wait, it returns status "pending": call it again in a few seconds and do not start another conversation.
When NOT to use this tool:
The user's account is already set up — use workspace_get_default.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "onboarding_start"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | Omit to list the options. 'create' starts the user's own workspace; 'join' joins the workspace named by workspace_id. | |
| workspace_id | No | With action 'join': the workspace_id of the chosen option. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | ||
| message | Yes | ||
| options | No | ||
| browser_url | No | ||
| perspective_id | No |