Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
FOURTHWALL_ACCOUNTSNoA private JSON array of unique name plus one username/password, access_token or credentials_file source. Named profiles never inherit globals.
FOURTHWALL_PASSWORDNoPassword for the private shop credential pair. Choose exactly one private source: FOURTHWALL_USERNAME and FOURTHWALL_PASSWORD, an existing FOURTHWALL_ACCESS_TOKEN, or FOURTHWALL_CREDENTIALS_FILE.
FOURTHWALL_USERNAMENoUsername for the private shop credential pair. Choose exactly one private source: FOURTHWALL_USERNAME and FOURTHWALL_PASSWORD, an existing FOURTHWALL_ACCESS_TOKEN, or FOURTHWALL_CREDENTIALS_FILE.
FOURTHWALL_READ_ONLYNoSet to 1 to expose only the 49 read operations and directly refuse the 37 hidden effects, even if confirm is supplied.
FOURTHWALL_ACCESS_TOKENNoAn existing OAuth access token. Choose exactly one private source: FOURTHWALL_USERNAME and FOURTHWALL_PASSWORD, an existing FOURTHWALL_ACCESS_TOKEN, or FOURTHWALL_CREDENTIALS_FILE.
FOURTHWALL_DEFAULT_ACCOUNTNoSelects an exact default account label from FOURTHWALL_ACCOUNTS.
FOURTHWALL_CREDENTIALS_FILENoAbsolute path to a private credential file: a JSON object containing either username/password or access_token. Must be an absolute regular non-symlink file, at most 64 KiB, outside repositories. On POSIX the process user must own it and permissions must be owner-only, normally 0600; restrict Windows ACLs separately. Choose exactly one private source: FOURTHWALL_USERNAME and FOURTHWALL_PASSWORD, an existing FOURTHWALL_ACCESS_TOKEN, or FOURTHWALL_CREDENTIALS_FILE.
FOURTHWALL_ALLOW_DESTRUCTIVENoSet to 0 to refuse effects even when confirmed.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_webhookC

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Get a webhook

update_webhookC

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Update a webhook

delete_webhookB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Delete a webhook

start_streamingB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Sets streaming status to started for specified services

end_streamingB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Sets streaming status to ended for specified services

get_public_tokenB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns an existing public token for the shop, or creates a new one if none exists

get_promotionB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns a promotion by id

update_promotionB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Updates an existing promotion's configuration. Only provided fields are updated; omitted fields remain unchanged. Status changes (activate/deactivate) are part of the same update call.

update_product_stateA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Transitions the product between PUBLIC and HIDDEN. Use DELETE /products/{productId} to archive — ARCHIVED is not reachable here. The sold-out (available) flag is preserved; flip it via PUT /products/{productId}/availability. Idempotent: no-op if the product is already in the requested state.

toggle_product_availabilityB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Updates a product (offer) availability

mark_download_completeA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Marks digital download as downloaded. If no downloads exist for a digital order and defaultFileUrl is provided in the request body, creates a download with that URL and marks it as downloaded.

finish_giveawayB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Finish giveaway and select winners

create_giveaway_checkoutC

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Creates a new giveaway or updates existing one

disable_giveaway_checkoutC

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

disables a giveaway config

finish_giveaway_drawB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Finish draw and select winners

get_gifting_configA

Returns the calling shop's saved gifting rules. Returns a default-shaped config when none is persisted yet.

update_gifting_configA

Writes the four creator-controlled gifting rule fields. Validation (duration 20-180s, valid shipping/products) and the one-platform-per-shop mutex are enforced server-side. Upserts: a first-ever PUT materializes the config row.

update_collectionB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Updates collection name, description, and/or product list

get_collection_productsA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns paginated products in a collection with optional status filtering. The maximum page size is 100 - larger values are capped at 100.

update_collection_productsB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Sets the full list of product IDs in the collection

update_collection_availabilityB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Toggle collection availability (available/unavailable)

list_webhooksB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Get webhooks

create_webhookC

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Create a webhook

