EasyStore MCP by usefulapi

io.usefulapiPublished by usefulapi.ioOfficial publisherv1.8.3Updated Nov 7, 2026

Read EasyStore orders, products and customers; manage stock, fulfillments and customer records.

The publisher's own server: Ably MCP by usefulapi

VerifiedStreamable HTTPWeb executableData & AnalyticsBusiness & Commerce

Overview

AI-generated overview

Reads and updates an EasyStore store from an AI assistant: orders, products, stock, customers, fulfillments and content pages.

What you can do
  • Inspect the store, its locations, products, variants, collections and per-location inventory levels
  • List and open orders with items, addresses, transactions, refunds and taxes, plus fulfillments and checkouts
  • Find customers by name, email, phone or code, and read their addresses, groups, store credit and loyalty points
  • Browse content pages, blogs and articles
  • Change stock levels, variant prices and SKUs, cancel orders, create fulfillments and create or update customers
  • Check monthly call usage, request a missing feature, and upgrade or cancel the paid plan
When to use it
Useful when you want to ask questions about an EasyStore shop in plain language, such as which orders are paid but unfulfilled or how much stock remains at each location, or when you want the assistant to carry out routine stock, fulfillment and customer-record updates.
Requirements
Remote MCP endpoint added by URL only; no API key or Authorization header. Sign-in uses OAuth with an EasyStore account, and the UsefulAPI app must be authorized for the store. A free tier allows 50 tool calls per month; paid plans raise the limit.
Before you install
Write tools change live store data: stock levels are overwritten or adjusted, variant prices and SKUs change, orders can be cancelled irreversibly, fulfillments can email the customer, and customers can be created or edited. Adjust and create calls are not idempotent, so repeats duplicate effects. Customer data is passed to your AI client and its LLM provider. Plans cost money per store and are billed through a payment link.

Installation

In SourceWeft

  1. Open EasyStore MCP by usefulapi in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.usefulapi%2Feasystore/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "easystore-by-usefulapi": {
      "type": "http",
      "url": "https://easystore.usefulapi.io/mcp"
    }
  }
}

README

EasyStore MCP by usefulapi

Connect your EasyStore store to your AI client at https://easystore.usefulapi.io/mcp.

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://easystore.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http easystore https://easystore.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "easystore": {      "url": "https://easystore.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and you sign in with your EasyStore account.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/easystore/

Sign in with EasyStore and authorize UsefulAPI. Customer information passes to your chosen AI client and its LLM provider. Reconnecting a store replaces older AI connections. Uninstall the app to revoke vendor access; stored grants are removed by its signed notification, confirmed token rejection or after 30 days without a successful store API call. Disabling the app may require reconnecting. Billing is per store.

Tools

ToolTypeWhat it does
easystore_get_storereadGet store
easystore_list_locationsreadList locations
easystore_list_productsreadList products
easystore_get_productreadGet product
easystore_list_product_variantsreadList product variants
easystore_list_collectionsreadList collections
easystore_get_collectionreadGet collection
easystore_list_inventory_levelsreadList inventory levels
easystore_list_ordersreadList orders
easystore_get_orderreadGet order
easystore_list_order_fulfillmentsreadList order fulfillments
easystore_list_order_transactionsreadList order transactions
easystore_list_checkoutsreadList checkouts
easystore_list_customersreadList customers
easystore_search_customersreadSearch customers
easystore_get_customerreadGet customer
easystore_list_customer_addressesreadList customer addresses
easystore_get_customer_pointsreadGet customer points
easystore_list_customer_groupsreadList customer groups
easystore_list_pagesreadList pages
easystore_list_blogsreadList blogs
easystore_list_articlesreadList blog articles
easystore_set_inventory_levelwriteSet inventory level
easystore_adjust_inventory_levelwriteAdjust inventory level
easystore_update_variantwriteUpdate variant
easystore_cancel_orderwriteCancel order
easystore_create_fulfillmentwriteCreate fulfillment
easystore_create_customerwriteCreate customer
easystore_update_customerwriteUpdate customer
easystore_usage_statusmetaUsage status (free-tier meter)
easystore_request_featuremetaRequest a missing feature
easystore_upgrademetaUpgrade to Pro or Pro+
easystore_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro (per store)$9/mo or $90/yr (2 months free)Unlimited*

