MCP App Store
by KeenEthics
Business & Operations
Brainerce icon

Brainerce

by Brainerce inc

Overview

Brainerce connects your Brainerce-powered online store to ChatGPT so you can run it in conversation instead of clicking through a dashboard. Check what is in stock, look up and update products, review and fulfil orders, issue and manage discount codes, find customers, and edit storefront content. The connection is bound to a single store and to the permissions you grant when you sign in. An assistant given read-only access cannot change anything, and it can never reach another merchant's store. Actions that modify or delete data are marked as such, so ChatGPT asks before running them. This app manages catalogues of physical goods. It does not sell digital products or subscriptions, and it does not process payments or transfer funds through ChatGPT.

Tools

call_destructive_tool

ChatGPT
Invoke a destructive-category tool of the Brainerce Admin API by the exact name search_tools gave - a registry key, not a URL. Other categories are refused.

call_read_tool

ChatGPT
Invoke a read-category tool of the Brainerce Admin API by the exact name search_tools gave - a registry key, not a URL. Other categories are refused.

call_write_tool

ChatGPT
Invoke a write-category tool of the Brainerce Admin API by the exact name search_tools gave - a registry key, not a URL. Other categories are refused.

cancel_order

ChatGPT
Cancel an order: irreversible and NOT a refund, no money moves. Works on native and connector (Shopify/WooCommerce) orders. Refused once cancelled, refunded, completed or fulfilled.

count_products

ChatGPT
Total number of products (the counting route).

create_category

ChatGPT
Create a category; parentId nests it.

create_coupon

ChatGPT
Create a coupon: a CODE the shopper types at checkout; nothing is discounted until they enter it. ⛔ NOT for an automatic or storewide discount with no code: that is create_discount_rule.

create_discount_rule

ChatGPT
Create an automatic discount rule (applied at cart/checkout time, no code needed). Type drives the required discountConfig shape (PRODUCT_DISCOUNT, ORDER_DISCOUNT, BUY_X_GET_Y, BUY_X_GET_X, VOLUME_DISCOUNT, SHIPPING_DISCOUNT, BUNDLE). Optionally scope to specific channels, set a priority, date window, usage/budget caps, combination flags, filters, and conditions.

create_loyalty_tier

ChatGPT
Create a loyalty TIER: a level in the customer club, earned at a spend or points threshold. ⛔ This is what "VIP club", "members club" and "loyalty levels" mean - NOT create_tag, which only labels and carries no points or benefits.

create_product

ChatGPT
Create a product; physical goods only. SIMPLE needs basePrice; VARIABLE needs variants. KIT: type:KIT creates it EMPTY and unsellable; this surface cannot add components, so tell the merchant that is a dashboard task. categoryNames/brandNames auto-create by name; categories/brands take existing ids. External image URLs are queued and HIDDEN until import completes; importStatus pending means queued, NOT live, so report it as queued.

create_sales_channel

ChatGPT
Create a sales channel (storefront connection) with its vc_* id. New channels start in TEST mode; LIVE needs a public https domain. ⛔ Never repeat a full vc_ id into the conversation unless the merchant asked; it is the storefront's credential.

create_shipping_rate

ChatGPT
Add a rate to a zone. rateConfig by type: FLAT_RATE {amount}; WEIGHT_BASED {baseRate, perKg, maxWeight?}; PRICE_BASED {tiers:[{minOrderAmount, rate}]}; FREE {minOrderAmount?}; LOCAL_PICKUP {amount, pickupLocation:{name, line1, city, postalCode, country}}. Amounts are in the store currency. Example: FLAT_RATE with {"amount":10}.

create_shipping_zone

ChatGPT
Create a shipping zone: the destinations (countries, optionally regions or postal codes) a set of rates applies to. ["*"] is worldwide. Matched by priority, lower first. A zone needs at least one create_shipping_rate before checkout offers it.

create_tag

ChatGPT
Create a tag: a LABEL on products or customers, with an optional picture (image). To tag products use update_product (auto-creates missing tags). ⛔ NOT a customer programme: a VIP club, members club, loyalty levels or tiers is a LOYALTY TIER, which is not on this list - search_tools for "loyalty tier". A tag named "VIP" carries no points, benefits or members, and a model created exactly that when asked for a VIP club.