list_promotionsA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns all promotions. The maximum page size is 100 - larger values are capped at 100.

create_promotionC

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Creates a promotion

list_productsA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns all products with pagination. The maximum page size is 100 - larger values are capped at 100.

create_productA

Rate limit: 5 requests / minute per shop. See Rate limiting.

Creates a product from a design or a digital product.

attach_product_imagesA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Attaches images to a product. Images should be uploaded first via the media upload endpoint.

remove_product_imagesB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Removes specified images from a product by their URLs.

confirm_digital_file_uploadA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

After uploading a file to the presigned URL, call this endpoint to link the file to the product. The file must exist in storage before calling this endpoint.

remove_digital_fileB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Removes a digital file from the product by its file URL.

request_digital_file_upload_urlA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns a presigned URL to upload a digital file to. After receiving the response, PUT the file bytes directly to the uploadUrl, then call the confirm endpoint to link the file to the product.

request_media_upload_urlA

Rate limit: 20 requests / minute per shop. See Rate limiting.

Returns a pre-signed upload URL for uploading a new image. After receiving the response, PUT the image bytes directly to the uploadUrl.

list_media_imagesA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Retrieves all images from the shop's media library

save_media_imageB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Persists an uploaded image in the media library after the client has PUT it to the signed URL

create_giveawayC

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Creates a new giveaway

create_giveaway_linksB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Creates a new package with specified number of giveaway links

create_gifting_checkoutB

Creates a paid checkout for gifting a product to live chat

create_fulfillmentB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Creates a fulfillment with a shipment tracker for provided order items. When trackers change their state, order.status will change to IN_PRODUCTION, PARTIALLY_IN_PRODUCTION, PARTIALLY_SHIPPED, SHIPPED depending on the shipping tracker info. Order updated webhooks will be triggered.

validate_dnsA

Rate limit: 20 requests / minute per shop. See Rate limiting.

Triggers a live DNS validation by checking all configured records against actual DNS servers and updates their verification status

list_collectionsA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns all collections with pagination. The maximum page size is 100 - larger values are capped at 100.

create_collectionB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Creates a new collection with name, description, and optional product list

list_webhook_eventsA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Get webhook events with pagination and optional filtering by one or more webhook types (repeat or comma-separate the type param). The maximum page size is 100 - larger values are capped at 100.

get_webhook_eventA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Get a single webhook event by ID

get_thank_youB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Get Thank You details

list_contributionsB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns paginated list of orders, donations, and other contributions that can be thanked. The maximum page size is 100 - larger values are capped at 100.

get_streaming_statusB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns streaming status for all services

get_shopB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns the current shop

get_shop_contactA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns the current shop contact info

get_sample_balanceA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns the current sample credit balance for the shop

list_reportsA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns the list of available report IDs with metadata including name, columns, and supported precisions

get_reportA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Fetches a specific analytics report for a date range

get_productB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns product by id

archive_productA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Soft-archives the product — sets it to Archived. Terminal at this surface: once archived, the product cannot be returned to PUBLIC/HIDDEN through the open-api (restoration stays admin-only). Idempotent: re-DELETE on an already-archived product also returns 204.

get_product_inventoryB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns product (offer) inventory by id

list_product_templatesA

List available product templates. Returns 25 results. To paginate, use the /page/{N} variant of this endpoint (1-indexed). Use the total field in the response to calculate total pages. Pagination is path-based for HTTP cacheability.

get_product_templateA

Get detailed information about a specific product template.

This endpoint is public and does not require authentication. Returns full product details including variants, customizable areas, size guide, and images.

search_product_templatesA

Search product templates by name, brand, description, sizes, categories, colors, or production method. Returns 25 results. To paginate, use the /search/{query}/page/{N} variant of this endpoint (1-indexed). Use the total field in the response to calculate total pages. Pagination is path-based for HTTP cacheability.

search_product_templates_pagedB

Search product templates with pagination. This endpoint is public and does not require authentication.

search_product_templates_groupedA

