Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GOMAG_API_KEYYesYour Gomag API key (Apikey header) — from Admin → API Settings
GOMAG_API_SHOPYesYour shop URL, e.g. https://yourshop.gomag.ro (ApiShop header)
GOMAG_BASE_URLNoGomag API base URLhttps://api.gomag.ro
GOMAG_USER_AGENTNoCustom User-Agent (must not be PostmanRuntime/…)GomagMCP/1.0
GOMAG_MAX_RETRIESNoRetry attempts for 429 / 5xx responses3
GOMAG_AUDIT_LOG_FILENoPath to the rotating JSON Lines audit loggomag_audit.jsonl
GOMAG_REQUEST_TIMEOUTNoHTTP timeout in seconds30.0
GOMAG_AUDIT_LOG_MAX_BYTESNoMax log file size before rotation (10 MB)10485760
GOMAG_AUDIT_LOG_TO_STDERRNoAlso emit audit events to stderrtrue
GOMAG_RETRY_BACKOFF_FACTORNoExponential back-off multiplier (seconds)1.0
GOMAG_AUDIT_LOG_BACKUP_COUNTNoNumber of rotated backup files to keep5

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
product_listA

List products from the Gomag store.

Parameters

page : Page number (pagination). limit : Results per page (1–100). id : Filter by internal product ID. sku : Filter by product SKU/code. category : Filter by category ID. brand : Filter by brand ID. updated : Filter products modified on/after this date (YYYY-MM-DD). add_versions : Include product variants/versions (true/false). include_files: Include attached files (true/false). include_videos: Include attached videos (true/false). promo_tag : Filter by promotional tag key (e.g. "new", "recommended"). view : Language code for localised fields (e.g. "ro", "en", "hu").

product_createA

Create one or more products.

Parameters

data : JSON array of product objects. Each object may include: - name (dict, keyed by language code e.g. {"ro": "...", "en": "..."}) - description (dict, keyed by language) - enabled (0 or 1) - vat (VAT percentage, e.g. 19) - currency (e.g. "RON") - brand (brand name string) - categories (array of category path arrays) - versions (array of variant objects with sku, price, stock, weight, ean, ...)

Example

'[{"name": {"ro": "Produs test", "en": "Test product"}, "enabled": 1, "vat": 19, "currency": "RON", "versions": [{"sku": "TEST-001", "price": 99.99, "stock": 10}]}]'

product_updateA

Update (patch) existing products.

Parameters

data : JSON array of partial product objects. Must include an identifier field (id or sku) plus the fields to update.

Example

'[{"sku": "TEST-001", "versions": [{"sku": "TEST-001", "price": 79.99}]}]'

product_update_inventoryA

Bulk-update product price and/or stock (inventory sync).

Parameters

data : JSON array of inventory update objects, each containing: - sku (required) product SKU - price (optional) new price - stock (optional) new stock quantity - specialPrice (optional) discounted price

Example

'[{"sku": "TEST-001", "price": 89.99, "stock": 50}]'

product_deleteA

Delete products by SKU or ID.

Parameters

data : JSON array of objects identifying the products to delete. Each object should contain either "id" or "sku".

Example

'[{"sku": "TEST-001"}, {"id": 42}]'

category_listA

List product categories.

Parameters

id : Filter by specific category ID. parent_id : Filter by parent category ID (0 = root categories). view : Language code for localised names (e.g. "ro", "en"). page : Page number for pagination. limit : Results per page (1–100).

category_createA

Create one or more categories.

Parameters

data : JSON array of category objects. Each object may include: - name (dict, keyed by language e.g. {"ro": "...", "en": "..."}) - description (dict, keyed by language) - parent_id (int, ID of parent category; omit or 0 for root) - enabled (0 or 1) - image (URL string)

Example

'[{"name": {"ro": "Electrocasnice", "en": "Appliances"}, "enabled": 1}]'

category_updateA

Update (patch) existing categories.

Parameters

data : JSON array of partial category objects. Must include "id" plus the fields to change.

Example

'[{"id": 12, "name": {"ro": "Electronice", "en": "Electronics"}}]'

category_deleteA

Delete categories. Only empty categories (no products, no sub-categories) can be deleted.

Parameters

data : JSON array of objects with "id" fields.

Example

'[{"id": 12}]'

order_listB

List orders from the Gomag store.

Parameters

id : Filter by internal order ID. number : Filter by order number. status : Filter by status key (e.g. "sale", "return", "cancel"). date_from : Include orders placed on/after this date (YYYY-MM-DD). date_to : Include orders placed on/before this date (YYYY-MM-DD). email : Filter by customer e-mail. phone : Filter by customer phone number. page : Page number. limit : Results per page (1–100).

order_status_typesA

Return the list of available order status types defined in the store.

order_createA

Create a new order.

Parameters

