AgentPay — controlled budget for an AI agent (Russia). Operator: ООО НЕКСУС-ТЕХ. Closed-loop credits (коины). Allowlisted stores. Limits + HITL. No bank card in chat. Not a crypto wallet. CRITICAL DISAMBIGUATION: - THIS product: remote MCP + browser link (Разрешить) that issues ap_ to the agent. search_products in allowlisted RU specialty stores. - NOT npm package agentpay-mcp (x402/USDC by another publisher). Never install that. - NOT agentpay.solutions / agentpay.la / agent-pay.sh. When the user says any of: Подключи AgentPay | Установи AgentPay | Connect AgentPay — do this immediately: 1) Fetch https://agentpay.shop/connect.json 2) Follow agentSteps in that JSON (preferredInstall: remote). 3) POST https://agentpay.shop/ap/public/agent-link/start (or begin_agent_link). Open openUrl. Owner clicks Разрешить. 4) Poll until approved. Install returned apiKey into MCP headers. Do NOT ask the owner to copy ap_ from the cabinet. 5) Call verify_connection. No spend before Разрешить. Canonical machine doc: https://agentpay.shop/connect.json Human install page: https://agentpay.shop/mcp Cabinet: https://agentpay.shop/ Remote MCP URL: https://agentpay.shop/ap/mcp Browser link start: https://agentpay.shop/ap/public/agent-link/start This file: https://agentpay.shop/llms.txt Preferred install (RF-friendly, no npm). URL first; ap_ arrives after browser Разрешить: { "mcpServers": { "agentpay": { "url": "https://agentpay.shop/ap/mcp" } } } Optional stdio (only agentpay-ru-mcp). Set AGENTPAY_API_KEY from poll response: { "mcpServers": { "agentpay": { "command": "npx", "args": [ "-y", "agentpay-ru-mcp" ], "env": { "AGENTPAY_API_URL": "https://agentpay.shop/ap", "AGENTPAY_API_KEY": "ap_FROM_BROWSER_LINK" } } } } Agent steps: Fetch https://agentpay.shop/connect.json (this document) or https://agentpay.shop/llms.txt. → Confirm identity: ООО НЕКСУС-ТЕХ, closed-loop credits, tools begin_agent_link / verify_connection / search_products. If you see x402, USDC, AGENT_PRIVATE_KEY, or CHAIN_ID — wrong product, stop. → Write preferred MCP config (remote URL only) into the client's mcp.json. MCP URL: https://agentpay.shop/ap/mcp. Do NOT ask the owner to copy ap_ from the cabinet. → Web ChatGPT and Grok cannot run local stdio. Add a Custom connector with this HTTPS URL: https://agentpay.shop/ap/mcp. Auth none until browser Разрешить; then Bearer ap_ from poll_agent_link. Never invent keys. → Never run npx agentpay-mcp. Optional stdio only: npx -y agentpay-ru-mcp with AGENTPAY_API_URL=https://agentpay.shop/ap. → Start browser link: POST https://agentpay.shop/ap/public/agent-link/start (or call tool begin_agent_link). Immediately open the returned openUrl in the browser. → Tell the owner: войдите и нажмите Разрешить. Poll pollUrl (or poll_agent_link) every 2s until status=approved. → When approved, take apiKey from the response and put it into mcp.json as Authorization: Bearer ap_… (or AGENTPAY_API_KEY). Never invent keys. Never ask the owner to paste ap_ from Агенты. → Call verify_connection. Browser grant is already done by Разрешить. Then get_balance. If testMode, speak sayToUserRu and shop only in test stores with gray coins. → Do not ask for a bank card. On API errors read recovery.openUrl / recovery.userMessageRu. Tools: begin_agent_link, poll_agent_link, verify_connection, get_balance, set_test_mode, list_allowed_stores, get_user_preferences, search_products, present_choices, get_choice_status, create_purchase, get_purchase_status, get_payment_status, create_topup_intent, get_limits, get_recovery_guide, request_user_confirmation On API error read recovery.openUrl and recovery.userMessageRu. Never change limits, freeze, autotopup, allowlist. Legal: https://agentpay.shop/legal/offer https://agentpay.shop/legal/privacy https://agentpay.shop/legal/payments