> ## Documentation Index
> Fetch the complete documentation index at: https://www.zinc.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect a Client

> Add the Zinc MCP server to Claude, ChatGPT, Cursor, or VS Code and authorize it with your Zinc account.

The Zinc MCP server is remote and hosted — there is nothing to install and no API key to configure. Point your client at the URL below and sign in when it opens a browser window.

```
https://mcp.zinc.com/mcp
```

## Add the server

<Tabs>
  <Tab title="Claude">
    In Claude (web or desktop), open **Settings → Connectors → Add custom connector**, then paste the server URL:

    ```
    https://mcp.zinc.com/mcp
    ```

    Claude opens a Zinc sign-in window, shows you the permissions it's asking for, and finishes the connection. The Zinc tools then appear in the tools menu of any new chat.
  </Tab>

  <Tab title="Claude Code">
    Add it from the CLI:

    ```bash theme={null}
    claude mcp add --transport http zinc https://mcp.zinc.com/mcp
    ```

    Then run `/mcp` inside Claude Code and pick **Authenticate** to complete the OAuth flow in your browser.
  </Tab>

  <Tab title="ChatGPT">
    Enable **Developer mode** under **Settings → Connectors → Advanced**, then add a connector with the URL:

    ```
    https://mcp.zinc.com/mcp
    ```

    ChatGPT walks you through the Zinc sign-in and consent screen. Custom MCP connectors require a paid ChatGPT plan.
  </Tab>

  <Tab title="Cursor">
    Add the server through **Settings → MCP → Add new MCP server**, or edit `~/.cursor/mcp.json` directly:

    ```json ~/.cursor/mcp.json theme={null}
    {
      "mcpServers": {
        "zinc": {
          "url": "https://mcp.zinc.com/mcp"
        }
      }
    }
    ```

    Cursor prompts you to sign in the first time a Zinc tool is used.
  </Tab>

  <Tab title="VS Code">
    Create `.vscode/mcp.json` in your workspace (or add the same entry to your user settings):

    ```json .vscode/mcp.json theme={null}
    {
      "servers": {
        "zinc": {
          "type": "http",
          "url": "https://mcp.zinc.com/mcp"
        }
      }
    }
    ```

    Start the server from the MCP view and complete the sign-in when prompted.
  </Tab>

  <Tab title="Other clients">
    Any client that speaks **Streamable HTTP** with OAuth can connect to the URL directly. Clients that only support local stdio servers can bridge with [`mcp-remote`](https://www.npmjs.com/package/mcp-remote):

    ```json theme={null}
    {
      "mcpServers": {
        "zinc": {
          "command": "npx",
          "args": ["-y", "mcp-remote", "https://mcp.zinc.com/mcp"]
        }
      }
    }
    ```

    <Info>
      Interactive cards render in clients that support [MCP Apps](https://modelcontextprotocol.io) widgets. In clients that don't, the same tools still work — you get the structured result as text instead of a card, and the confirmation buttons for spending are unavailable.
    </Info>
  </Tab>
</Tabs>

## Signing in

The server holds no credentials of its own. Every request carries **your** access token, which is why each connection only ever sees its own account's orders and wallet.

Authorization runs against `login.zinc.com` and the sign-in page is the same [Zinc dashboard](https://app.zinc.com) login you already use. Clients register themselves automatically, so there's no client ID or secret to create.

## Permissions

The consent screen asks for these scopes. You choose which to grant:

| Scope           | What it unlocks                                               |
| --------------- | ------------------------------------------------------------- |
| `orders:read`   | List orders, order detail, tracking, and order review cards   |
| `orders:write`  | Placing an order you've confirmed                             |
| `wallet:read`   | Balance, per-order fee, saved payment methods, funding checks |
| `wallet:write`  | Charging a deposit you've confirmed                           |
| `products:read` | Cross-retailer product search (billed per search)             |

`products:read` is deliberately separate from `orders:read`: search bills your wallet per call, and a search result is directly orderable, so finding a product and buying it are two different permissions. Neither implies the other.

<Warning>
  **Scopes are fixed when you authorize.** Granting a scope later requires disconnecting and reconnecting the server — a live connection cannot widen its own permissions.
</Warning>

Tools degrade rather than failing blindly when a scope is missing. Without `wallet:read` the order review card simply omits its funding line; without `orders:write` the card renders but the **Place order** button stays disabled and names the scope to reconnect for.

## Verifying the connection

Start a new chat and ask:

> "List my recent Zinc orders."

A card list of your orders means the connection is live. If you get an authentication error instead, reconnect the server — the most common cause is an expired or revoked authorization.

## Disconnecting

Remove the connector in your client's settings. You can also revoke the connected app from your [Zinc dashboard](https://app.zinc.com), which invalidates its tokens immediately.

## Troubleshooting

| Symptom                                    | Cause and fix                                                                                                 |
| ------------------------------------------ | ------------------------------------------------------------------------------------------------------------- |
| Every tool returns an authentication error | The authorization expired or was revoked. Remove and re-add the connector.                                    |
| A tool says it lacks a scope               | That scope wasn't granted at sign-in. Reconnect and approve it.                                               |
| Results arrive as text, no cards           | The client doesn't support MCP Apps widgets. Reads work; confirmation buttons don't.                          |
| Search fails asking for funds              | Search is metered against your wallet. Confirm a top-up, or [add funds in the dashboard](/docs/v2/wallet).         |
| Top-up says no payment method              | Payment methods can't be added over MCP by design. Add a card in the [dashboard](https://app.zinc.com) first. |

## Next steps

<Card title="Usage guide" icon="cart-shopping" href="/docs/v2/mcp/usage">
  Search, order, track, and top up through conversation.
</Card>