*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].

Pro covers this server only. Subscribe with easystore_upgrade (it returns a Stripe Checkout link). Cancel any time with easystore_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running easystore_upgrade before then undoes the cancel. Or write to [email protected].

License

This is an independent integration by usefulapi. See Terms and Privacy.

Source: servers/easystore/README.md at commit 4046075

Tools

29

easystore_get_store

Get store

The store behind this access token: name, contact emails, easystore domain, plan, locale, country, time zone, currencies and locations. Needs no API access scope. GET /api/3.0/store.json.

Takes no parameters.

easystore_list_locations

List locations

The store's stock and pickup locations (warehouses, outlets) with address, phone, is_primary and pickup settings. Use the ids for inventory levels. Needs read_locations. GET /api/3.0/locations.json.

Parameterspagelimit

easystore_list_products

List products

List products with variants, prices, SKUs, stock, images and collections. Filter by collection, SKU, published status or dates. Needs read_products. GET /api/3.0/products.json.

Parameterspageskussortlimitsince_idis_bundlevisibilitycollection_idscreated_at_maxcreated_at_minupdated_at_maxupdated_at_min

easystore_get_product

Get product

One product by id with its variants, options, images and collections. Needs read_products. GET /api/3.0/products/{id}.json.

Parametersproduct_idrequired

easystore_list_product_variants

List product variants

The variants of one product (price, SKU, barcode, stock, weight, enabled flag). Needs read_products. GET /api/3.0/products/{id}/variants.json.

Parametersproduct_idrequired

easystore_list_collections

List collections

List product collections. Needs read_products. GET /api/3.0/collections.json.

Parametersidspagesortlimitsince_idvisibility

easystore_get_collection

Get collection

One collection by id. Needs read_products. GET /api/3.0/collections/{id}.json.

Parameterscollection_idrequired

easystore_list_inventory_levels

List inventory levels

Stock per variant per location: available (inventory_quantity), committed, incoming and reserved. Pass variant_ids or location_ids (at least one is required). Needs read_products. GET /api/4.0/inventory_levels.json.

Parameterspagelimitvariant_idslocation_ids

easystore_list_orders

List orders

List orders from every sales channel with customer, items, totals, payment and fulfillment status. Filter by payment or fulfillment status, customer, or dates (store time zone). Needs read_orders. GET /api/3.0/orders.json.

Parametersidspagesortlimitsince_idcustomer_idcreated_at_maxcreated_at_minupdated_at_maxupdated_at_minfinancial_statusprocessed_at_max+2 more

easystore_get_order

Get order

One order by id. Ask for extra sections with fields: items, addresses, transactions, fulfillments, refunds, taxes, customer, shipping_fees, discounts, points, cancellation, note_attributes. Needs read_orders. GET /api/3.0/orders/{id}.json.

Parametersfieldsorder_idrequired

easystore_list_order_fulfillments

List order fulfillments

The fulfillments (shipments with tracking details and status) of one order. Needs read_fulfillments. GET /api/3.0/orders/{id}/fulfillments.json.

Parametersorder_idrequired

easystore_list_order_transactions

List order transactions

The payment transactions of one order (gateway, amount, status). Needs read_orders. GET /api/3.0/orders/{id}/transactions.json.

Parametersorder_idrequired

easystore_list_checkouts

List checkouts

List checkouts (carts in progress or abandoned). Cart tokens are not returned. Needs read_orders. GET /api/3.0/checkouts.json.

Parameterspagelimitsince_id

easystore_list_customers

List customers

List customers with contact details, order count, total spent, groups and store credit. Search by name or email with query. Needs read_customers. GET /api/3.0/customers.json.

Parametersidspagesortlimitquerysince_idcreated_at_maxcreated_at_minupdated_at_maxupdated_at_min

easystore_search_customers

Search customers

Find customers by exact email, phone number or customer code. Pass at least one. Needs read_customers. GET /api/3.0/customers/search.json.

