Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SOCIAL_MODELNoClaude model used for social content generation (default claude-opus-5).claude-opus-5
ALIBABA_APP_KEYYesAlibaba.com open-platform app credentials (App Key) from the console.
ANTHROPIC_API_KEYYesAnthropic API key used by Claude for social-content generation and AI-enriched product detail.
ALIBABA_APP_SECRETYesAlibaba.com open-platform app credentials (App Secret) from the console.
ALIBABA_LOCAL_BINDNoLocal bind address for the auth helper when auto-capturing the OAuth code through a public https tunnel, e.g. 127.0.0.1:8721 (equivalent to passing --bind).
ALIBABA_REDIRECT_URIYesOAuth callback URL registered in the console. Must byte-match the callback registered in the app console. If it is a localhost URL (e.g. http://127.0.0.1:8721/callback), the local auth helper auto-captures the code; otherwise it asks you to paste the redirected URL.
ALIBABA_MCP_ALLOWED_DIRSNoFilesystem allowlist: tools that take a local path (read_local_media, read_price_file, product manifests and their referenced assets, generate_product_detail(save_to=...)) resolve the path and confine it to this setting. Defaults to the current working directory. Paths outside the allowlist, including .. traversal, are rejected.
ALIBABA_PRODUCT_DESC_TYPENoDescription mode mapped to the schema field productDescType (default 1 = 智能编辑).1
ALIBABA_METHOD_PHOTO_UPLOADNoGranted API method name for photo bank upload. The exact method names/paths and product field schema are category-specific; check your app console's API权限包 → 详情 pages and adjust this if it differs from the default.
ALIBABA_METHOD_PRODUCT_CREATENoGranted API method name for product creation. The exact method names/paths and product field schema are category-specific; check your app console's API权限包 → 详情 pages and adjust this if it differs from the default.
ALIBABA_METHOD_PRODUCT_UPDATENoGranted API method name for product update. The exact method names/paths and product field schema are category-specific; check your app console's API权限包 → 详情 pages and adjust this if it differs from the default.

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
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
alibaba_get_authorize_urlA

Get the OAuth URL the seller opens to grant this app access.

Send the returned URL to the seller. After they approve, the platform redirects to the app's configured callback with a ?code=...; pass that code to alibaba_complete_authorization.

alibaba_complete_authorizationA

Exchange an OAuth code (from the callback) for an access token and store it.

alibaba_complete_authorization_from_urlA

Complete authorization from the full callback URL the seller landed on.

Handy when the callback is a page like https://www.alibaba.com — paste the whole redirected address (containing ?code=...) and this extracts the code and exchanges it for a token.

alibaba_auth_statusB

Show whether a seller is authorized and when the token expires.

alibaba_raw_callB

Call any granted API by method name (e.g. alibaba.icbu.product.get).

Escape hatch for testing/verifying methods. It can invoke write APIs, so it is not read-only. Set authorized=False for system/public APIs that need no token.

read_local_mediaA

Inspect a local image or video (type, size, and image dimensions).

The path is confined to the server's allowed directories.

read_price_fileA

Read prices from a local CSV or JSON file into normalized rows.

The path is confined to the server's allowed directories.

product_upload_imageA

Upload one local image to the photo bank; returns {file_id, url}. The path is confined to the server's allowed directories.

product_get_schemaA

Get the publish schema for a category: fillable fields, types, required flags, and allowed options. Inspect this before publishing.

category_get_attributesA

Get a category's system-defined attributes (for icbuCatProp), including which are required. Public API — no authorization needed. Each attribute's attr_id maps to the publish schema field p-<attr_id>; car_model attributes need the hierarchical-attribute API for their next level.

product_publishA

Publish a product from a manifest file (product.json), creating a new product.

The manifest gives category_id, language, fields, and asset references (main_images/detail_images, price_file, video). Required category attributes (icbuCatProp) are auto-filled from the manifest's product_attributes (keyed by attribute name or id) using the schema's own options/required rules. Set draft=True to create a draft (not listed live) — recommended for verifying a manifest. missing_required in the result lists required attributes still unfilled (a real publish needs them). The manifest and its assets are confined to the server's allowed directories.

product_publish_from_briefA

Publish a product from a minimal brief — the seller provides only facts; Claude enriches the rest.

Provide brief inline or a brief_path (JSON file, confined to allowed dirs). The brief needs: brief (short description), category_id, images (main 4–6 + detail), price ({unit, moq, tiers}), and facts (place_of_origin, material). Claude writes the title, highlights, detail modules, FAQs, custom parameters, and picks the descriptive category attributes from the schema's allowed options. Returns the draft product_id, missing_required, ai_filled (what was auto-generated), and warnings (e.g. fewer than 4 main images — AI cannot generate real product photos). Defaults to draft=True.

product_render_draftB

Read back a DRAFT product's saved fields (schema.render.draft). product_id is the plaintext numeric draft id. Useful to verify what a publish stored.

product_updateB

Incrementally update an existing product (schema.update) from a manifest.

Only the fields present in the manifest are changed. Re-applying the same manifest yields the same state (idempotent). Paths are confined to the server's allowed directories.

product_group_getA

Get a product group's info (name, parents, child groups). Pass group_id=-1 (default) to list all top-level groups (returned under children).

video_relate_productA

Associate a video with a product. target: "main" (main-image video) or "detail" (detail video). Numeric ids are auto-converted to the encrypted ids the API needs. Re-relating the same pair is idempotent.

video_list_relatedC

List product ids related to a video. type: "videoId" (main) or "detailVideoId" (detail).

video_queryA

Query the seller's videos (to find video ids). Requires paging params, e.g. params={"current_page": "1", "page_size": "20"}; each item has a video_id.

generate_product_detailA

Generate a structured product detail with Claude (title, highlights, ordered image+text modules, attributes, keywords, FAQs).

The title is normalized to Alibaba title case; pass brands (e.g. ["C01B"]) to preserve casing. version ∈ premium (全能精装版) | lite (经济简装版) | general (通用排版). If save_to is given, the content is written there as JSON (confined to the server's allowed directories). Token usage is recorded (see usage_stats).

generate_social_contentC

Generate platform-tailored social posts for a product with Claude.

Token usage is recorded automatically (see usage_stats). platforms e.g. ["linkedin", "instagram", "x", "facebook", "tiktok", "pinterest"].

usage_statsA

Report AI token usage and estimated USD cost (from the local usage log).

Filter by model/label/since_iso (ISO-8601). group_by ∈ day|model|label.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
usage_summary_resourceA quick all-time usage summary, grouped by model.

TDQS

B3.2/5.0

Scored across 21 tools

Disambiguation4/5

Most tools target distinct resources or actions, but there are overlapping pairs: alibaba_complete_authorization vs alibaba_complete_authorization_from_url, and product_publish vs product_publish_from_brief vs generate_product_detail. Descriptions clearly distinguish inputs and use cases, so misselection is unlikely but possible for an agent skimming.

Naming Consistency3/5

The set mixes naming conventions: namespace-prefixed (alibaba_*), resource-prefixed (video_*, product_*), verb-first (read_*, generate_*), and standalone usage_stats. Names remain readable, but there is no predictable verb_noun or resource_verb pattern throughout.

Tool Count3/5

At 21 tools the set is in the borderline-heavy range. The broad domain (auth, product publishing, video, AI generation, local utilities) justifies many tools, but several auth and publish variants could potentially be consolidated.

Completeness3/5

Core publishing, updating, draft inspection, schema lookup, media handling, and content generation are covered. However, there is no product delete, no live product get/list, and no order or inventory operations; alibaba_raw_call is an escape hatch rather than a proper complete surface.

Maintenance

ActivityMaintained
ResponsivenessNo issues