mcpField
B
Bigcommerce Api Mcp

Bigcommerce Api Mcp

Local
github.com/isaacgountonDeveloper Tools5Updated 4w ago

About Bigcommerce Api Mcp

Bigcommerce Api Mcp connects AI assistants to the BigCommerce REST API for store catalog, customer, and order data. Reads are available by default; write tools are registered only when explicitly enabled.

Key features

  1. 01List and filter products
  2. 02Retrieve product variants and images
  3. 03Search customers and orders
  4. 04Inspect order line items
  5. 05Optional product, customer, and order updates

Use cases

  1. 01Reviewing a store catalog
  2. 02Looking up customer and order records
  3. 03Changing store data when writes are enabled

MCP support

The MCP server exposes BigCommerce read tools for products, customers, categories, brands, and orders. Optional write tools can create or update products and customers, or update orders.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

BigCommerce MCP Server

An MCP server for the BigCommerce REST API. Gives an AI assistant read access to your catalog, customers and orders — and, when you turn it on, the ability to change them.

Tools

Read

ToolWhat it does
get_all_productsList products with filtering, sorting and pagination
get_productOne product by ID, optionally with variants and images
get_all_customersList customers by ID, email, name, company or date range
get_all_ordersList orders by customer, status, date range or total
get_orderOne order by ID
get_order_productsAn order's line items — what was actually bought
list_categoriesResolve category names to the IDs product filters need
list_brandsResolve brand names to the IDs product filters need

Write — requires BIGCOMMERCE_ENABLE_WRITES=true

ToolWhat it does
create_productCreate a catalog product
update_productUpdate price, stock, visibility, categories…
create_customerCreate a customer record
update_customerUpdate a customer's details
update_orderChange status, staff notes or customer message

Write tools aren't registered at all unless enabled, so a default deployment can't modify your store even if someone reaches its endpoint.

npm run list-tools prints the tools and parameters as currently configured.

Setup

Needs Node 20+.

git clone https://github.com/isaacgounton/bigcommerce-api-mcp.git
cd bigcommerce-api-mcp
npm install
cp .env.example .env

Then fill in .env:

BIGCOMMERCE_STORE_HASH=your_store_hash_here
BIGCOMMERCE_API_KEY=your_api_key_here

Get both from BigCommerce admin → Settings → API accounts → Create API account. Grant Products, Orders and Customers — read-only unless you plan to enable writes. .env.example documents every supported variable.

Running

npm start          # stdio — Claude Desktop, Cline, local clients
npm run start:http # streamable HTTP — remote clients and agent runtimes

HTTP mode serves POST /mcp, plus unauthenticated GET /health and /info.

The SSE transport was removed in favour of Streamable HTTP, which replaced it in the MCP spec. Point any client still using /sse at /mcp.

Claude Desktop

In claude_desktop_config.json (use absolute paths — which node):

{
  "mcpServers": {
    "bigcommerce": {
      "command": "/absolute/path/to/node",
      "args": ["/absolute/path/to/bigcommerce-api-mcp/mcpServer.js"],
      "env": {
        "BIGCOMMERCE_STORE_HASH": "your_store_hash",
        "BIGCOMMERCE_API_KEY": "your_api_key"
      }
    }
  }
}
Over HTTP
curl -X POST http://127.0.0.1:3000/mcp \
  -H "Authorization: Bearer $MCP_AUTH_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Security

Anyone who can call /mcp acts with your store's API credentials.

  • HOST — binds to 127.0.0.1 by default. Set 0.0.0.0 only when you mean to expose it, and put it behind a proxy or firewall when you do.
  • MCP_AUTH_TOKEN — when set, every /mcp request must carry Authorization: Bearer <token>. Comparison is timing-safe. Set it whenever the server is reachable beyond localhost.
  • ALLOWED_ORIGINS — requests carrying an Origin header are refused unless listed here, which blocks DNS-rebinding attacks where a page you visit drives your local server. Non-browser clients send no Origin and are unaffected.
  • BIGCOMMERCE_ENABLE_WRITES — leave off if the assistant only reads.
  • Scopes — give the API account the narrowest scopes that work. A read-only token can't be widened by a bug in this server.

Docker

docker build -t bigcommerce-mcp .
docker run --rm -p 3000:3000 --env-file .env bigcommerce-mcp

The image sets HOST=0.0.0.0 so the published port is reachable. Set MCP_AUTH_TOKEN before exposing the container.

Development

npm test           # protocol, auth, origin, discovery and spec conformance — no credentials needed
npm run test:live  # smoke-test read tools against a real store (needs .env)
npm run sync-spec  # refresh the query-parameter fixture from BigCommerce's OpenAPI specs

npm test checks every query parameter a tool declares against BigCommerce's published specs. This matters because BigCommerce ignores unknown query parameters rather than rejecting them — an invented filter silently returns unfiltered data, which is worse than an error.

To add a tool, drop a file under tools/bigcommerce/<group>/ exporting an apiTool — it's discovered automatically. lib/bigcommerce.js handles credentials, query building, errors and parsing, so a tool is usually just a path and a schema; copy tools/bigcommerce/catalog/list-brands.js. Set writes: true on anything that mutates the store.

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.