Setup

View as Markdown

The ShipBob MCP Server is hosted by ShipBob. Setup is the same across every AI app that supports it:

  1. Open your app’s MCP or connector settings
  2. Add a new server with the ShipBob URL
  3. Your app opens a browser window where you sign in to ShipBob
  4. Grant access on the consent screen
  5. Start asking the assistant about your data

Server URLs

Use the URL that matches the environment you want to talk to.

EnvironmentURL
Sandboxhttps://sandbox-api.shipbob.com/developer-api/mcp
Productionhttps://api.shipbob.com/developer-api/mcp
Sign in with the ShipBob account that matches the URL: sandbox account for the sandbox URL, production account for the production URL. Sandbox and production are isolated environments and accounts do not carry across.

On first connection, ShipBob asks you to create a channel for the AI client and shows the permissions the MCP tools need to function. A channel is how ShipBob tracks which app created which records — it is an installation of an application on top of the ShipBob API, and it controls what the AI client is allowed to write.

  • Reads cross channels: The AI client can read data from every channel on your merchant account (orders from Shopify, Amazon, other apps, PAT-issued channels, etc.).
  • Permissions follow your account role: The tools available to you depend on your ShipBob account’s permission level. If a tool returns a 403 error, your account role may not have access to that operation — contact your ShipBob account admin to confirm.
  • Writes stay in the channel created at consent: Create, update, and cancel operations only apply to records on the channel you created at the consent screen. The AI client cannot write into channels owned by other applications.
Cancel and modify tools (cancel order, cancel shipment, modify return) require the record to belong to the channel created at consent. Calls against records owned by other channels return 403 (or sometimes 404). See Troubleshooting.

For background on channels, see Concepts > Channel.

Configure Your AI Assistant

Step 1: Open your Connectors settings

Open claude.ai in your browser. From the sidebar, go to CustomizeConnectors.

claude.ai Customize → Connectors panel with the + icon visible

Step 2: Add a custom connector

Click the + icon → Add custom connector. Enter the name ShipBob and paste the server URL for your environment. Click Add.

Add custom connector dialog in claude.ai with Name = ShipBob and URL populated

Or use a direct deep-link:

Step 3: Sign in and grant access

Claude opens a browser tab for ShipBob sign-in. Sign in with your ShipBob account and approve the permissions on the consent screen.

Step 4: Verify the connector is connected

Back in your claude.ai settings, the connector shows as Connected.

MCP connectors are available on claude.ai Pro and higher plans. If you don’t see the Connectors option, check that your plan includes MCP support.

ChatGPT supports remote MCP servers as custom connectors (“Apps”). The flow mirrors claude.ai — paste the ShipBob URL, then sign in through the browser tab ChatGPT opens.

Prerequisites

  • A ChatGPT Plus, Pro, Business, Enterprise, or Edu account (custom connectors are not available on Free).
  • Developer Mode enabled on your account (see Step 1).

Step 1: Enable Developer Mode

Sign in to chatgpt.com, then open SettingsConnectors (labeled Apps & Connectors on newer accounts) → Advanced settings and toggle Developer mode on.

ChatGPT Settings → Connectors → Advanced settings with Developer mode toggled on

Step 2: Add a custom connector

Back on the Connectors page, click Add (or Create) to add a custom connector. Fill in:

  • Name: ShipBob
  • MCP Server URL: the URL for your environment
  • Authentication: OAuth (leave the default — ShipBob’s server drives the OAuth flow itself, no client ID/secret needed)

Click Create.

ChatGPT Add custom connector dialog with Name, MCP Server URL, and OAuth authentication populated

Step 3: Sign in and grant access

ChatGPT opens a browser tab for ShipBob sign-in. Sign in with your ShipBob account and approve the permissions on the consent screen. The connector then appears as Connected in your ChatGPT settings.

Step 4: Use ShipBob in a chat

In a chat, open the + (attach) menu, pick ShipBob under connectors, and start asking about your data.

The URL must be HTTPS. Both ShipBob environment URLs (sandbox and production) already meet this requirement.
If you don’t see the Developer mode toggle or the Add connector button, your plan may not include custom connectors yet. Check OpenAI’s documentation for connector availability for your plan.

Step 1: Open Connectors settings

Open Claude Desktop. From the sidebar, go to CustomizeConnectors.

Claude Desktop Customize → Connectors panel with the + icon visible

Step 2: Add a custom connector

Click the + icon → Add custom connector. Enter the name ShipBob and paste the server URL for your environment. Click Add.

