IMPORTANT: The Veeqo MCP is powered by AI. It can make mistakes, so review its answers before you rely on them. The Veeqo MCP will always ask you to confirm any action that spends money or changes your orders, stock, or settings (like buying labels or editing orders) - those are yours to approve.
What is the Veeqo MCP?
The Veeqo MCP is a server that gives AI assistants read and write access to your Veeqo account. This guide explains how to connect the major AI assistants to it.
The server is a Streamable HTTP MCP endpoint protected by OAuth 2.0 (Authorization Code + PKCE). For OAuth-capable clients you only need to paste the server URL; the client opens a browser, you log in to Veeqo, and the connection is authorised on your behalf. No API key handling is required for the OAuth path. For other clients you will need to use your API key.
How the Veeqo MCP works
Veeqo hosts a remote MCP server that exposes a single HTTPS endpoint that AI tools can connect to and call tools against. Every request is authenticated as a specific Veeqo user and the server then calls the Veeqo API on that user's behalf, so an agent can only ever read or change what that user's own account already permits.
IMPORTANT: Check the permissions associated with your user role before using the MCP. You will not be able to use MCP functionality if your role does not have the relevant permissions.
What can the Veeqo MCP do?
We've opened up 85+ tools across the full breadth of Veeqo. This isn't a read-only data feed. It's operational access that lets AI agents actually work with your business:
Orders: List, search, create, cancel, merge and update orders. Add notes, change shipping addresses, handle returns.
Shipping & labels: Compare services, buy labels, track shipments and manage carrier accounts.
Inventory: Check stock across locations and channels, update quantities, manage warehouse locations.
Products and Listings: Read product data, work with listings and keep catalogue information accurate.
Warehouse & picking: Manage batches, create pick lists, assign orders to fulfilment workflows.
Purchase orders & suppliers: Monitor stock, manage suppliers, stay ahead of replenishment.
Reporting & analytics: Pull performance data across your operation without exporting spreadsheets.
How to install the Veeqo MCP
Before You Start
Before you can use the Veeqo MCP, you need:
A Veeqo account with the permissions for whatever you intend to do (read vs. write tools are gated by your Veeqo role).
For clients that don't yet speak remote MCP natively: Node.js 18+ (provides npx, used to run the mcp-remote adapter).
Your Veeqo API key
Connection Details
You can set up the MCP with any AI assistant using these connection details.
Property | Value |
Server URL | |
Transport | Streamable HTTP (remote) |
Authentication | OAuth 2.0 Authorization Code + PKCE (browser login to Veeqo) |
Alternative auth | Authorization: Bearer apikey:<your-veeqo-api-key> (programmatic / non-OAuth clients) |
Read below for instructions on connecting with some of the most common AI assistants. Use https://app.veeqo.com/mcp as the server URL in every example below.
Claude
Claude
There are three options when connecting to the MCP via Claude:
Claude desktop/Claude.ai Custom Connector (recommended)
Claude desktop/Claude.ai Custom Connector (recommended)
Claude supports remote MCP servers natively through Custom Connectors, which is the cleanest path because it handles the OAuth login for you.
To setup with Claude custom connector:
Open Claude (Desktop app or claude.ai).
Go to Settings and select Connectors.
Click Add custom connector.
Name it Veeqo and paste the URL: https://app.veeqo.com/mcp
Click Add, then Connect. A browser window opens to the Veeqo login page.
Sign in to Veeqo and approve access. Claude stores the session and the Veeqo tools become available.
NOTE: Custom Connectors are available on Claude Pro, Max, Team, and Enterprise plans. If you don't see the option, update to the latest Claude Desktop or use Option B.
Claude desktop via config file
Claude desktop via config file
Use this if your Claude Desktop version only supports local (stdio) servers. The mcp-remote adapter bridges the remote server and handles OAuth.
Open the Claude Desktop app.
Click the Claude menu in your system's menu bar (macOS) or tray/settings menu (Windows), then select Settings*.
Go to the Developer tab in the left sidebar.
Click Edit Config to open claude_desktop_config.json in your default text editor.
Paste the below into your text editor:
{
"mcpServers": {
"veeqo": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://app.veeqo.com/mcp"]
}
}
}Restart Claude Desktop. On first use, a browser tab opens prompting you to log into Veeqo.
*NOTE: You can also locate the file locally (using your file system) using:
For MacOS:
macOS: ~/Library/Application/Support/Claude/claude_desktop_config.json
For Windows:
Windows: %APPDATA%\Claude\claude_desktop_config.json
Claude code (CLI)
Claude code (CLI)
Start the Claude code CLI via your preferred workspace (e.g. through terminal)
Run the following command:
claude mcp add --transport http veeqo https://app.veeqo.com/mcp
Restart Claude code.
Run /mcp to trigger the OAuth login.
Run claude mcp list to confirm the Veeqo server shows as connected.
Cursor
Cursor
Open Cursor from your desktop.
Click File then click Open.
Choose if you want to make the MCP available for one project or all projects (global):
For one project, open <project>/.cursor/mcp.json, where project is your project name. If it doesn't exist yet, create a new file and save it as below:
<project>/.cursor/mcp.json
For global use, open ~/.cursor/mcp.json. If it doesn't exist yet, create a new file and save it as below:
~/.cursor/mcp.json
Paste the below into the file:
{
"mcpServers": {
"veeqo": {
"url": "https://app.veeqo.com/mcp"
}
}
}Go to Cursor Settings and select MCP. The Veeqo server should appear with a "Needs login" prompt.
Click on the prompt and complete the Veeqo OAuth flow in your browser. The indicator should turn green and the Veeqo MCP tools will be listed.
VS Code (GitHub CoPilot)
VS Code (GitHub CoPilot)
NOTE: Before you start, make sure you have VS Code with the GitHub Copilot and Copilot Chat extensions installed and signed in with an active Copilot licence.
Open VS Code from your desktop.
Choose if you want to make the MCP available for one project or all projects (global):
For one project, open or create the file called .vscode/mcp.json and paste the below into the file:
{
"servers": {
"veeqo": {
"type": "http",
"url": "https://app.veeqo.com/mcp"
}
}
}For global use, open the command palette (for Mac, use Cmd+Shift+P / for Windows, use Ctrl+Shift+P) and run MCP: Add Server and follow the prompts. You will be asked to input this url https://app.veeqo.com/mcp
Open the Copilot chat and switch to "Agent mode".
Start the Veeqo server. You will be prompted to login to Veeqo to authenticate.
Click the tools icon in Agent mode to confirm the Veeqo tools are listed.
Cline
Cline
Open your IDE (VS Code or JetBrains) and open the Cline panel.
You have two options to configure the MCP.
For the UI method:
click the MCP Servers icon and select "Remote Servers".
Add a server named veeqo with the URL https://app.veeqo.com/mcp
For the config file method, open cline_mcp_settings.json (the MCP Servers view has an option to open this file directly) and paste the below into the file:
{
"mcpServers": {
"veeqo": {
"type": "streamableHttp",
"url": "https://app.veeqo.com/mcp"
}
}
}
On first connect, Cline will open a browser for you to login to Veeqo and authenticate. Once authenticated, the Veeqo MCP tools will be listed.
Windsurf
Windsurf
Open Windsurf from your desktop.
Open the config file ~/.codeium/windsurf/mcp_config.json (in Windsurf, the Cascade MCP view has an option to open this file directly). Paste the below into the file and save:
{
"mcpServers": {
"veeqo": {
"serverUrl": "https://app.veeqo.com/mcp"
}
}
}Open Cascade and go to MCP (the hammer/plugins icon), then click Refresh. You will be prompted to login to Veeqo and authenticate via your browser. Once authenticated, the Veeqo MCP tools will be listed.
NOTE: If your Windsurf version doesn't support serverUrl, fall back to the mcp-remote command form shown in the Generic fallback section below.
ChatGPT
ChatGPT
NOTE: Before you start, remote MCP connectors are available in ChatGPT via Developer mode / Connectors on Plus, Pro, and Business/Enterprise plans, where enabled by your workspace admin.
Go to Settings and select Connectors (enable Developer mode if required).
Add/Create a connector.
Set the MCP server URL to https://app.veeqo.com/mcp
Choose OAuth as the authentication method and complete the Veeqo login. Once connected, the Veeqo MCP tools will be available in your chats.
NOTE: Connector availability and the exact menu names change between ChatGPT releases and depend on workspace admin settings. If MCP connectors aren't enabled for your account, this path won't be available.
Other
Other
Generic Fallback
Generic Fallback
Use the below for any client that supports local (stdio) MCP servers can reach the remote server through the mcp-remote adapter:
{
"mcpServers": {
"veeqo": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://app.veeqo.com/mcp"]
}
}
}
Authenticating with a Veeqo API Key
Authenticating with a Veeqo API Key
For non-interactive/programmatic clients, you can pass a Veeqo API key directly instead of doing the browser OAuth flow.
To get your API key:
Go to Settings.
Click on Users.
Click on the relevant user and copy your API key
IMPORTANT: If you haven't used the API key before you may need this enabled in your account by contacting the Support team. For more information on the API key and best practices, check out this guide.
Once you have your API key:
Forward it as a bearer token with the apikey: prefix:
{
"mcpServers": {
"veeqo": {
"command": "npx",
"args": [
"-y", "mcp-remote", "https://app.veeqo.com/mcp",
"--header", "Authorization: Bearer apikey:${VEEQO_API_KEY}"
],
"env": { "VEEQO_API_KEY": "your_veeqo_api_key" }
}
}
} The server validates the key against Veeqo on every request, so a revoked key stops working immediately.
Verify Your Connection
After connecting, confirm the assistant can see the tools and reach your account. Ask it something read-only, for example:
"List my Veeqo warehouses."
"Show me my account capabilities."
"How many orders are awaiting fulfillment?"
If the assistant returns real data from your Veeqo account, the install is working. Most clients also show a tool count or a list of veeqo_* tools in their MCP/Connectors panel.
Example Use-cases and Prompts
Ask your AI assistant how many orders need shipping, to sort them by warehouse location and print the packing slips.
"Fetch all my ready-to-ship orders at my New York warehouse and sort them by SKU then print packing slips in that order."
Have it monitor stock levels and flag when a product is running low across any of your warehouses.
"Which products have fewer than 10 units left in any warehouse? Create a draft purchase order for anything below its reorder point."
Build your own workflows, reorder triggers, fulfilment routing, daily operations summaries, without writing code.
"Show me a weekly review of my business: orders, revenue, and average order value compared to last week, broken down by channel."
Build your own Apps – our MCP doesn't just let AI read your data. It lets you build tools that work with it.
"Build me a cycle count app that checks my stock by aisle each day and flags anything that doesn't match"
Troubleshooting
The table below shows some common errors and how to fix them:
Symptom | Fix |
401 / "invalid token" after login | Re-run the OAuth flow. For mcp-remote, clear its cached auth: delete ~/.mcp-auth and reconnect. |
Browser login window never opens | Ensure the client can launch a browser; for headless setups use the API-key auth path instead. |
npx: command not found | Install Node.js 18+ so npx/mcp-remote is available. |
Tools don't appear after editing config | Fully restart the client (quit and reopen, not just reload). |
Some tools are missing | Write tools require the matching Veeqo role permission; read-only access only shows read tools. |
Rate-limit errors (HTTP 429) | The server limits requests per minute. Slow down repeated calls. |
