Skip to main content

Overview

The Henry MCP server is hosted by Henry, so there is nothing to install. Point your MCP client or agent at one URL:
It exposes the Henry Shopping API as one MCP tool per operation — product search, product details, carts, checkout, orders, and merchants — and ships interactive product and cart views for clients that support MCP Apps. You can authenticate two ways:
  • API key — send your Henry API key as a header. Best for agents, scripts, CI, and anything that runs without a person at a browser.
  • Sign in — connect with no key and your client opens a browser window to sign in with your Henry account. Best for chat apps like Claude and ChatGPT.

Endpoints

Authentication

API key

Send a Henry API key from the Henry Dashboard (your app’s Developer settings) in either header:
The key works on both endpoints and doesn’t expire until you revoke it in the dashboard. Start with a sandbox (sk_test_) key; switch to a production (sk_live_) key at go-live.
Treat the key like a password. Load it from an environment variable or your client’s secret prompt — don’t commit it to a shared config file.

Sign in

Connect without a key and the server asks your client to sign in with OAuth 2.1:
  1. Your client opens a browser window. Sign in to the Henry Dashboard if you aren’t already.
  2. Approve the connection. To use a specific API key instead of your account, choose Use an API key instead and paste the key.
  3. You’re sent back to your client, which is now connected.
A sign-in currently lasts 7 days; after that, your client asks you to sign in again. Each endpoint has its own sign-in.
Either way, tool calls run as the team that owns the API key or account and count toward that team’s usage.

Setup Instructions

The examples read your key from HENRY_SDK_API_KEY:

Claude Code

To share the server with your team without sharing a key, check a project-scoped .mcp.json into the repo root. Claude Code expands the variable from each developer’s environment, and falls back to sign-in when it’s unset:
Run /mcp inside a Claude Code session to check the connection, or to sign in if you didn’t set a key.

Claude (web and desktop)

  1. Open Settings > Connectors and choose Add custom connector.
  2. Name it Henry and enter https://mcp.henrylabs.ai/mcp as the URL.
  3. Choose Connect and complete the sign-in.

ChatGPT

  1. Enable developer mode under Settings > Apps & Connectors > Advanced.
  2. Create a connector with the URL https://mcp.henrylabs.ai/mcp/apps and OAuth authentication.
  3. Complete the sign-in when prompted.

Cursor

Open Cursor Settings > Tools & MCP > New MCP Server and add:

Visual Studio Code

Run MCP: Open User Configuration from the Command Palette and add the server. VS Code prompts for the key once and stores it securely:

Codex

Add the server to ~/.codex/config.toml. Codex sends the key as a bearer token:

Windsurf

Under Cascade > MCP Servers, choose Add custom server and add:

Others

Any client that supports remote MCP servers over Streamable HTTP can connect to https://mcp.henrylabs.ai/mcp, sending the key as x-api-key or Authorization: Bearer. Clients that support OAuth can connect without a key and sign in instead.

Headless agents

API keys make the server usable from agents that run unattended.

Claude Agent SDK

Claude API (MCP connector)

The Messages API can call the server directly. authorization_token is sent as Authorization: Bearer:

Available Tools

The /mcp/apps endpoint omits cartPurchase, cartPurchaseStatus, merchantsRetrieve, and merchantsSearch. Card tokenization is never exposed over MCP — agents buy with a cardToken your backend creates, or hand off to hosted checkout via checkoutUrl. Every tool declares readOnlyHint, destructiveHint, and openWorldHint annotations, so clients can auto-approve read-only calls and confirm the rest.

Async tools

Product search, product details, checkout details, and purchase run as background jobs. The first call returns a refId and a processing status; the agent then calls the matching *Status tool with that refId until the status is complete. See Polling for how the underlying jobs behave.

Interactive views

In clients that support MCP Apps (such as Claude and ChatGPT), product search, product details, and cart tools can render an interactive view alongside the result: a product carousel, a product detail sheet, and a cart with a link to Henry’s hosted checkout. Clients without MCP Apps support receive the same data as a normal tool result.