Guides

Claude MCP Integration

Edit this page

The Model Context Protocol (MCP) is Anthropic's standard for connecting Claude to external tools and data sources. This guide shows how to create an MCP server for your e-commerce store.

What is MCP?

MCP allows Claude Desktop to:

  • Tools: Call your backend functions (search, add to cart, checkout)
  • Resources: Access live data feeds (product catalog, inventory)
  • Prompts: Use pre-defined conversation templates

Quick Setup

1. Install the Package

1npm install @commercegateway/commerce-gateway

2. Create Your MCP Server

1import { MCPServer } from '@commercegateway/commerce-gateway/mcp';
2import { MyBackend } from './backend';
3 
4const server = new MCPServer({
5 backends: {
6 products: new MyBackend(),
7 cart: new MyBackend(),
8 },
9 tools: [
10 'search_products',
11 'get_product_details',
12 'add_to_cart',
13 'check_inventory',
14 'get_recommendations',
15 'create_order',
16 ],
17 resources: ['catalog'],
18 prompts: ['shopping_assistant'],
19 name: 'my-store',
20 version: '1.0.0',
21});
22 
23server.start();

3. Configure Claude Desktop

Add to ~/.config/claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

1{
2 "mcpServers": {
3 "my-store": {
4 "command": "node",
5 "args": ["/absolute/path/to/mcp-server.js"],
6 "env": {
7 "REDIS_URL": "redis://localhost:6379",
8 "API_KEY": "your-api-key"
9 }
10 }
11 }
12}

4. Restart Claude Desktop

Close and reopen Claude Desktop. Your tools should now be available!

Built-in Tools

The gateway includes 6 commerce tools out of the box:

| Tool | Description | |------|-------------| | search_products | Search product catalog with filters | | get_product_details | Get detailed product info by ID | | add_to_cart | Add item to shopping cart | | check_inventory | Check stock availability | | get_recommendations | Get product recommendations | | create_order | Create order from cart |

Example Conversation

  1. User asks about products

    "What wireless headphones do you have?"

    Claude calls search_products with query "wireless headphones"

  2. Claude shows results

    "I found 3 wireless headphones:

    1. Premium Wireless Headphones - $299.99 ⭐ 4.8/5 Active noise cancellation, 30-hour battery

    2. Sport Earbuds - $149.99 ⭐ 4.6/5 Water resistant, 8-hour battery

    Would you like details on any of these?"

  3. User adds to cart

    "Add the Premium headphones in black to my cart"

    Claude calls add_to_cart with product ID and variant

Troubleshooting

Claude doesn't see my tools
  1. Check that the path in claude_desktop_config.json is absolute
  2. Ensure the script runs without errors: node /path/to/mcp-server.js
  3. Restart Claude Desktop completely
Tool calls fail silently

Your backend might be throwing errors. Add logging to your terminal output and check there.