Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SBIS_SESSION_IDYesИдентификатор сессии Saby (СБИС) от команды СБИС.Аутентифицировать. Команда СБИС.Аутентифицировать по логину и паролю сотрудника с правами на API возвращает идентификатор сессии.

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
sbis_check_authA

Check whether the required credentials are present in the environment.

Does NOT reveal secret values — only reports which variables are set. Returns JSON: {"ready": bool, "missing": [str], "required": [str]}.

sbis_list_sectionsA

List API sections and how many catalog endpoints each contains.

sbis_get_sectionA

List all endpoints in one section.

Args: section: section name (see sbis_list_sections), e.g. "statistics". Returns JSON list of {operation_id, method, path, safety, summary}.

sbis_search_methodsA

Search the endpoint catalog by keyword (works in Russian and English).

Args: query: free text, e.g. "остатки", "stocks", "update price". limit: max results (1-50). Returns JSON list of matching endpoints (best first).

sbis_mapA

The big picture: business entities this API covers and the go-to methods for each. Call with no args to see the whole map ("you are here"); pass entity="reviews" (or stocks/prices/orders/…) to list every method of one entity. Use this before guessing — it orients you fast.

sbis_describe_methodB

Return the full catalog record for one endpoint: method, host, path, scope, safety level, pagination style, rate limit, params and doc URL.

sbis_call_methodA

Execute one READ endpoint from the catalog by operation_id.

Target API: https://saby.ru/help/integration/api.

Reads only: nothing here changes data, so it runs without confirmation. To change data use sbis_write_method, to delete use sbis_delete_method.

Args: operation_id: id from the catalog (see sbis_search_methods). path_values: values for {placeholders} in the path. query: query-string parameters. body: JSON request body (a few read endpoints take one). Returns JSON: {"ok": true, "status", "data"} or the error envelope.

sbis_write_methodA

Execute one WRITE endpoint from the catalog: create or update data.

Target API: https://saby.ru/help/integration/api.

Requires confirm_write=true; nothing is sent without it. Irreversible operations live in sbis_delete_method, reads in sbis_call_method.

Args: operation_id: id from the catalog (see sbis_search_methods). path_values: values for {placeholders} in the path. query: query-string parameters. body: JSON request body. confirm_write: must be true. Returns JSON: {"ok": true, "status", "data"} or the error envelope.

sbis_delete_methodA

Execute one DESTRUCTIVE endpoint: deletes or irreversibly changes data.

Target API: https://saby.ru/help/integration/api.

Both confirm_write=true and i_understand_this_modifies_data=true are required; nothing is sent without both.

Args: operation_id: id from the catalog (see sbis_search_methods). path_values: values for {placeholders} in the path. query: query-string parameters. body: JSON request body. confirm_write: must be true. i_understand_this_modifies_data: must be true. Returns JSON: {"ok": true, "status", "data"} or the error envelope.

sbis_get_rawA

Read ANY endpoint by path, including ones missing from the catalog.

Target API: https://saby.ru/help/integration/api.

Safe verbs only (GET, HEAD, OPTIONS). To change data use sbis_write_raw, to delete use sbis_delete_raw.

Args: path: full path beginning with '/', e.g. "/". method: safe verb, GET by default. host: host override; defaults to the service's default host. query: query-string parameters. body: JSON request body (rare on reads; some APIs want one). Returns JSON: {"ok": true, "status", "data"} or the error envelope.

sbis_write_rawA

Create or update data at ANY path, including paths not in the catalog.

Target API: https://saby.ru/help/integration/api.

POST, PUT and PATCH only; requires confirm_write=true.

Args: method: POST, PUT or PATCH. path: full path beginning with '/'. host: host override; defaults to the service's default host. query: query-string parameters. body: JSON request body. confirm_write: must be true. Returns JSON: {"ok": true, "status", "data"} or the error envelope.

sbis_delete_rawA

Delete data at ANY path, including paths not in the catalog.

Target API: https://saby.ru/help/integration/api.

DELETE only. Both confirm_write=true and i_understand_this_modifies_data=true are required.