Add custom connector dialog in Claude Desktop with Name = ShipBob and URL populated

Step 3: Sign in and grant access

Claude opens a browser window for ShipBob sign-in. Sign in with your ShipBob account and approve the permissions on the consent screen.

Step 4: Verify the connector is connected

Back in Claude Desktop, the connector shows as Connected.

Custom connectors require a current Claude Desktop release. If the menu item is missing, update Claude Desktop.

If you don’t see the option to add a custom connector

Register the ShipBob MCP Server by editing Claude Desktop’s config file directly. This uses the mcp-remote helper to bridge Claude Desktop to the hosted server while still keeping the browser-based OAuth sign-in.

Prerequisite — Node.js

The mcp-remote helper runs on Node.js. If you don’t already have it, download and install Node.js (LTS). After installing, open a terminal and run node --version to confirm — you should see a version like v24.15.0.

Steps

  1. Open the config file:

    • Windows: FileSettingsDeveloperEdit Config
    • Mac: Claude (menu bar) → SettingsDeveloperEdit Config

    A file called claude_desktop_config.json opens in your text editor (Notepad on Windows, the default editor on Mac).

  2. Add the ShipBob server:

    If the file is empty or contains only {}, replace its contents with:

    1{
    2 "mcpServers": {
    3 "shipbob-mcp": {
    4 "command": "npx",
    5 "args": [
    6 "-y",
    7 "mcp-remote",
    8 "https://api.shipbob.com/developer-api/mcp"
    9 ]
    10 }
    11 }
    12}

    For sandbox, swap the URL for https://sandbox-api.shipbob.com/developer-api/mcp.

  3. Save the file and fully quit Claude Desktop (don’t just close the window). Reopen it.

  4. On first use of a ShipBob tool, Claude Desktop opens a browser for the ShipBob sign-in / consent screen — same flow as the GUI path.

This is the OAuth flow — there are no API tokens to paste. If you’d rather use an API token (for example, for automation that can’t open a browser), follow Setup with API Token instead.

Claude Code registers MCP servers from the terminal — no config-file editing needed.

Add the ShipBob server (production):

$claude mcp add --transport http shipbob-mcp --scope user https://api.shipbob.com/developer-api/mcp

Add the sandbox server:

$claude mcp add --transport http shipbob-sandbox --scope user https://sandbox-api.shipbob.com/developer-api/mcp
  • --transport http matches the Streamable HTTP transport the ShipBob server uses.
  • --scope user registers the server for your user across every Claude Code project. Use --scope project (or omit the flag) if you only want it inside the current project.

The first tool call against the server opens a browser for ShipBob sign-in and the consent screen — the same OAuth flow every other client uses.

Remove the server:

$claude mcp remove "shipbob-mcp"

Run claude mcp list at any time to see which servers are registered.

Prerequisites

One-click install:

Click the link below to add the ShipBob MCP server to VS Code automatically:

VS Code opens a prompt to confirm the server installation. After confirming, it opens a browser for sign-in.

Manual setup:

  1. Choose where the MCP config lives:

    • Workspace (.vscode/mcp.json): use this for project-specific access. Teammates who check out the repo also get the server.
    • User profile (run MCP: Open User Configuration from the Command Palette with Ctrl+Shift+P / Cmd+Shift+P): use this to make the server available across all your projects.
  2. Add the ShipBob server:

    1{
    2 "servers": {
    3 "shipbob": {
    4 "type": "http",
    5 "url": "https://api.shipbob.com/developer-api/mcp"
    6 }
    7 }
    8}

    Swap the URL for https://sandbox-api.shipbob.com/developer-api/mcp to point at sandbox.

  3. Run MCP: List Servers and start shipbob. VS Code opens a browser for sign-in.

  4. Sign in with your ShipBob account and grant access.

See the VS Code MCP documentation for full details on mcp.json.

Any app that supports remote MCP servers works the same way:

  1. Add a new remote / custom MCP server in the app
  2. Paste the ShipBob URL for your environment
  3. Sign in to ShipBob in the browser window your app opens

No API tokens, headers, or extra tools are needed.

Verify the Connection

Once the server is added, ask the assistant:

"What ShipBob tools are available?"

You should see a list of all available ShipBob tools. If nothing appears, see Troubleshooting.

Tool Approval Behavior

Your AI client controls tool approval. claude.ai, Claude Desktop, and VS Code with GitHub Copilot all prompt for confirmation before running write operations (create order, cancel order, etc.), so you can review each action before it executes. Read-only tools typically run without a confirmation prompt.

Next Steps