coinbase / coinbase/onchainkit

Sign in with Base (desktop) can't reach a wallet created via Google on mobile — no Google option, no way to add a passkey, email binds the wrong wallet

Open
#2,671 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
1k
Forks
520
Avg merge
32m
Merged PRs (30d)
2

Description

## Summary

A Base smart wallet created with "Sign in with Google" in the mobile Base Wallet app is unreachable through the desktop Sign-in-with-Base flow. Desktop offers only passkey + email — Google isn't available, no passkey can be added, and email silently binds a *different* wallet. This blocks connecting the intended wallet to Sign-in-with-Base integrations.

## Environment

- **Wallet:** Base smart wallet, created via **"Sign in with Google"** in the **mobile Base Wallet app** (iPadOS)
- **Desktop client:** Sign-in-with-Base OAuth (encountered via **mcp.base.org** from Claude Code)

## Steps to reproduce

1. Create/own a Base smart wallet via "Sign in with Google" in the mobile app.
2. On desktop, start a Sign-in-with-Base flow (e.g., mcp.base.org OAuth).
3. Desktop offers only **passkey** and **email** — **no Google** option.
4. Choose **passkey** → the account has none, and the mobile app's **Security settings provide no "add passkey"** option.
5. Choose **email** → signs into a **different/default wallet**; there is **no account/wallet picker** to select the intended one.

## Expected

Authenticate (or explicitly select) the same wallet on desktop that I use on mobile.

## Actual

Desktop cannot reach the mobile-Google wallet; email silently binds a different wallet.

## Impact

The same Coinbase identity resolves to different wallets across surfaces, with no bridge and no selector. This blocks legitimate integrations (mcp.base.org OAuth in my case) and likely causes silent drop-off and support load.

## Proposed fixes

1. Offer the same login methods on desktop as mobile (incl. Google/social).
2. Add an explicit **wallet/account selector** in the sign-in flow.
3. Add **"add/manage passkey"** in the mobile Security settings (makes passkey a real cross-device bridge).
4. Only surface auth methods the account actually supports.

## Additional context

Screen recordings available on request. Filing here per guidance from JesseXBT; the issue spans Base Account auth broadly — happy to be routed to the right team.

— JD White · jdwhite.world

Contributor guide

No contributing guide indexed for this repository

Research direction

No files, tests, or entry points are identified. Start by reproducing the desktop Sign-in-with-Base OAuth flow at mcp.base.org with a mobile Base Wallet account created through Google, then trace which authentication methods and wallet identity are returned; done means the intended wallet is reachable or explicitly selectable without silently binding another wallet.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
authentication, authorization
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.