Parameterscodepageemaillimitphone

easystore_get_customer

Get customer

One customer by id. Add fields=points,membership for loyalty data. Needs read_customers. GET /api/3.0/customers/{id}.json.

Parametersfieldscustomer_idrequired

easystore_list_customer_addresses

List customer addresses

The saved addresses of one customer. Needs read_customers. GET /api/3.0/customers/{id}/addresses.json.

Parameterspagelimitcustomer_idrequired

easystore_get_customer_points

Get customer points

The loyalty points balance of one customer. Needs read_customers. GET /api/3.0/customers/{id}/points.json.

Parameterscustomer_idrequired

easystore_list_customer_groups

List customer groups

List customer groups (for example VIP). Needs read_customers. GET /api/3.0/groups.json.

Takes no parameters.

easystore_list_pages

List pages

List the store's content pages. Needs read_content. GET /api/3.0/pages.json.

Parameterspagelimit

easystore_list_blogs

List blogs

List the store's blogs. Needs read_content. GET /api/3.0/blogs.json.

Parameterspagelimitvisibility

easystore_list_articles

List blog articles

List blog articles. Needs read_content. GET /api/3.0/articles.json.

Parameterspagelimitvisibility

easystore_set_inventory_level

Set inventory level

WRITE. Set the stock of one variant at one location to an exact number (quantity 0 or more). Omit location_id for the primary location. Overwrites the current quantity; use easystore_adjust_inventory_level for a relative change. Needs write_products. PUT /api/4.0/inventory_levels/set.json.

Parametersquantityrequiredvariant_idrequiredlocation_id

easystore_adjust_inventory_level

Adjust inventory level

WRITE. Add to or remove from the stock of one variant at one location by a relative amount (positive adds, negative removes; 0 is rejected). Not idempotent: repeating it changes the stock again. Omit location_id for the primary location. Needs write_products. PUT /api/4.0/inventory_levels/adjust.json.

Parametersvariant_idrequiredlocation_idadjustment_quantityrequired

easystore_update_variant

Update variant

WRITE. Change one variant's price, compare-at price, cost price, SKU, barcode or enabled flag. Only the fields you pass change. To change stock use the inventory tools. Needs write_products. PUT /api/3.0/products/{product_id}/variants.json.

Parametersskupricebarcodecost_priceis_enabledproduct_idrequiredvariant_idrequiredcompare_at_price

easystore_cancel_order

Cancel order

WRITE, hard to undo. Cancel an order, with an optional reason. Confirm the order id and number with the user first. Needs write_orders. POST /api/3.0/orders/{id}/cancel.json.

Parametersreasonorder_idrequired

easystore_create_fulfillment

Create fulfillment

WRITE. Mark an order (or some of its line items) as shipped, with tracking details. Not idempotent: calling it twice creates two fulfillments. With notify_customer true the customer is emailed. Needs write_fulfillments. POST /api/3.0/orders/{id}/fulfillments.json.

Parametersstatusmessageorder_idrequiredline_itemstracking_urlnotify_customertracking_numbertracking_company

easystore_create_customer

Create customer

WRITE. Create a customer. Pass at least one of first_name, last_name, email or phone. Not idempotent. Needs write_customers. POST /api/3.0/customers.json.

Parameterscodeemailphonegendergroupsbirthdatelast_namefirst_namecountry_code

easystore_update_customer

Update customer

WRITE. Change fields of an existing customer; only the fields you pass change. Needs write_customers. PUT /api/3.0/customers/{id}.json.

Parameterscodeemailphonegendergroupsbirthdatelast_namefirst_namecustomer_idrequiredcountry_code

Version history

10
  1. v1.8.3LatestNov 7, 2026
  2. v1.7.3Nov 5, 2026
  3. v1.7.2Nov 5, 2026
  4. v1.7.1Nov 4, 2026
  5. v1.7.0Nov 3, 2026
  6. v1.6.1Nov 3, 2026
  7. v1.5.0Nov 1, 2026
  8. v1.3.0Oct 31, 2026
  9. v1.2.0Oct 31, 2026
  10. v1.1.1Oct 30, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Usefulapi integrations