Args: path: full path beginning with '/'. method: DELETE. host: host override; defaults to the service's default host. query: query-string parameters. body: JSON request body. confirm_write: must be true. i_understand_this_modifies_data: must be true. Returns JSON: {"ok": true, "status", "data"} or the error envelope.

sbis_fetch_allA

Auto-paginate a read endpoint and return every row in one response.

Handles offset, last_id, cursor (Ozon v4/v5), page and WB lastChangeDate styles. The array path is taken from the catalog automatically.

Args: operation_id: a read endpoint from the catalog. query / body / path_values: base parameters (cursor fields are managed). items_path: override the array path (default: the endpoint's own). limit: page size to request. max_items: hard cap to protect context (default 10000). Returns JSON: {"ok", "items", "total_fetched", "pages_fetched", "truncated"}.

sbis_list_cabinetsA

List configured cabinets for this marketplace and which one is active.

Returns JSON: {"active": str|null, "cabinets": [names], "fields_needed": [...]}. Secret values are never returned.

sbis_add_cabinetA

Add or update a cabinet (a named set of API credentials), from chat.

⚠️ This puts the key into the chat transcript — requires i_understand_key_goes_to_chat=true. The terminal-free safe alternative is the installer (install.py / double-click), where the key never enters chat.

Args: credentials: dict with the required fields for this service ({fields}). For Ozon: {{"client_id": "...", "api_key": "..."}}; for WB: {{"token": "..."}}. name: optional label. If omitted, the cabinet is named after the real shop name fetched from the marketplace (falls back to "main"). i_understand_key_goes_to_chat: must be true to proceed. Saved to ~/.marketplace-mcp/cabinets.json (local, chmod 600), never echoed.

sbis_set_keyA

Change / rotate the API key from chat (e.g. the old one expired or leaked).

⚠️ The key goes into the chat transcript — requires i_understand_key_goes_to_chat=true. The safe, terminal-free alternative is the installer, where the key never enters chat. Use a scoped key and rotate it in the seller cabinet if it was exposed.

Args: credentials: dict with the required fields ({fields}). cabinet: which cabinet to update. Default: the active one (so "my key expired" just works). If there is none, the cabinet is named from the marketplace's shop name, else "main". i_understand_key_goes_to_chat: must be true to proceed. On success the key is validated against the marketplace and the shop name is reported. Saved locally (chmod 600), never echoed back.

sbis_use_cabinetA

Switch the active cabinet. Subsequent API calls use its credentials.

Args: name: the cabinet to activate (see sbis_list_cabinets).

sbis_remove_cabinetB

Delete a stored cabinet. If it was active, another becomes active.

Args: name: the cabinet to remove.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 18 tools

Disambiguation4/5

The tools are mostly distinct: catalog exploration tools (sbis_list_sections, sbis_get_section, sbis_search_methods, sbis_map, sbis_describe_method) are clearly separated from execution tools (sbis_call_method, sbis_write_method, sbis_delete_method) and raw variants (sbis_get_raw, sbis_write_raw, sbis_delete_raw). The main ambiguity is between sbis_get_section and sbis_list_sections, which both sound like listing sections, though their descriptions clarify one lists all sections and the other lists endpoints in one section.

Naming Consistency4/5

All tools follow the sbis_ prefix and use lower_snake_case verbs (check, get, search, map, call, write, delete, fetch, list, add, set, use, remove, describe). The naming is mostly consistent, with minor deviations: sbis_map as a noun-like verb is less descriptive than the others, and sbis_set_key overlaps conceptually with sbis_add_cabinet for credential updates. Overall the pattern is predictable.

Tool Count4/5

18 tools is slightly on the higher side but appropriate for a server that covers both catalog discovery, curated execution, raw execution, and credential/cabinet management. The count is justified by the breadth of the domain and the need for both catalog-driven and raw HTTP access variants.

Completeness5/5

The server provides complete coverage: discovery (sections, search, map, describe), safe execution (call), write execution (write), destructive execution (delete), raw access for uncataloged endpoints (get/write/delete_raw), pagination handling (fetch_all), and all credential lifecycle operations (list, add, set, use, remove). No significant gaps for the stated purpose of integrating with Saby/marketplace APIs.

Maintenance

ActivityMaintained
ResponsivenessNo issues