data : JSON object describing the order. Key fields: - number (string) order reference number - date (YYYY-MM-DD) - payment (string) payment method key - currency (e.g. "RON") - shippingValue (string/number) - subtotal (string/number) - billing (object: lastname, firstname, address, city, region, country, phone, email) - shipping (object: same fields + zipcode) - products (array: sku, name, price, quantity, tax, weight) - discounts (array: name, voucher, value) — optional

Example

'{"number": "ORD-001", "date": "2026-03-27", "payment": "cod", "currency": "RON", "shippingValue": "20", "subtotal": "199.99", "billing": {"lastname": "Doe", "firstname": "John", "address": "Str. Test 1", "city": "Bucharest", "region": "Ilfov", "country": "Romania", "phone": "0721000000", "email": "john@example.com"}, "shipping": {"lastname": "Doe", "firstname": "John", "address": "Str. Test 1", "city": "Bucharest", "region": "Ilfov", "country": "Romania", "zipcode": "010101", "phone": "0721000000", "email": "john@example.com"}, "products": [{"sku": "PROD-1", "name": "Product", "price": "199.99", "quantity": "1", "tax": "19", "weight": "500"}]}'

order_update_statusA

Update the status of an existing order.

Parameters

order_id : Internal order ID. status : New status key (e.g. "sale", "return", "cancel"). Use order_status_types() to see available values. notify_customer : Send a notification e-mail to the customer (true/false). note : Optional internal note to attach to the status change.

order_add_noteA

Add a note to an order.

Parameters

order_id : Internal order ID. note : Note text. is_public : If true the note is visible to the customer (default false).

order_add_fileA

Attach a file (by URL) to an order.

Parameters

order_id : Internal order ID. file_url : Publicly accessible URL of the file to attach. file_name : Display name for the file (optional, defaults to the URL filename).

customer_listA

List customers registered in the Gomag store.

Parameters

id : Filter by internal customer ID. email : Filter by e-mail address. phone : Filter by phone number. updated : Filter customers modified on/after this date (YYYY-MM-DD). page : Page number. limit : Results per page (1–100).

customer_ordered_productsA

Get a list of products that a specific customer has ordered.

Parameters

customer_id : Internal customer ID. email : Customer e-mail (alternative to customer_id). page : Page number. limit : Results per page.

customer_createA

Create a new customer account.

Parameters

email : Customer e-mail address (unique). firstname : First name. lastname : Last name. password : Account password (plain text — only use over HTTPS; never logged). confirm_password : Must match password. phone : Optional phone number. newsletter : Subscribe to newsletter (true/false).

customer_updateB

Update an existing customer's details.

Parameters

data : JSON object with customer fields to update. Must include "id" or "email" to identify the customer, plus the fields to change.

Example

'{"id": 123, "phone": "0721000001", "newsletter": false}'

customer_loginA

Authenticate a customer and return session/token data.

Parameters

email : Customer e-mail address. password : Customer password (plain text — only use over HTTPS; never logged).

Returns the API response which typically includes a session token or authentication confirmation.

customer_change_passwordA

Change a customer's password.

Parameters

email : Customer e-mail address. old_password : Current password for verification (plain text — never logged). new_password : New password to set (plain text — never logged). confirm_new_password : Must match new_password.

customer_password_recoveryB

Trigger a password recovery e-mail for a customer.

Parameters

email : Customer e-mail address to send the recovery link to.

customer_delete_requestA

Submit a GDPR account-deletion request for a customer.

The customer will be flagged for deletion in the store's admin panel. This does NOT immediately delete the account.

Parameters

email : Customer e-mail address.

awb_carrier_listA

Return the list of configured shipping carriers/couriers available in the store.

awb_listA

List AWB (Air Waybill / tracking numbers) records.

Parameters

order_id : Filter by the order's internal ID. awb_number : Filter by specific AWB tracking number. carrier_id : Filter by carrier/courier ID. page : Page number. limit : Results per page (1–100).

awb_createA

Manually create an AWB record for an order.

Parameters

data : JSON object with AWB details. Key fields: - orderId (int) internal order ID - carrierId (int) carrier ID from awb_carrier_list() - awbNumber (string) tracking number issued by the carrier - packages (int) number of packages - weight (float) total shipment weight in kg

Example

'{"orderId": 100, "carrierId": 3, "awbNumber": "1Z999AA10123456784", "packages": 1, "weight": 1.5}'

awb_generateA

Generate an AWB automatically through the carrier's integrated API.

Parameters

data : JSON object with generation details. Key fields: - orderId (int) internal order ID - carrierId (int) carrier ID from awb_carrier_list() - packages (int) number of packages (default 1) - weight (float) total weight in kg

Example

'{"orderId": 100, "carrierId": 3, "packages": 1, "weight": 2.0}'

awb_deleteB

Delete an AWB record.

Parameters

awb_id : Internal AWB record ID.

awb_printA

Generate a printable shipping label (PDF or similar) for an AWB.

Parameters

awb_id : Internal AWB record ID.