create_tax_rate

ChatGPT
Create a tax rate. ⛔ The rate is the MERCHANT's legal number: use the figure they gave, never one you assume; this registers and files nothing with any authority. Call list_tax_rates first and REFUSE a duplicate country+region. rate is a PERCENTAGE (17 = 17%, not 0.17). Omit country / region for everywhere. Collected only while taxEnabled is true (update_store).

create_variant

ChatGPT
Add a variant to a VARIABLE product. ⛔ Sets no stock - call set_variant_stock after.

duplicate_product

ChatGPT
Creates a SECOND product: a draft copy, optionally renamed. Not idempotent; twice makes two copies.

fulfill_order

ChatGPT
Mark an order fulfilled/shipped, optionally with tracking. Destructive and not reversible here; emails the customer unless notify_customer:false (tracking button needs tracking_url). Unpaid orders need allow_unpaid_fulfillment:true. Already shipped: only tracking is corrected.

get_customer

ChatGPT
One customer in full.

get_customer_orders

ChatGPT
A customer's orders; has fulfillmentStatus, which list_orders lacks. ⛔ Includes test orders and cannot flag them.

get_order

ChatGPT
One order in full.

get_product

ChatGPT
One product by id in full. inventory is the authoritative stock total, already summed across variants.

get_store

ChatGPT
Store profile and settings. scheduledDeletionAt is the last day a suspended store can be reactivated, NOT an erasure date.

get_store_analytics_summary

ChatGPT
Whole-store KPIs: product count (the counting route), order counts and revenue for today, week and month with last-month comparison.

get_store_setup_status

ChatGPT
Checklist of what this store still needs before it can take a real order: store name, sales channel, products published to a channel, shipping, payment provider, tax. Each step has done, detail and nextAction (the tool here, else the dashboard page); nextStep is the first undone one. Call it when the merchant asks what is left, how to start selling or if the store is ready, instead of guessing. A payment provider in TEST mode is NOT done.

list_capabilities

ChatGPT
Every domain this connector can manage, grouped, with the noun to search each one by. ⛔ CALL THIS BEFORE ANSWERING "what can you do", "what can you help me with", or any request you cannot immediately place — and before telling a merchant that something is not possible. The tools you can see are roughly a TENTH of what this connector reaches; the rest are behind search_tools, so a capability answer written from your visible tool list is wrong and a merchant reading it concludes the platform is small. Measured on this connector four times: asked what it could do, it named products, orders, customers, discounts and shipping, and omitted loyalty clubs, blog posts and email campaigns every single time. Read-only, needs no sign-in, and returns the same list whatever the store.

list_categories

ChatGPT
Categories with parentId and product counts.

list_coupons

ChatGPT
List or search coupons.

list_customers

ChatGPT
List, search and segment customers; returns order count and total spent.

list_discount_rules

ChatGPT
List automatic discount rules.

list_orders

ChatGPT
Orders, newest first. ⛔ status is the INTERNAL status, matched VERBATIM, one at a time: DRAFT, PENDING, PROCESSING, ON_HOLD, PAID (not shipped yet), SHIPPED, DELIVERED, FULFILLED, COMPLETED (gone), CANCELLED, REFUNDED, PARTIALLY_REFUNDED. Anything else returns an EMPTY page, not an error. Payment is financialStatus per row and is NOT filterable. Skip rows with isTestOrder.

list_products

ChatGPT
⛔ NOT for counting. To answer 'how many products do I have', call get_store_analytics_summary (or count_products) — do NOT fetch a page here just to read meta.total: this tool renders a product CARD, so a one-row page shows the merchant ONE product beside your sentence saying seven. List products with pagination, search and filters (status, type, category/brand/tag names, sales channel, downloadable, has-images, locale, region for FX-overlaid display prices). Returns the standard { data, meta } page. Use this to find product ids before reading or editing. Each product's inventory field is the authoritative stock total — for VARIABLE products it is already summed across all variants, so use it directly rather than adding up variants[].inventory yourself. Pass layout: 'list' when the user asks for a list or table view.

