Swell MCP by usefulapi
Server Details
Manage your Swell headless-commerce store — products, orders, customers, and subscriptions.
- Status
- Healthy
- Uptime
- 81.3% over 57 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- m190/usefulapi-mcp
- GitHub Stars
- 0
TDQS
Scored across 16 tools
Each tool targets a distinct resource and action: get_* for single entities, list_* for collections, and create/update for specific mutations. The generic query tool is explicitly scoped to uncovered models, preventing confusion.
Most tools follow a consistent swell_verb_noun pattern (e.g., swell_get_product, swell_list_orders), but 'swell_query' deviates by being a verb-only name. This is a minor inconsistency in an otherwise predictable scheme.
16 tools is slightly above the ideal 3-15 range, but the breadth of Swell's e-commerce domain (products, orders, customers, subscriptions, etc.) justifies the count. Each tool covers a meaningful resource or action.
The toolset provides comprehensive read operations (get/list) for most resources, but mutations are sparse: only create_product, update_product, and update_order exist. Missing create/delete for nearly all other resources, and no update for customers, subscriptions, invoices, etc., leaving significant gaps in lifecycle management.
Available Tools
16 toolsswell_create_productCreate a productDestructiveInspect
MUTATES LIVE STORE DATA. Create a new product in the store. Provide the common fields directly (name is required); anything else goes in fields, which is merged into the request body. Swell backend REST API: POST /products.
| Name | Required | Description | Default |
|---|---|---|---|
| sku | No | Stock-keeping unit. | |
| name | Yes | Product name (required). | |
| type | No | Product type, e.g. "standard", "subscription", "digital". | |
| price | No | Product price. | |
| active | No | Whether the product is active/visible. | |
| fields | No | Any additional product fields, merged into the request body (e.g. attributes, options, images). | |
| description | No | Product description. | |
| stock_level | No | Available stock quantity. |
swell_get_customerGet a customerRead-onlyInspect
Fetch a single customer (Swell accounts model) by id. Supports expand and fields. Swell backend REST API: GET /accounts/{id}.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Customer (account) id. | |
| expand | No | Comma-separated related fields to expand, e.g. "orders,subscriptions". | |
| fields | No | Comma-separated fields to return. |
swell_get_orderGet an orderRead-onlyInspect
Fetch a single order by its record id or its order number. Supports expand and fields. Swell backend REST API: GET /orders/{id}.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Order id or order number. | |
| expand | No | Comma-separated related fields to expand, e.g. "items,account". | |
| fields | No | Comma-separated fields to return. |
swell_get_productGet a productRead-onlyInspect
Fetch a single product by its record id or its slug. Supports expand and fields. Swell backend REST API: GET /products/{id}.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Product id or slug. | |
| expand | No | Comma-separated related fields to expand, e.g. "variants,categories". | |
| fields | No | Comma-separated fields to return, e.g. "name,price". |
swell_get_subscriptionGet a subscriptionRead-onlyInspect
Fetch a single subscription by id. Supports expand. Swell backend REST API: GET /subscriptions/{id}.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Subscription id. | |
| expand | No | Comma-separated related fields to expand, e.g. "account,product". |
swell_list_cartsList cartsRead-onlyInspect
List shopping carts (including abandoned carts), with filtering, sorting, and expansion. Swell backend REST API: GET /carts.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default 1). | |
| sort | No | Sort expression, e.g. "date_created desc" or "name asc". | |
| limit | No | Max records to return (1–1000, Swell default 15). | |
| where | No | MongoDB-style filter as a JSON object string, e.g. {"active":true,"price":{"$gte":10}}. | |
| expand | No | Comma-separated related fields to expand, e.g. "variants,categories". |
swell_list_categoriesList categoriesRead-onlyInspect
List product categories, with filtering, sorting, search, and expansion. Swell backend REST API: GET /categories.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default 1). | |
| sort | No | Sort expression, e.g. "date_created desc" or "name asc". | |
| limit | No | Max records to return (1–1000, Swell default 15). | |
| where | No | MongoDB-style filter as a JSON object string, e.g. {"active":true,"price":{"$gte":10}}. | |
| expand | No | Comma-separated related fields to expand, e.g. "variants,categories". | |
| search | No | Free-text search across the model's searchable fields. |
swell_list_couponsList couponsRead-onlyInspect
List discount coupons, with filtering and sorting. Swell backend REST API: GET /coupons.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default 1). | |
| sort | No | Sort expression, e.g. "date_created desc" or "name asc". | |
| limit | No | Max records to return (1–1000, Swell default 15). | |
| where | No | MongoDB-style filter as a JSON object string, e.g. {"active":true,"price":{"$gte":10}}. |
swell_list_customersList customersRead-onlyInspect
List customers. In Swell, customers are the accounts model — this queries GET /accounts, with filtering, sorting, search, and expansion.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default 1). | |
| sort | No | Sort expression, e.g. "date_created desc" or "name asc". | |
| limit | No | Max records to return (1–1000, Swell default 15). | |
| where | No | MongoDB-style filter as a JSON object string, e.g. {"active":true,"price":{"$gte":10}}. | |
| expand | No | Comma-separated related fields to expand, e.g. "variants,categories". | |
| search | No | Free-text search across the model's searchable fields. |
swell_list_invoicesList invoicesRead-onlyInspect
List invoices (typically subscription invoices), with filtering, sorting, and expansion. Swell backend REST API: GET /invoices.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default 1). | |
| sort | No | Sort expression, e.g. "date_created desc" or "name asc". | |
| limit | No | Max records to return (1–1000, Swell default 15). | |
| where | No | MongoDB-style filter as a JSON object string, e.g. {"active":true,"price":{"$gte":10}}. | |
| expand | No | Comma-separated related fields to expand, e.g. "variants,categories". |
swell_list_ordersList ordersRead-onlyInspect
List orders, with MongoDB-style filtering, sorting, search, and expansion. Swell backend REST API: GET /orders.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default 1). | |
| sort | No | Sort expression, e.g. "date_created desc" or "name asc". | |
| limit | No | Max records to return (1–1000, Swell default 15). | |
| where | No | MongoDB-style filter as a JSON object string, e.g. {"active":true,"price":{"$gte":10}}. | |
| expand | No | Comma-separated related fields to expand, e.g. "variants,categories". | |
| search | No | Free-text search across the model's searchable fields. |
swell_list_productsList productsRead-onlyInspect
List products in the store, with MongoDB-style filtering, sorting, search, field selection, and expansion. Swell backend REST API: GET /products.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default 1). | |
| sort | No | Sort expression, e.g. "date_created desc" or "name asc". | |
| limit | No | Max records to return (1–1000, Swell default 15). | |
| where | No | MongoDB-style filter as a JSON object string, e.g. {"active":true,"price":{"$gte":10}}. | |
| expand | No | Comma-separated related fields to expand, e.g. "variants,categories". | |
| fields | No | Comma-separated fields to return, e.g. "name,price,active". | |
| search | No | Free-text search across the model's searchable fields. |
swell_list_subscriptionsList subscriptionsRead-onlyInspect
List subscriptions, with filtering, sorting, and expansion. Swell backend REST API: GET /subscriptions.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default 1). | |
| sort | No | Sort expression, e.g. "date_created desc" or "name asc". | |
| limit | No | Max records to return (1–1000, Swell default 15). | |
| where | No | MongoDB-style filter as a JSON object string, e.g. {"active":true,"price":{"$gte":10}}. | |
| expand | No | Comma-separated related fields to expand, e.g. "variants,categories". |
swell_queryQuery any collection (read-only)Read-onlyInspect
Power tool: read-only (GET only) access to ANY Swell model not covered by a dedicated tool — e.g. stock, promotions, giftcards, payments, shipments, settings. Supply the collection name plus the usual list params (limit, page, where, sort, expand, fields, search). Swell backend REST API: GET /{collection}.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default 1). | |
| sort | No | Sort expression, e.g. "date_created desc" or "name asc". | |
| limit | No | Max records to return (1–1000, Swell default 15). | |
| where | No | MongoDB-style filter as a JSON object string, e.g. {"active":true,"price":{"$gte":10}}. | |
| expand | No | Comma-separated related fields to expand, e.g. "variants,categories". | |
| fields | No | Comma-separated fields to return, e.g. "name,price,active". | |
| search | No | Free-text search across the model's searchable fields. | |
| collection | Yes | Swell model/collection name, e.g. "products", "stock", "promotions", "giftcards". |
swell_update_orderUpdate an orderDestructiveInspect
MUTATES A LIVE ORDER. Partially update an existing order by id — e.g. change status, fulfillment, or notes. Provide the id plus a fields object of attributes to change, e.g. {"status":"complete"}. Swell backend REST API: PUT /orders/{id}.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Order id to update (required). | |
| fields | Yes | Partial set of order attributes to update, e.g. {"status":"complete"} or fulfillment fields. |
swell_update_productUpdate a productDestructiveInspect
MUTATES LIVE STORE DATA. Partially update an existing product by id. Provide the id plus a fields object of attributes to change. Swell backend REST API: PUT /products/{id}.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Product id to update (required). | |
| fields | Yes | Partial set of product attributes to update, e.g. {"price":19.99,"active":false}. |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
16 tool updates
- Changed
swell_create_product1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_get_customer1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_get_order1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_get_product1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_get_subscription1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_list_carts1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_list_categories1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_list_coupons1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_list_customers1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_list_invoices1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_list_orders1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_list_products1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_list_subscriptions1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_query1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_update_order1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
swell_update_product1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
16 tool updates
- First observed
swell_create_product - First observed
swell_get_customer - First observed
swell_get_order - First observed
swell_get_product - First observed
swell_get_subscription - First observed
swell_list_carts - First observed
swell_list_categories - First observed
swell_list_coupons - First observed
swell_list_customers - First observed
swell_list_invoices - First observed
swell_list_orders - First observed
swell_list_products - First observed
swell_list_subscriptions - First observed
swell_query - First observed
swell_update_order - First observed
swell_update_product
Related MCP Connectors
Manage a Vajro store through the Hermes API: themes, blocks, settings, plugins and more.
1Manage products, orders, customers, inventory, and store configuration
Create and manage checkout pages, event ticketing, forms, customers, payments and subscriptions.
Manage your NanoCart store from any AI agent: products, orders, coupons, subscribers, reports.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables interaction with Shopify store data via the GraphQL Admin API to manage products, customers, orders, and collections. Supports multi-store configurations and provides comprehensive management tools for e-commerce administration in both local and remote environments.13 npm1MIT
- FlicenseAqualityDmaintenanceEnables LLM agents to interact with Squarespace Commerce APIs (products, orders, inventory, transactions) using natural language.11-
- AlicenseCqualityNot gradedmaintenanceEnables interaction with Shopify store data via the GraphQL Admin API for managing products, customers, and orders. It allows users to search, retrieve, create, and update store records through natural language commands.91,777 npm-
- AlicenseBqualityCmaintenanceEnables Shopify store management through the Admin GraphQL API, offering 54 scope-aligned tools for orders, products, inventory and location fulfilment by SKU, customers, collections, discounts, content, metafields, and analytics.5420 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.