Search product templates and group results by product family (libraryId). Products sharing the same physical item but with different production methods (e.g. DTG, Embroidery, DTFX) are collapsed into a single result with a variants list. Returns 25 grouped results. To paginate, use the /search-grouped/{query}/page/{N} variant (1-indexed). Pagination is path-based for HTTP cacheability.

search_product_templates_grouped_pagedB

Search product templates grouped by product family with pagination. This endpoint is public and does not require authentication.

list_product_templates_pagedA

List available product templates with pagination. This endpoint is public and does not require authentication.

list_product_templates_by_categoryA

Browse product templates filtered by category. Category matches by prefix (e.g., 'Apparel' matches 'Apparel/T-Shirts'). Returns 25 results. To paginate, use the /category/{category}/page/{N} variant of this endpoint (1-indexed). Use the total field in the response to calculate total pages. Pagination is path-based for HTTP cacheability.

list_product_templates_by_category_pagedA

Browse product templates by category with pagination. This endpoint is public and does not require authentication.

get_pro_subscriptionA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns the current Fourthwall Pro platform subscription status, plan, and usage against plan limits

list_ordersB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns all orders with pagination. The maximum page size is 100 - larger values are capped at 100.

get_orderB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns order by id

get_order_by_friendly_idB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns order by friendly id

list_membership_tiersA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Lists all tiers for the current shop

list_membersA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Lists all members for the current shop. The maximum page size is 100 - larger values are capped at 100.

get_memberA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Gets a member by id

list_mailing_listA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns all mailing list entries. The maximum page size is 100 - larger values are capped at 100.

list_giveaway_packagesA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns all packages with giveaway links

get_giveaway_packageB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns all giveaway links for packageId

get_giveaway_drawB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Get draw details

get_gift_purchaseB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns gift purchase details by id

list_donationsB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns all donations with pagination. The maximum page size is 100 - larger values are capped at 100.

get_donationB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns donation by id

get_dns_statusA

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns the cached DNS configuration and record status for the shop's custom domain

get_collectionB

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Returns a collection by its ID or slug

list_accountsC

Local labels/default/auth source availability only. No credential values, paths, provider identity or network.

get_operation_schemaC

Local reviewed native method/path/query/body/scopes/rate limit and pinned schema provenance. No provider access or authority proof.

preview_shop_batchB

Validate every exact request and hash order/profile label/schema locally. No native request, credential loading, ownership check or provider preview.

submit_shop_batchA

Confirmed ordered effects; all validated/hash checked before first request. Stop on first failure with known and unattempted receipts; no retry, rollback or implicit continuation.

export_resourcesB

Confirmed native page/size/results export into a new exclusive0600 file with page/item/5MiB budgets and explicit page/offset continuation. No links followed, binary downloads or atomic-backup guarantee.

upload_fileC

Explicitly confirmed Google Storage PUT using a selected private upload receipt and a bounded local regular file. Exact size/Content-Type and x-goog-content-length-range are preserved. No Fourthwall credentials or redirects, no automatic registration/publishing.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

C2.8/5.0

Scored across 86 tools

Disambiguation2/5

Multiple tools have unclear boundaries: nine product-template tools (list/search/paged/grouped/by-category variants) overlap heavily, finish_giveaway vs finish_giveaway_draw are nearly identical, and update_collection overlaps with update_collection_products. Descriptions help somewhat but do not resolve which variant to pick in common cases.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern (e.g., list_products, get_order, create_webhook, update_promotion, archive_product). There are no mixed conventions like camelCase or vague verbs.

Tool Count1/5

86 tools is far beyond a well-scoped set (typically 3-15) and is extreme even for a broad platform, with many redundant variants. The count creates a high risk of misselection and cognitive overload.

Completeness3/5

The surface covers many resources (products, orders, collections, promotions, giveaways, webhooks, media, reports, etc.), but notable gaps exist such as no general update_product for name/description/price, no delete for collections or promotions, and limited order modification. Agents can work around some gaps but will hit dead ends for common updates.

Maintenance

ActivityNo data
ResponsivenessNo issues