list_sales_channels

ChatGPT
All sales channels with mode (TEST/LIVE), status, domain and connection id. ⛔ Never repeat a full vc_ id into the conversation unless the merchant asked; it is the storefront's credential.

list_shipping_zones

ChatGPT
Shipping zones with their rates (ratesCount). A zone with no rate offers nothing at checkout. Matched by priority, lower first.

list_tags

ChatGPT
Tags with product counts.

list_tax_rates

ChatGPT
Every tax rate on the store with its percentage and country / region. Call it BEFORE create_tax_rate.

search_tools

ChatGPT
Finds the store-management tools that are NOT in your listing. This store runs hundreds of tools and the listing shows a fraction, so a task missing from it is usually reachable here rather than unsupported. Listed tools are excluded from these results by design. Search for the store-management tool(s) that match a task, e.g. "create product" or "cancel order" — compact mode replaces the usual flat list of every tool with this search step. Each result includes the tool's name, a short description, and its input schema; call it via call_read_tool / call_write_tool / call_destructive_tool depending on the result's annotations. Matching is on keywords, not meaning: send a SHORT ENGLISH verb-and-noun phrase ("set stock", "list orders"), not the user's sentence and not their language — passing prose through verbatim is the main cause of a missed match. If a search returns no results, rephrase and search again before concluding the capability does not exist. ⛔ Translate the merchant's words into the platform's own nouns BEFORE searching: "three for two" is a BUNDLE OFFER, "a VIP club" is a LOYALTY TIER, "toppings" are a MODIFIER GROUP, "a newsletter" is a CAMPAIGN. Measured on this connector: the merchant phrase verbatim finds the right tool 2 times in 15, the platform noun 14 times in 15. Call list_capabilities for every domain this store manages and the noun to search each one by.

set_product_stock

ChatGPT
Set the absolute stock of a SIMPLE product. ⛔ On a VARIABLE product stock is per variant: use set_variant_stock (variant ids come from get_product); do not substitute a product-level write. ⛔ A KIT is refused; set its components.

set_variant_stock

ChatGPT
Set one variant's absolute stock (newTotal) and/or its tracking mode on a VARIABLE product; variantId comes from get_product. Destructive: overwrites the count. For a SIMPLE product use set_product_stock.

update_email_template

ChatGPT
Edit a transactional email template - order confirmation, shipping notice, password reset. Read it first with get_email_template; this REPLACES the fields it touches. Versions are kept, so a bad edit is recoverable.

update_order_status

ChatGPT
Change an order's status (illegal transitions rejected). Destructive: emails the customer on SHIPPED, CANCELLED and COMPLETED/DELIVERED; a cancellation cannot be undone.

update_product

ChatGPT
Partial update. categories/brands (ids) replace the set; categoryNames/brandNames auto-create and add. images REPLACES the whole gallery. External image URLs are queued and HIDDEN until import completes; importStatus pending means queued, NOT live, so report it as queued.

update_store

ChatGPT
Change Settings → General: name, country, currency, language, tax flags; omitted fields unchanged. ⛔ currency RELABELS every existing price (100 ILS becomes 100 EUR, nothing is converted): refused while a checkout is in progress, and refused on a store with orders unless confirm:true is passed after the merchant has understood that; the default region follows only if it still matched the old currency. language sets the default language and seeds its email templates; untranslated text is shown as-is. ⛔ taxEnabled:true only flips the flag; the tax RATE is added with create_tax_rate, and with no rate checkout charges 0 tax. Timezone, contact details, colours, logo and dashboard modules are dashboard tasks here.

update_variant

ChatGPT
Update a variant (partial). Channel-aware: pass channels to set per-sales-channel price/sku overlays. Use this for per-variation price changes.

Capabilities

InteractiveWrites

Example Prompts

Click any prompt to copy it.

App Stats

45

Tools

3

Prompts

ChatGPT

Platforms

Works with

ChatGPT

Data refreshed daily