putty
MCPPrivyUsers

privy_get_current_user

Get the authenticated Privy user, including their linked accounts (email, phone, OAuth, wallet, passkey, smart wallet), MFA methods, and `custom_metadata`. The tool defaults to the caller's DID — pass `userId` only when the agent already has a known id (and the call will 403 if it does not match the caller's). Returns the full `PrivyUser` object. Use this as the entry point for any user-level view: who am I, what data does Putty have on me, what wallets do I have linked. The `custom_metadata` map is the per-user state the agent reads and writes (see `privy_set_custom_metadata` and `privy_update_custom_metadata`).

Get the authenticated Privy user, including their linked accounts (email, phone, OAuth, wallet, passkey, smart wallet), MFA methods, and custom_metadata.

Endpoint

GET /v1/users/{user_id}

Input

The tool takes a single JSON object. Every field, its type, and an example are on the generated reference at GET /mcp/tools, under this tool's name.

Calling it

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": { "name": "privy_get_current_user", "arguments": {} }
}

Put your arguments in place of the empty object. A call that fails comes back as a normal result carrying isError: true and a message naming what went wrong, not as a JSON-RPC protocol error.

Notes

The tool defaults to the caller's DID — pass userId only when the agent already has a known id (and the call will 403 if it does not match the caller's). Returns the full PrivyUser object. Use this as the entry point for any user-level view: who am I, what data does Putty have on me, what wallets do I have linked. The custom_metadata map is the per-user state the agent reads and writes (see privy_set_custom_metadata and privy_update_custom_metadata).

The full request and response shape, and a live playground, live on the generated reference at GET /mcp/tools.

On this page