gobox-mcp

gobox-mcp

Enables AI agents and automation tools to interact with the Gobox e-commerce platform, providing tools for orders, products, inventory, warehouses, reports, shipments, and webhooks.

Category
Visit Server

README

gobox-mcp

MCP server wrapping the Gobox Open API (dev-api.gobox.asia/open/api/*) for AI agents, Claude Desktop, and CLI automation.

Features

  • ~40 tools covering orders, products, SKU quantities, warehouses, reports, shops, locations, consignments, Goship rates, webhooks
  • 5 SKU quantity states: available, in_warehouse, keep_pick, wait_qc, wait_incoming (+ composite sku_full_status)
  • Dual transport: stdio (Claude Desktop local) or SSE (Docker shared for bot/team)
  • Auto token refresh with in-memory cache
  • Modular: each tool group in its own file under tools/

Setup

1. Credentials

Contact Gobox admin for client_id + client_secret.

2. Install

cd gobox-mcp
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
# Edit .env with your credentials

3. Run locally (stdio)

python gobox_mcp.py

4. Run in Docker (SSE)

docker compose up -d
# Test: curl http://localhost:8000/sse

Connect to Claude Desktop

Stdio mode (local)

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "gobox": {
      "command": "/absolute/path/to/gobox-mcp/.venv/bin/python",
      "args": ["/absolute/path/to/gobox-mcp/gobox_mcp.py"],
      "env": {
        "GOBOX_BASE_URL": "https://dev-api.gobox.asia",
        "GOBOX_CLIENT_ID": "xxx",
        "GOBOX_CLIENT_SECRET": "xxx"
      }
    }
  }
}

SSE mode (Docker)

{
  "mcpServers": {
    "gobox": {
      "url": "http://localhost:8000/sse"
    }
  }
}

Connect to Claude Code

claude mcp add gobox \
  /absolute/path/.venv/bin/python \
  /absolute/path/gobox_mcp.py \
  -e GOBOX_BASE_URL=https://dev-api.gobox.asia \
  -e GOBOX_CLIENT_ID=xxx \
  -e GOBOX_CLIENT_SECRET=xxx

Environment switching (dev/prod)

Set GOBOX_BASE_URL to switch:

  • Dev: https://dev-api.gobox.asia
  • Prod: https://api.gobox.asia (verify actual prod URL)

Tool catalog

Module Tools
orders_tools list_orders, get_order, create_order, update_order, update_order_status, cancel_order, send_order_to_goship
products_tools list_products, get_product, list_categories, list_brands, list_attributes, sku_quantity_available, sku_quantity_in_warehouse, sku_quantity_keep_pick, sku_quantity_wait_qc, sku_quantity_wait_incoming, sku_full_status
warehouses_tools list_warehouses, list_inventories, list_warehouse_pickings
reports_tools report_warehouse_import, report_warehouse_import_refund, report_export_by_order, report_export_by_sku, report_inventories, report_warehouse_store, report_warehouse_stock, report_materials
shops_tools list_shops
locations_tools list_cities, list_districts, list_wards, list_countries, get_sys_helpers
consignments_tools list_consignments, get_consignment, create_consignment, cancel_consignment
goship_tools get_shipping_rates
webhooks_tools list_webhooks, create_webhook, update_webhook, delete_webhook, toggle_webhook

Example AI queries

"List all Gobox warehouses" "Check stock for SKU ABC123" → calls sku_full_status("ABC123") "Có bao nhiêu đơn Shopee chưa giao hôm nay?" "Báo cáo nhập kho tháng này"

Troubleshooting

OAuth fails: Verify GOBOX_GRANT_TYPE (default client_credentials). Contact admin if unsure.

FastMCP SSE DNS rebinding error: Add transport_security=TransportSecuritySettings(enable_dns_rebinding_protection=False) to mcp.run() call.

Token expired mid-call: Auto-refresh handles this. If persists, call gobox_auth.clear_cache().

Project structure

gobox-mcp/
├── gobox_mcp.py              # Main entry
├── gobox_auth.py             # OAuth token cache
├── gobox_client.py           # HTTP helper
├── tools/
│   ├── orders_tools.py
│   ├── products_tools.py
│   ├── warehouses_tools.py
│   ├── reports_tools.py
│   ├── shops_tools.py
│   ├── locations_tools.py
│   ├── consignments_tools.py
│   ├── goship_tools.py
│   └── webhooks_tools.py
├── Dockerfile
├── docker-compose.yml
├── requirements.txt
├── .env.example
└── README.md

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured