put_auth_me_onboarding_by_topic

Changes data · you confirm first Idempotent

Calls PUT /api/auth/me/onboarding/{topic} as the signed-in person · REST reference

Record that the signed-in user has seen a first-time tour or popup

Idempotent: marking a topic already seen changes nothing. The path names the topic only; the account written is the caller's own, taken from the session. Refused (403, code IMPERSONATING) while impersonating another user, whose tour it would otherwise mark seen.

Arguments

ArgumentTypeDescription
topicpath"DASHBOARD_TOUR" | "PAYOUT_STEPS"required

Example call

A client sends this over the MCP session; Claude and other agents build it for you. The values are placeholders — the shape is real.

json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "put_auth_me_onboarding_by_topic",
    "arguments": {
      "topic": "DASHBOARD_TOUR"
    }
  }
}
Confirmation
The client shows the person the exact request and waits. Nothing runs until they tick Make this change. See Reading and changing.

Result

On success (HTTP 200) the tool returns one text item holding the API's JSON, pretty-printed.

Recorded — every topic the caller has now seen.

json
{
  "data": {
    "seen": [
      "DASHBOARD_TOUR"
    ]
  },
  "success": true
}

Fields

FieldTypeDescription
dataobjectThe first-time tours and popups the signed-in user has already seen.
data.seenarray of "DASHBOARD_TOUR" | "PAYOUT_STEPS"In the order they were first seen. A topic appears at most once.
successtrue

When it fails

A failed call returns isError: true with the API's message as text. A change the person declines, or lets time out, also comes back this way and nothing changes.

400

The request was malformed or failed a guard.

403

The session is an impersonation session, or the DAL refused the caller.

404

No such resource — or none this caller may see.

What the model is shown

This is the tool exactly as the server lists it in tools/list. The description starts with the REST call it makes.

json
{
  "name": "put_auth_me_onboarding_by_topic",
  "description": "PUT /api/auth/me/onboarding/{topic} — Idempotent: marking a topic already seen changes nothing. The path names the topic only; the account written is the caller's own, taken from the session. Refused (403, code `IMPERSONATING`) while impersonating another user, whose tour it would otherwise mark seen.\n\nThis changes data. The person is asked to confirm it before it runs, and nothing happens if they decline.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "topic": {
        "type": "string"
      }
    },
    "required": [
      "topic"
    ]
  },
  "annotations": {
    "readOnlyHint": false,
    "destructiveHint": true,
    "idempotentHint": true,
    "openWorldHint": false
  }
}