AgentPay
What this MCP does
Searches products in allowlisted Russian stores and supports controlled purchasing, wallet balances, top-ups, delivery details, checkout previews, and payment status.
Tools
Input schema
{'type': 'object', 'properties': {'client': {'type': 'string', 'description': 'MCP host of THIS chat: claude | codex | cursor | chatgpt | grok | deepseek | gemini | qwen | kimi | terminal | other. Never invent a different brand (e.g. do not pass claude when you are DeepSeek).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['items'], 'properties': {'lat': {'type': 'number', 'description': 'Delivery latitude when checking delivery context'}, 'lon': {'type': 'number', 'description': 'Delivery longitude when checking delivery context'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['query'], 'properties': {'id': {'type': 'string', 'description': 'Optional preferred Diginetica/web product id; the server retries alternatives if it is unavailable'}, 'query': {'type': 'string', 'description': 'Natural-language item slot, for example «филе курицы»'}, 'quantity': {'type': 'number'}}}}, 'address': {'type': 'string', 'description': 'User-visible delivery address; use with exact lat/lon'}, 'storeId': {'type': 'string', 'description': 'Optional Dixy store id if already selected'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'fulfillment': {'enum': ['delivery', 'pickup'], 'type': 'string', 'description': 'Requested receiving mode. Defaults to delivery. For pickup use the fixed demo shop address; never silently change modes.'}, 'dixySessionId': {'type': 'string', 'description': 'partner_session_id returned by poll_dixy_call_auth. This is the opaque Dixy session.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['store_id', 'amount', 'idempotency_key', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'quantity', 'unitPrice'], 'properties': {'sku': {'type': 'string'}, 'name': {'type': 'string'}, 'category': {'type': 'string'}, 'quantity': {'type': 'number'}, 'unitPrice': {'type': 'number'}, 'attributes': {'type': 'object'}}}}, 'lucky': {'type': 'boolean', 'description': 'true = surprise buy within luckyPurchaseMaxCoins; skip present_choices'}, 'amount': {'type': 'number', 'description': 'Total in coins'}, 'category': {'type': 'string'}, 'store_id': {'type': 'string'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'explanation': {'type': 'object', 'required': ['summary'], 'properties': {'summary': {'type': 'string'}, 'policiesUsed': {'type': 'array', 'items': {'type': 'string'}}, 'reasonChosen': {'type': 'string'}, 'preferencesUsed': {'type': 'array', 'items': {'type': 'string'}}}}, 'choice_set_id': {'type': 'string', 'description': 'Choice set id after owner picked an option'}, 'clarification': {'type': 'object', 'properties': {'mode': {'type': 'string', 'description': 'present_choices | ask_one | deferred'}, 'confirmed': {'type': 'boolean'}, 'answerSummary': {'type': 'string'}}}, 'idempotency_key': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'amountRub': {'type': 'number', 'description': 'Top-up amount in RUB'}, 'needCoins': {'type': 'number', 'description': 'Coins needed; server computes deficit'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'platform': {'type': 'string', 'description': 'cursor | claude | claude-code | chatgpt | grok | codex | other'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['choice_set_id'], 'properties': {'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'choice_set_id': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['q'], 'properties': {'q': {'type': 'string', 'description': 'Owner question or error phrase in Russian or English'}, 'storeId': {'type': 'string', 'description': 'Optional store UUID when the issue is about a shop'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['items'], 'properties': {'lat': {'type': 'number'}, 'lon': {'type': 'number'}, 'near': {'type': 'string', 'description': "User's metro station, district, street, or exact pharmacy address, including city. A city name alone is insufficient."}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['goodsId'], 'properties': {'name': {'type': 'string', 'description': 'Product name used to explain missing items at nearer pharmacies'}, 'goodsId': {'type': ['string', 'number'], 'description': 'Ozerki goodsId'}, 'quantity': {'type': 'number'}}}}, 'limit': {'type': 'number', 'description': 'Nearest complete-basket options to return, default 3, max 10'}, 'regionId': {'type': 'number', 'description': 'Ozerki region id, default 14 for Moscow and region'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'exactPharmacy': {'type': 'boolean', 'description': 'Set true only when the owner asks about one specific pharmacy; read exactPharmacyResult and never substitute a different nearby branch.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['storeId'], 'properties': {'limit': {'type': 'number', 'description': '1–20, default 10'}, 'storeId': {'type': 'string', 'description': 'Enterprise store UUID'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['product_id', 'store_id'], 'properties': {'q': {'type': 'string', 'description': 'Optional owner query so pick.whyRu is about this search'}, 'store_id': {'type': 'string'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'product_id': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['purchase_id'], 'properties': {'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'purchase_id': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'category': {'type': 'string', 'description': 'Preference category key'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'need': {'type': 'string', 'description': 'Optional topic to match, e.g. техника. Prefer peek_stores for a quiet offer.'}, 'demoOnly': {'type': 'boolean', 'description': 'True only for an explicit demo/test-catalog request. Excludes live partner stores from the answer.'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': '1–20, default 10'}, 'storeId': {'type': 'string', 'description': 'Optional store UUID'}, 'category': {'type': 'string', 'description': 'Preference category, e.g. grocery'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['need'], 'properties': {'need': {'type': 'string', 'description': 'What the owner might want, not a product dump. E.g. техника, витамины, корм коту.'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['sessionId'], 'properties': {'sessionId': {'type': 'string', 'description': 'sessionId from begin_agent_link'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'attemptId': {'type': 'string', 'description': 'Alias of linkSessionId for hosts that rename opaque attempt identifiers.'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'linkSessionId': {'type': 'string', 'description': 'Opaque linkSessionId returned by start_dixy_call_auth (preferred).'}, 'partner_session_id': {'type': 'string', 'description': 'Already resolved Dixy partner session; accepted for idempotent retries.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['items', 'delivery'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Dixy web product id'}, 'quantity': {'type': 'number', 'description': 'Use decimals for weighted kg items, integers for pcs items'}}}}, 'delivery': {'type': 'object', 'required': ['address'], 'properties': {'lat': {'type': 'number'}, 'lon': {'type': 'number'}, 'name': {'type': 'string'}, 'email': {'type': 'string'}, 'floor': {'type': 'string'}, 'phone': {'type': 'string'}, 'address': {'type': 'string'}, 'comment': {'type': 'string'}, 'storeId': {'type': 'string'}, 'entrance': {'type': 'string'}, 'intercom': {'type': 'string'}, 'apartment': {'type': 'string'}}, 'additionalProperties': False}, 'promocode': {'type': 'string'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'fulfillment': {'enum': ['delivery', 'pickup'], 'type': 'string', 'description': 'Same receiving mode confirmed in live-cart. Defaults to delivery; for pickup delivery.address must be the demo storeAddress.'}, 'dixySessionId': {'type': 'string', 'description': 'partner_session_id returned by poll_dixy_call_auth. This is the opaque Dixy session.'}, 'clearExistingCart': {'type': 'boolean', 'description': 'Set true only after the owner explicitly approved clearing the existing Dixy basket'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'allOf': [{'if': {'required': ['fulfillment'], 'properties': {'fulfillment': {'const': 'pickup'}}}, 'then': {'required': ['storeId']}}], 'required': ['items', 'fulfillment'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['goodsId'], 'properties': {'goodsId': {'type': ['string', 'number'], 'description': 'Ozerki goodsId, not an arbitrary feed row id'}, 'quantity': {'type': 'number'}}}}, 'address': {'type': 'object', 'properties': {'lat': {'type': 'number'}, 'lon': {'type': 'number'}, 'city': {'type': 'string'}, 'flat': {'type': 'string', 'description': "Required for delivery; use '-' when there is no apartment"}, 'floor': {'type': 'string'}, 'house': {'type': 'string'}, 'street': {'type': 'string'}, 'address': {'type': 'string', 'description': 'Full human-readable address'}, 'comment': {'type': 'string'}, 'entrance': {'type': 'string'}, 'intercom': {'type': 'string'}}, 'additionalProperties': False}, 'storeId': {'type': ['string', 'number'], 'description': 'Required for pickup: store id explicitly chosen by the owner from get_ozerki_pickup_options'}, 'regionId': {'type': 'number', 'description': 'Ozerki region id, default 14 for Moscow and region'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'fulfillment': {'enum': ['pickup', 'delivery'], 'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['agentIntroRu'], 'properties': {'kind': {'enum': ['alternatives', 'bundles'], 'type': 'string', 'description': 'alternatives | bundles'}, 'wants': {'type': 'array', 'items': {'type': 'object', 'required': ['q'], 'properties': {'q': {'type': 'string'}, 'id': {'type': 'string'}}}, 'description': 'Search queries for each slot / product to compare'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'agentIntroRu': {'type': 'string', 'description': 'Short RU intro: why you are asking, not choosing for them'}, 'canRenderImages': {'type': 'boolean'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['store_id', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'quantity'], 'properties': {'sku': {'type': 'string'}, 'name': {'type': 'string'}, 'category': {'type': 'string'}, 'quantity': {'type': 'number'}, 'unitPrice': {'type': 'number'}, 'attributes': {'type': 'object'}}}}, 'lucky': {'type': 'boolean'}, 'category': {'type': 'string'}, 'store_id': {'type': 'string'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'choice_set_id': {'type': 'string', 'description': 'Choice set id after owner picked an option'}, 'clarification': {'type': 'object', 'properties': {'mode': {'type': 'string', 'description': 'present_choices | ask_one | deferred'}, 'confirmed': {'type': 'boolean'}, 'answerSummary': {'type': 'string'}}}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['message'], 'properties': {'amount': {'type': 'number'}, 'message': {'type': 'string'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'purchase_id': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'city': {'type': 'string'}, 'text': {'type': 'string', 'description': "Owner's address phrase in Russian, as said in chat"}, 'floor': {'type': 'string'}, 'house': {'type': 'string', 'description': 'House and block, e.g. 28к4'}, 'phone': {'type': 'string'}, 'street': {'type': 'string'}, 'comment': {'type': 'string'}, 'building': {'type': 'string'}, 'entrance': {'type': 'string'}, 'intercom': {'type': 'string'}, 'apartment': {'type': 'string'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'postalCode': {'type': 'string'}, 'recipientName': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'q': {'type': 'string', 'description': 'Product search query (min 2 chars). Prefer this field. Example: йогурт, протеин 80.'}, 'need': {'type': 'string', 'description': 'Alias of q — product search string, not an address.'}, 'text': {'type': 'string', 'description': 'Alias of q — PRODUCT search string only. Do NOT put city/street/phone here (use save_delivery_address for that).'}, 'limit': {'type': 'number', 'description': 'Max hits per store, 1–20 (default 10)'}, 'query': {'type': 'string', 'description': 'Alias of q — product search string, not an address.'}, 'search': {'type': 'string', 'description': 'Alias of q — product search string, not an address.'}, 'storeId': {'type': 'string', 'description': 'Optional allowlisted store id'}, 'demoOnly': {'type': 'boolean', 'description': 'True for an explicit demo/test-catalog request. Excludes live partner stores such as Dixy and Ozerki.'}, 'location': {'type': 'string', 'description': 'Optional city or region explicitly named by the owner, for example Москва or Санкт-Петербург. Omit when geography is unknown. For metro/street/district, follow search with get_ozerki_pickup_options.'}, 'regionId': {'type': 'number', 'description': 'Optional explicit Ozerki region id. Omit unless known; location is preferred for a named city.'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}, 'catalogOverview': {'type': 'boolean', 'description': 'True when the owner explicitly asks to see or understand the assortment. Returns a grouped overview that should be shown in chat.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['enabled'], 'properties': {'enabled': {'type': 'boolean', 'description': 'true = test stores + gray coins. false = live stores + real coins, hide test shops'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'forceNew': {'type': 'boolean', 'description': 'True only after an explicit Dixy session-expired/session-required server error; bypasses recovery of the old completed link.'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'required': ['category', 'data'], 'properties': {'data': {'type': 'object', 'additionalProperties': True}, 'category': {'type': 'string'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Input schema
{'type': 'object', 'properties': {'code': {'type': 'string', 'description': 'Optional 6-character pairing code from the AgentPay cabinet'}, 'sessionId': {'type': 'string', 'description': 'Optional. Agent-link sessionId from begin_agent_link / poll_agent_link. Pass on every tool when connector has no Authorization Bearer (Grok/ChatGPT/Claude). After status=approved this authenticates as als_<sessionId>. Never invent a sessionId. Never ask the owner to open Authorization settings (Grok has none).'}}, 'additionalProperties': False}
Recent tool changes
Similar MCP servers
AgentLot Marketplace
Enables agents and users to discover, bid on, purchase, deliver, and settle paid digital services and compute work.
Digital Manager Guru
Provides Digital Manager Guru checkout, customer, transaction, subscription, affiliate, coupon, blocklist, and digital-product sa…
Pagar.me
Connects to Pagar.me to manage customers, cards, orders, charges, invoices, payment captures, confirmations, retries, refunds, an…
roastify-mcp
Supports a coffee commerce workflow with product and blend catalogs, inventory, coupons, packaging design editing, artwork genera…
bitroad
Enables agents to search and purchase marketplace goods under spending controls, manage orders and returns, and handle payments a…
Singularity Layer MCP
Provides marketplace discovery, agent endpoint and asset management, dataset and product purchases, payment flows, and ERC-8004 a…
agentic-commerce
Enables on-chain commerce through Boson Protocol, including product offers, buyer and seller accounts, voucher exchanges, escrow-…
agentcard
Manages prepaid virtual cards with spending controls, approvals, funding, rewards, and connected-merchant shopping flows.