<!-- Generated from Cogny's tool registry. Canonical page: https://cogny.com/integrations/abicart/tools -->

# Abicart tools in Cogny

Cogny's Abicart integration exposes 33 tools (25 read, 8 write) to an AI agent over MCP. The same tools are available on every plan, from your own AI client or inside the Cogny app.

- **Read** (25): only reads data.
- **Write** (8): creates or changes something.
- **Destructive** (0): deletes, removes or replaces something.

Over MCP your own AI client asks before it runs a write. To take a tool away from your agent, block it in Settings → Integrations.

## All tools

| Tool | Kind | What it does |
|---|---|---|
| `get_shop` | Read | Get the connected webshop: name, URLs, languages, currencies, VAT settings, company info. |
| `list_delivery_methods` | Read | List the shop's delivery (shipping) methods with rates and free-delivery thresholds. |
| `list_payment_methods` | Read | List the shop's payment methods (e.g. |
| `get_schema` | Read | Get the JSON Schema of an API class (Article, Order, Customer, Articlegroup, Discount, …). |
| `list_articles` | Read | List articles (products) in the catalog. |
| `count_articles` | Read | Count articles matching the filters (exact total, no paging). visible_only counts hidden=false and draft=false articles only. |
| `get_article` | Read | Get one article by uid (not article number — use list_articles(article_number=…) for that). |
| `create_article` | Write | Create an article. `patch` holds the properties to set, e.g. {"name": {"sv": "…"}, "articleNumber": "A-1", "price": {"regular": {"SEK": 199}}, "articlegroup": 123, "showInArticlegroups": [123], "draft": true}. Create… |
| `update_article` | Write | Update an article: set only the properties in `patch` (e.g. price, stock, name/description/pageTitle/metaDescription per language, hidden, draft, showInArticlegroups). |
| `validate_article` | Read | Dry-run an article create/update: validates `patch` against the schema without saving. |
| `list_article_groups` | Read | List article groups (categories). |
| `get_article_group_tree` | Read | Get the article-group hierarchy as a tree from `root_id` (null = whole shop). |
| `get_article_group` | Read | Get one article group with description and SEO meta. |
| `update_article_group` | Write | Update an article group (name/description/pageTitle/metaDescription per language, hidden, parent). |
| `list_orders` | Read | List placed orders, newest first by default. |
| `count_orders` | Read | Count orders matching the window/status filters (exact total, no paging). |
| `get_order` | Read | Get one order with expanded line items, payments, delivery, full customer address block, note and exchange rate. |
| `get_order_shipments` | Read | List shipments for an order: type, carrier services / tracking, package count, status events. |
| `update_order` | Write | Update administrative order fields: note, tags, externalOrderNumber, deliveryStatus, customer address details. |
| `get_sales_summary` | Read | Orders and revenue per period, in the shop's base currency. |
| `get_top_articles` | Read | Best-selling articles in a window, aggregated from order line items. |
| `list_customers` | Read | List registered customers (newest first by default). |
| `count_customers` | Read | Count customers matching the filters (exact total, no paging). |
| `get_customer` | Read | Get one customer (addresses, info incl. note, groups). |
| `update_customer` | Write | Update a customer: groups, approved, info.note / info.newsletter / info.customerNumber, address fields. |
| `list_customer_groups` | Read | List customer groups (B2B tiers, VIP, staff …). |
| `list_custom_pages` | Read | List the shop's content pages (Admin → Sidor / Mina sidor): uid, name, url, hidden. |
| `get_custom_page` | Read | Get one content page with every stored property (name, url, meta description/keywords by language, item uids). |
| `list_discounts` | Read | List discounts / campaigns (uid, name, active, type — e.g. |
| `get_discount` | Read | Get one discount with every stored property (codes, rules, validity). |
| `create_discount` | Write | Create a discount, e.g. {"name": {"sv": "Höstrea"}, "active": false, "type": "Percentage", …}. Call get_schema("Discount") for the writable properties of each discount type, and create it inactive unless it should… |
| `update_discount` | Write | Update a discount — e.g. {"active": false} to pause a campaign. |
| `call_method` | Write | Call any documented Abicart API method (https://developer.abicart.se/api-classes/) that has no dedicated tool here — e.g. "Giftcertificate.get", "PriceList.list", "Shipment.get", "Suborder.list", "Subscription.list". |

Exact input schemas come from `tools/list` once Abicart is connected; the free plan is enough to check.

Missing something? Your agent can ask for it with `request_feature`.

---

All integrations: https://cogny.com/integrations/tools/index.md
Plans, approvals, limits and data protection: https://cogny.com/buying-guide.md
What Cogny is: https://cogny.com/llms.txt
