Skip to main content
Prerequisites:
  • Node.js 18 or higher
  • An Uplink account (sign up on Uplink Console)
  • An MCP-capable AI client (Claude Code, Cursor, Windsurf, etc.)
  • The Uplink Connect mobile app — the companion app you use to pair your phone to a session. Download for iOS or Android

Step 1: Install the CLI

The @uplink-code/cli package ships both the uplink command (for signing in) and the credentials helpers the MCP server uses to authenticate.
npm install -g @uplink-code/cli

Step 2: Install the MCP server

npm install -g @uplink-code/mcp
This installs the uplink-mcp binary, which any MCP client can spawn over stdio.

Step 3: Sign in

uplink login
uplink login opens your browser to Uplink Console, captures your session tokens via a localhost callback, and writes them to ~/.config/uplink/credentials.json (mode 0600). The MCP server reads from this file at startup.
During sign-in your browser may ask to allow local network access (a loopback-address permission on recent macOS and Chrome). That prompt is the browser handing your tokens to the uplink login command running on your machine — nothing leaves your device. Allow it. If you deny it, uplink login hangs and times out; reset the permission for the console site in your browser’s site settings, then re-run uplink login.
Verify the sign-in:
uplink whoami
You should see your email, user id, and the credential expiry.

Step 4: Configure your AI client

Claude Code

Add the Uplink MCP server to ~/.claude.json (or run via claude mcp add):
{
  "mcpServers": {
    "uplink": {
      "type": "stdio",
      "command": "uplink-mcp"
    }
  }
}
Restart Claude Code. The uplink_* tools become available.

Cursor

Add to ~/.cursor/mcp.json:
{
  "mcpServers": {
    "uplink": {
      "command": "uplink-mcp"
    }
  }
}

Other MCP clients

Any client that supports the standard stdio MCP transport works — point it at the uplink-mcp binary with no arguments.

Signing out

uplink logout

First session

In your AI client, ask: “Start an Uplink session”. The model calls uplink_connect and surfaces a pairing link, a 6-digit code, and a QR code (on request). Since you’re driving the model from your desktop, pairing hands off to your phone:
  • iPhone — open the pairing link on your phone, or scan the QR with your Camera. Either one launches the Connect App Clip and pairs you instantly — no install. (Tip: paste the link onto your iPhone from your Mac via Universal Clipboard.)
  • Android — install the Connect app, open it, then scan the QR or enter the 6-digit code.
  • Already have Connect open? Just enter the 6-digit code.
The model then calls uplink_wait_for_device, which blocks until your device pairs. Once paired, it can drive the page with the rest of the tool catalog.

Optional: docs lookups from your AI client

The Uplink MCP server already ships its SDK reference as resources the model reads before writing scripts, so this isn’t required. But if you want your AI client to be able to search the full Uplink docs directly, you can add the Mintlify docs MCP alongside it:
claude mcp add uplink-docs -- bunx mintlify-mcp -p uplink
Requires the Bun runtime. This is a third-party server (mintlify-mcp) that reads any Mintlify-hosted docs site — it’s independent of the Uplink MCP server and not needed for device automation.