# Swell MCP (npm · swell-mcp)

Model Context Protocol server for Swell e-commerce platform integration with AI assistants

- Trust score: 77/100 (medium)
- Change this week: +33
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- npm · `swell-mcp`: 77/100 (this document), [markdown](https://verifymcp.io/servers/devkindhq-swell/swell-mcp.md), [page](https://verifymcp.io/servers/devkindhq-swell/swell-mcp)

## Channel facts

- Registry: `npm`
- Package: `swell-mcp`
- Version: `1.1.0`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Supply Chain Security**: 81/100
  - No malware found by supply-chain analysis.
  - Only part of the dependency tree could be resolved (121 of 122), so this covers what we could see, not the whole tree.
  - Runs a script at install time (postinstall) that we could not recognise. It may be perfectly ordinary, but we do not read the published tarball, so we cannot say what it does.
  - Only part of the dependency tree could be resolved (121 of 122), so this covers what we could see, not the whole tree.
- **Provenance & Transparency**: 97/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to devkindhq/swell-mcp).
  - Clear OSI-approved license (ISC).
  - Actively maintained (last published 80 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 69/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 2130 tokens (~152/item across 14 items; 14 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add devkindhq-swell -- npx -y swell-mcp
```

### Codex

```bash
codex mcp add devkindhq-swell -- npx -y swell-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "devkindhq-swell": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "swell-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add devkindhq-swell --command npx --arg -y --arg swell-mcp
```

### Hermes

```yaml
mcp_servers:
  devkindhq-swell:
    command: "npx"
    args: ["-y", "swell-mcp"]
```

### Other

```json
{
  "mcpServers": {
    "devkindhq-swell": {
      "command": "npx",
      "args": [
        "-y",
        "swell-mcp"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-03 (score 77, +4)

- [functional improvement] Stability: unverified → 0.27

### 2026-08-02 (score 73, +54)

- [security improvement] Provenance: unverified → pass
- [security improvement] Install scripts: unverified → partial
- [security improvement] Known CVEs: unverified → partial
- [security improvement] Malware scan: unverified → pass
- [security] Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window).
- [security] The scripts that run when this package is installed changed: postinstall
- [security] The attested source repository moved: devkindhq/swell-mcp
- [functional regression] Tool coverage: 100 → unverified
- [functional improvement] Schema quality: unverified → excellent
- [functional improvement] License: unverified → pass
- [functional improvement] Dependency health: unverified → partial
- [functional improvement] Maintenance: unverified → pass
- [functional improvement] MCP protocol: unverified → pass
- [functional] Licence: ISC

### 2026-08-01 (score 19, +11)

- [functional regression] Dependency health: partial → unverified
- [functional improvement] Tool coverage: unverified → 100

### 2026-07-31 (score 8, −36)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-27 (score 44)

First indexed and scored.

## MCP tools (14)

### `swell_list_products` (~195 tokens)

List products from your Swell store with filtering and pagination options. Supports filtering by active status, category, tags, and various sorting options. Returns a formatted table of products with basic information including ID, name, SKU, price, stock status, and availability.

Input parameters:

- `active` (boolean): Filter by active status (true for active only, false for inactive only)
- `category` (string): Filter by category slug or ID
- `expand` (array): Fields to expand in response (e.g., ["variants", "categories", "images"])
- `limit` (integer): Number of products per page (max: 100, default: 20)
- `page` (integer): Page number for pagination (default: 1)
- `sort` (string): Sort order (e.g., "date_created_desc", "name_asc", "price_asc")
- `tags` (array): Filter by product tags

### `swell_get_product` (~92 tokens)

Get detailed information for a specific product from your Swell store. Returns comprehensive product details including variants, categories, images, pricing, inventory, SEO information, and custom attributes. Use this tool when you need complete product information.

Input parameters:

- `expand` (array): Fields to expand in response (default: ["variants", "categories", "images"])
- `productId` (string, required): The ID of the product to retrieve

### `swell_search_products` (~198 tokens)

Search for products in your Swell store using text queries with optional filtering. Searches across product names, SKUs, descriptions, and tags. Returns ranked results with match information and supports the same filtering options as product listing.

Input parameters:

- `active` (boolean): Filter by active status (true for active only, false for inactive only)
- `category` (string): Filter by category slug or ID
- `expand` (array): Fields to expand in response (e.g., ["variants", "categories", "images"])
- `limit` (integer): Number of products per page (max: 100, default: 20)
- `page` (integer): Page number for pagination (default: 1)
- `query` (string, required): Search query to find products
- `sort` (string): Sort order (e.g., "relevance", "name_asc", "price_asc")
- `tags` (array): Filter by product tags

### `swell_check_stock` (~82 tokens)

Check current stock levels and stock status for a specific product in your Swell store. Returns detailed stock information including levels, status, and availability messages. Optionally includes variant-level stock information.

Input parameters:

- `includeVariants` (boolean): Whether to include variant stock information (default: true)
- `productId` (string, required): The ID of the product to check stock for

### `swell_update_product` (~223 tokens)

Update product information in your Swell store. Allows modification of product details including name, description, pricing, stock, SEO fields, categories, tags, and custom attributes. Returns a summary of changes made with before/after values.

Input parameters:

- `active` (boolean): Product active status
- `attributes` (object): Custom product attributes
- `categories` (array): Product categories (IDs or slugs)
- `description` (string): Product description
- `metaDescription` (string): SEO meta description
- `metaTitle` (string): SEO meta title
- `name` (string): Product name
- `price` (number): Product price (must be greater than 0)
- `productId` (string, required): The ID of the product to update
- `salePrice`: Product sale price (must be greater than 0, null to remove)
- `sku` (string): Product SKU
- `stockLevel` (integer): Stock level (must be non-negative)
- `stockStatus` (string): Stock status
- `tags` (array): Product tags

### `swell_update_product_stock` (~138 tokens)

Update stock-specific information for a product in your Swell store. Allows modification of stock levels, stock status, and stock tracking settings. Use this tool for focused stock management operations.

Input parameters:

- `orderId` (string): Optional order ID when adjustment is related to an order
- `productId` (string, required): The ID of the product to update stock for
- `quantity` (integer, required): Quantity adjustment (positive to increase, negative to decrease)
- `reason` (string): Reason for the stock adjustment
- `reasonMessage` (string): Optional message describing the reason
- `variantId` (string): Optional variant ID for variant-level adjustments

### `swell_update_product_pricing` (~116 tokens)

Update pricing information for a product in your Swell store. Allows modification of regular price, sale price, and currency. Includes validation to ensure sale price is not higher than regular price.

Input parameters:

- `currency` (string): Currency code (e.g., USD, EUR)
- `price` (number): Regular price (must be greater than 0)
- `productId` (string, required): The ID of the product to update pricing for
- `salePrice`: Sale price (must be greater than 0, null to remove)

### `swell_list_orders` (~213 tokens)

List orders from your Swell store with filtering options. Supports filtering by status, customer, date range, and various sorting options. Returns a formatted table of orders with basic information including order number, customer, status, total, and dates.

Input parameters:

- `customerId` (string): Filter by customer ID
- `dateFrom` (string): Filter orders from this date (ISO format: YYYY-MM-DD)
- `dateTo` (string): Filter orders to this date (ISO format: YYYY-MM-DD)
- `expand` (array): Fields to expand in response (e.g., ["items", "account", "billing", "shipping"])
- `limit` (integer): Number of orders per page (max: 100, default: 20)
- `page` (integer): Page number for pagination (default: 1)
- `sort` (string): Sort order (e.g., "date_created_desc", "date_created_asc", "grand_total_desc")
- `status` (string): Filter by order status

### `swell_get_order` (~95 tokens)

Get detailed information for a specific order from your Swell store. Returns comprehensive order details including items, customer information, billing and shipping addresses, payment details, and order history. Use this tool when you need complete order information.

Input parameters:

- `expand` (array): Fields to expand in response (default: ["items", "account", "billing", "shipping"])
- `orderId` (string, required): The ID of the order to retrieve

### `swell_update_order_status` (~95 tokens)

Update the status of an order in your Swell store. Allows changing order status to pending, payment_pending, delivery_pending, complete, or canceled. Optionally add notes about the status change. Returns the updated order information.

Input parameters:

- `notes` (string): Optional notes about the status change
- `orderId` (string, required): The ID of the order to update
- `status` (string, required): New status for the order

### `swell_list_customers` (~213 tokens)

List customers from your Swell store with search and filtering options. Supports filtering by email, date range, and various sorting options. Returns a formatted table of customers with basic information including name, email, order count, total value, and registration date.

Input parameters:

- `dateFrom` (string): Filter customers created from this date (ISO format: YYYY-MM-DD)
- `dateTo` (string): Filter customers created to this date (ISO format: YYYY-MM-DD)
- `email` (string): Filter by specific email address
- `expand` (array): Fields to expand in response (e.g., ["orders", "addresses"])
- `limit` (integer): Number of customers per page (max: 100, default: 20)
- `page` (integer): Page number for pagination (default: 1)
- `search` (string): Search customers by name or email
- `sort` (string): Sort order (e.g., "date_created_desc", "name_asc", "order_value_desc")

### `swell_get_customer` (~105 tokens)

Get detailed information for a specific customer from your Swell store. Returns comprehensive customer profile including personal information, addresses, order history, and customer analytics. Use this tool when you need complete customer information.

Input parameters:

- `customerId` (string, required): The ID of the customer to retrieve
- `expand` (array): Fields to expand in response (default: ["orders", "addresses"])
- `includeOrderHistory` (boolean): Whether to include order history in the response (default: true)

### `swell_search_customers` (~197 tokens)

Search for customers in your Swell store using text queries. Searches across customer names, email addresses, and phone numbers. Returns ranked results with match information and supports filtering by date range and sorting options.

Input parameters:

- `dateFrom` (string): Filter customers created from this date (ISO format: YYYY-MM-DD)
- `dateTo` (string): Filter customers created to this date (ISO format: YYYY-MM-DD)
- `expand` (array): Fields to expand in response (e.g., ["orders", "addresses"])
- `limit` (integer): Number of customers per page (max: 100, default: 20)
- `page` (integer): Page number for pagination (default: 1)
- `query` (string, required): Search query to find customers (searches name, email, phone)
- `sort` (string): Sort order (e.g., "relevance", "name_asc", "date_created_desc")

### `swell_update_customer` (~168 tokens)

Update customer information in your Swell store. Allows modification of customer details including name, email, phone, notes, tags, and marketing preferences. Use this tool to correct customer information or update their profile.

Input parameters:

- `customerId` (string, required): The ID of the customer to update
- `email` (string): Customer's email address
- `emailOptin` (boolean): Email marketing opt-in status
- `firstName` (string): Customer's first name
- `groupId` (string): Customer group ID
- `lastName` (string): Customer's last name
- `notes` (string): Customer notes
- `phone` (string): Customer's phone number
- `smsOptin` (boolean): SMS marketing opt-in status
- `tags` (array): Customer tags

## Diagnostics

Captured diagnostic sections: Provenance, Install scripts, Dependencies. The full working is on the page: https://verifymcp.io/servers/devkindhq-swell/swell-mcp#diagnostics

## Score history

- 2026-08-03: 77
- 2026-08-02: 73
- 2026-08-01: 19
- 2026-07-31: 8
- 2026-07-30: 44
- 2026-07-28: 44
- 2026-07-27: 44

## Links

- npm package: https://www.npmjs.com/package/swell-mcp
- Socket report: https://socket.dev/npm/package/swell-mcp
- Repository: https://github.com/devkindhq/swell-mcp
- Changelog RSS feed: https://verifymcp.io/servers/devkindhq-swell/swell-mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/devkindhq-swell/swell-mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/devkindhq-swell/swell-mcp
