Skip to main content
Glama

voog_ecommerce_api_call

Destructive

Execute write operations (POST, PUT, PATCH, DELETE) on Voog ecommerce v1 endpoints to manage orders, carts, discounts, shipping methods, and product imports. Use for bulk actions and configuration changes.

Instructions

Generic Ecommerce v1 API WRITE passthrough. Forward an HTTP request to https:///admin/api/ecommerce/v1. Same shape as voog_admin_api_call, different base URL. Supports ?include=... and ?language_code=... per Voog ecommerce conventions. Use for orders, carts, discounts, shipping_methods, gateways, cart_fields, cart_rules, delivery_provider_configs, templates, bulk product actions, products imports, etc.

For READS use voog_ecommerce_api_read — this tool no longer accepts method='GET' (removed in v1.5).

PUT gotchas (Voog ecommerce v1 quirks — typed tools handle these for you, passthrough does not):

  1. On PUT /products/{id}, asset references must use the {"assets": [{"id": N}, ...]} shape. Sending the POST-shape asset_ids: [N, ...] on PUT silently drops all but the hero image. Prefer product_set_images for image attachment; it handles the shape internally. The array ORDER is also applied only partially by about half of single PUTs (200 either way) — read asset_ids back and repeat the PUT until it matches.

  2. On PUT /products/{id}, the variants array is destructive: Voog deletes every variant not present in the array — even variants with a stable id. Always include variant_attributes alongside variants, or send the full existing variant list. Prefer product_update; it requires explicit force=true to bypass this guard.

  3. On PUT to endpoints that accept a data hash (e.g. /pages/{id}, /articles/{id}, /site), the data field REPLACES the entire hash — unspecified keys are dropped. Voog supports PATCH (merge semantics) on these routes; use method='PATCH' here, or prefer the per-key tools page_set_data / article_set_data / site_set_data which route through PATCH automatically (typed wrappers handle this as of v1.4).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyNoOptional JSON body for POST/PUT/PATCH. Voog uses different envelope conventions per endpoint — see docs/voog-mcp-endpoint-coverage.md.
pathYesEndpoint path starting with '/', e.g. '/orders', '/products/42', '/settings'.
siteYesSite name from voog_list_sites
methodYesHTTP method
paramsNoOptional query parameters as a flat string-keyed object, e.g. {'include': 'translations', 'q.page.hidden.$eq': 'true'}.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (destructiveHint=true, readOnlyHint=false), the description discloses critical behavioral quirks: PUT asset references silently drop images unless using a specific shape, variants array is destructive, and data fields replace the entire hash on PUT. These are significant side-effects the agent would not know otherwise, making the description highly transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but well-structured with a clear intro, a dedicated 'for reads' note, and numbered PUT gotchas. Each section earns its place and the front-loading of purpose is effective. The length is justified by the complexity of the passthrough tool, though it is denser than strictly necessary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the high-risk nature of a write passthrough with no output schema, the description is remarkably complete. It covers method restrictions, endpoint families, query parameter support, envelope conventions, and specific destructive behaviors, plus alternatives. This is more than enough for an agent to safely select and invoke the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers 100% of parameters, so the baseline is 3. The description adds value by explaining supported query parameters (?include, ?language_code), referencing the body envelope conventions, and detailing method-specific behavior (e.g., PATCH merge semantics). However, it doesn't go into exhaustive detail for every parameter, sticking to the most important gotchas.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as a generic write passthrough for the Voog ecommerce v1 API, with a specific verb (WRITE) and resource (ecommerce API). It distinguishes itself from voog_admin_api_call by the base URL and from voog_ecommerce_api_read by explicitly excluding GET requests, and it enumerates common use cases like orders, carts, and discounts.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when-to-use guidance: it states that reads should use voog_ecommerce_api_read because this tool no longer accepts GET. It also recommends specific typed alternatives (product_set_images, product_update, page_set_data) for tricky PUT operations, clarifying when the passthrough is not the best choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/runnel/voog-mcp'

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