Returns a response typically containing a URL or base64-encoded label content.

awb_update_statusA

Update the delivery status of an AWB.

Parameters

awb_id : Internal AWB record ID. status : New status string (carrier-specific, e.g. "delivered", "in_transit", "returned"). update_order_status : If true, also update the parent order's status accordingly.

invoice_createB

Create (register) an invoice for an order.

Parameters

data : JSON object with invoice details. Key fields: - orderId (int) internal order ID - number (string) invoice number/series - date (YYYY-MM-DD) invoice date - series (string) invoice series (e.g. "FCT") - dueDate (YYYY-MM-DD) payment due date (optional)

Example

'{"orderId": 100, "series": "FCT", "number": "0001234", "date": "2026-03-27"}'

invoice_generateB

Auto-generate an invoice for an order using the store's configured invoicing settings.

Parameters

order_id : Internal order ID. series : Invoice series to use (optional; uses store default if omitted).

invoice_cancelC

Cancel (void) an invoice.

Parameters

invoice_id : Internal invoice ID to cancel.

attribute_listA

List product attributes defined in the store.

Parameters

id : Filter by specific attribute ID. page : Page number. limit : Results per page (1–100).

attribute_createA

Create one or more product attributes.

Parameters

data : JSON array of attribute objects. Each object may include: - name (dict, keyed by language e.g. {"ro": "Culoare", "en": "Color"}) - type (string) attribute type (e.g. "select", "text", "multiselect") - values (array of value objects, each with a localised "name" dict)

Example

'[{"name": {"ro": "Culoare", "en": "Color"}, "type": "select", "values": [{"name": {"ro": "Rosu", "en": "Red"}}, {"name": {"ro": "Albastru", "en": "Blue"}}]}]'

attribute_updateA

Update (patch) existing product attributes.

Parameters

data : JSON array of partial attribute objects. Must include "id" plus the fields to update.

Example

'[{"id": 5, "name": {"ro": "Marime", "en": "Size"}}]'

review_listA

List product reviews.

Parameters

product_id : Filter by product ID. customer_id : Filter by customer ID. approved : Filter by approval status (true = approved only). page : Page number. limit : Results per page (1–100).

review_createB

Submit a product review.

Parameters

product_id : ID of the product being reviewed. rating : Star rating (1–5). title : Short review title/summary. content : Full review text. author_name : Reviewer's display name. author_email : Reviewer's e-mail address. approved : Set approval status immediately (true/false; defaults to store's moderation setting).

wishlist_listA

List a customer's saved (wishlist) products.

Parameters

customer_id : Customer's internal ID. email : Customer e-mail (alternative identifier). page : Page number. limit : Results per page (1–100).

wishlist_addC

Add a product to a customer's wishlist.

Parameters

customer_id : Customer's internal ID. product_id : Product's internal ID.

wishlist_removeB

Remove a product from a customer's wishlist.

Parameters

customer_id : Customer's internal ID. product_id : Product's internal ID.

currency_listA

Return the list of currencies configured in the Gomag store.

payment_listA

Return the list of payment methods available in the store.

brand_listC

Return the list of brands (manufacturers) defined in the store.

Parameters

page : Page number. limit : Results per page (1–100).

filter_listA

Return the filterable attributes for a specific category.

Parameters

category_id : Category ID to retrieve filters for (required). view : Language code (e.g. "ro", "en").

banner_listB

Return banners (promotional images/links) defined in the store.

Parameters

position : Filter by banner position/zone (store-defined key). page : Page number. limit : Results per page.

fidelity_readC

Retrieve a customer's fidelity (loyalty) points balance.

Parameters

customer_id : Customer's internal ID. email : Customer e-mail (alternative identifier).

rulecart_addA

Create a shopping cart rule (discount / promotion).

Parameters

data : JSON object describing the cart rule. Key fields: - name (string) rule name - discount (float) discount amount or percentage - type (string) "fixed" | "percent" - code (string) voucher code (leave empty for auto-apply) - dateFrom (YYYY-MM-DD) start date (optional) - dateTo (YYYY-MM-DD) end date (optional) - usesPerCode (int) maximum total uses (0 = unlimited) - usesPerCustomer (int) maximum uses per customer (0 = unlimited) - enabled (0 or 1)

Example

'{"name": "Spring Sale 10%", "discount": 10, "type": "percent", "code": "SPRING10", "enabled": 1, "usesPerCode": 100}'

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
rate_limit_resource Current API rate-limit state (updated after every request). Returns the most recently observed values from the Gomag API response headers: - read_remaining — read requests remaining before throttling - write_remaining — write requests remaining before throttling - read_burst — max read burst capacity - write_burst — max write burst capacity - read_rate — read requests processed per second - write_rate — write requests processed per second
health_resource Server health status. Returns configuration info (without secrets) and the rate-limit state. Use this to confirm the server started correctly and the API shop is set.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/florinel-chis/gomag-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server