# AgentPay (Russia) [Health: Active]

**Category:** 💰 Finance & Fintech  
**Repository:** https://github.com/zapnikita95/agentpay-mcp  
**GitHub Stars:** 0  
**npm Downloads (last month):** 1426  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/agentpay-russia

## Description
RU specialty stores only. Controlled AI agent budget, allowlisted shops. Not x402.

## Tools
Capabilities this server exposes over MCP:

- **deploy_wallet** — Deploy a new AgentAccountV2 wallet via the factory contract. The wallet is deterministically addressed (CREATE2) and owned by an NFT. Returns the wallet address and deployment transaction hash. Requires FACTORY_ADDRESS and NFT_CONTRACT_ADDRESS env vars (or pass them as arguments).
- **get_wallet_info** — Get comprehensive wallet information including address, on-chain balance, spend limits, remaining period allowance, and queue depth. Use token parameter to check budget for a specific ERC20 (defaults to ETH).
- **send_payment** — Send ETH or ERC20 tokens from the Agent Wallet. If the amount is within the configured spend limits, it executes immediately and returns the tx hash. If it exceeds limits, the transaction is queued for owner approval (use queue_approval to manage). Always check spend limits first with check_spend_limit to avoid surprises.
- **check_spend_limit** — Check whether a proposed payment amount is within the wallet's autonomous spend limits. Returns a clear yes/no with remaining budget details. Use this before send_payment to avoid surprise queuing.
- **queue_approval** — Manage over-limit transactions queued for owner review. Use action="list" to see pending transactions, "approve" to approve one by ID, or "cancel" to cancel one by ID. Approve/cancel require the agent key to have owner privileges.
- **x402_pay** — Use when an agent needs one capped x402 paid HTTP request and has already verified the URL, price, payTo, asset, and Base network. Automatically handles HTTP 402 Payment Required responses with the x402 v2.11 Payment-Signature flow. If an active x402 V2 session covers this URL, the session token is used instead of making a new payment. Identical retries replay the original paid result; pass idempotencyKey to distinguish two equal fetches. An RPC drop after payment fail-closes instead of signing a second settlement. Do not use when the endpoint is an uninitialized Streamable HTTP MCP session, the offered network is unsupported, the buyer lacks a spend cap, or a reusable entitlement should use x402_session_start instead.
- **get_transaction_history** — Retrieve the wallet's recent on-chain transaction history from event logs, plus process-lifetime x402_pay settlements (tx hash, payee, amount, token, URL, replay count). Shows executions, queued transactions, approvals, cancellations, spend policy updates, and operator changes. Filter by event type or block range for targeted queries. x402 settlement rows appear when event_type is all.
- **x402_session_start** — Use when a paid endpoint supports a reusable x402 session or entitlement. Makes one capped payment, stores a non-custodial signed session token, and returns a session_id for x402_session_fetch. If an active local session already covers the endpoint, the existing session_id is returned and no new payment is signed. Do not use for providers without session semantics, unknown networks, missing spend caps, or calls where the buyer cannot store and audit the returned mcp-session-id/session_id.
- **x402_session_fetch** — Use after x402_session_start returns a valid session_id. Injects the stored session token and makes a covered request without a new payment. Do not use before initialize/session creation, as a payment bypass, after expiry, or for URLs outside the session scope.
- **x402_session_status** — Check the status of x402 V2 payment sessions. Without arguments, lists all active sessions with TTL remaining. With a session_id, shows full details for that session including call count, payment info, and the signed session token.
- **x402_session_end** — Close an x402 V2 session locally before it expires naturally: this server discards its stored copy of the session token and x402_session_fetch will return an error for the closed session. This is NOT server-side revocation — the signed bearer token cannot be revoked once issued, and any copy already sent to (or intercepted en route to) the remote endpoint remains technically valid there until the expiry baked into the token. If you suspect the token leaked, treat it as live until that expiry and notify the endpoint operator. Still useful hygiene: it stops further use from this process and scrubs the stored token material.
- **lookup_token** — Look up a token by symbol and chain ID from the global token registry. Returns the token address, decimals, and metadata if found.
- **add_custom_token** — Register a custom ERC-20 token in the global token registry so it can be used by send_token, get_balances, and swap_tokens. Refuses to overwrite an existing symbol+chain entry or to alias an already-registered contract with different decimals (including built-ins such as USDC) because a wrong decimals value would silently overpay on later transfers and swaps.
- **list_chain_tokens** — List all tokens registered for a given chain ID in the global token registry.
- **send_token** — Send any ERC-20 token from the Agent Wallet to a recipient. Resolves the token address and decimals from the global registry, then calls agentTransferToken through the AgentAccountV2 contract. Subject to configured spend limits. Identical retries replay the original tx; pass idempotencyKey to distinguish two equal invoices. An RPC drop after broadcast fail-closes instead of sending a second transfer.
- **get_balances** — Get all ERC-20 token balances for the configured Agent Wallet address. Uses the global token registry to enumerate tokens for the given chain.
- **swap_tokens** — Swap one ERC-20 token for another using Uniswap V3. Resolves token addresses from the registry, executes the swap via SwapModule. Supported chains: base (8453), arbitrum (42161), optimism (10), polygon (137). Identical retries replay the original tx; pass idempotencyKey to distinguish two equal swaps. An RPC drop after broadcast fail-closes instead of sending a second swap.
- **bridge_usdc** — Bridge USDC across chains using Circle's CCTP V2 protocol. Supported chains: base, ethereum, optimism, arbitrum, polygon, avalanche, linea, unichain, sonic, worldchain. The bridge approves USDC, burns on source, polls Circle IRIS for attestation, then mints on destination. Identical retries replay the original burn/mint; pass idempotencyKey to distinguish two equal bridges. An RPC drop after broadcast fail-closes instead of burning a second time.
- **set_spend_policy** — Configure the Agent Wallet spend policy. Sets a daily limit, per-transaction cap, and optional recipient allowlist. The policy is enforced in-process for the lifetime of the MCP server; policies from all scopes are enforced together (union).
- **check_budget** — Check the remaining on-chain budget for the Agent Wallet. Returns per-transaction limit and period remaining. Optionally include any configured spend policy details.
- **verify_agent_identity** — Verify an agent's on-chain identity using ERC-8004. Looks up the agent by owner address and returns identity details including agent ID, URI, and registration file.
- **get_reputation** — Get the on-chain reputation score for an agent. Resolves agent ID from owner address via ERC-8004, then queries the Reputation Registry for score and feedback.
- **verify_agent_uaid** — Verify an agent's identity using a Universal Agent Identifier (UAID). Works across all chains — EVM (ERC-8004), Hedera, Solana, and off-chain agents. Returns identity details, payment address, and trust score from the HOL Registry.
- **create_escrow** — Create a mutual-stake escrow vault between the Agent Wallet (buyer) and a counterparty (seller). Both parties lock collateral (equal to payment amount) ensuring aligned incentives. Uses USDC as the payment token. Requires FACTORY_ADDRESS env var or factoryAddress param.
- **otel_register_budget_policy** — Register a budget policy for an AWS AgentCore agent or task. When OTel spans report costs exceeding this budget, agentpay-mcp will enforce the configured action (warn/block/kill circuit-breaker). This fills the gap left by AgentCore Policy Controls which provide observability but no native per-agent spend caps.
- **otel_evaluate_spend** — Evaluate a spend event from an OTel span against registered budget policies. Returns a budget decision (allow/warn/block/kill) with utilization details. The decision is also formatted as OTel event attributes for re-emission into the AgentCore telemetry pipeline.
- **otel_budget_status** — Get the current budget status for an AgentCore agent, including accumulated spend, remaining budget, utilization percentage, and optional decision history. Useful for dashboards and audit trails.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "agentpay-russia": {
    "command": "npx",
    "args": ["-y","agentpay-mcp"]
  }
}
```

## Documentation

## What AgentPay (Russia) does

The AgentPay (Russia) MCP server gives an AI agent access to a merchant catalog and purchasing flow for Russia-based specialty stores listed on AgentPay. The agent can inspect current product information, including price, availability, SKU, images, and a ProductCard, before attempting a purchase.

The service is designed for controlled shopping rather than unrestricted purchasing. Checkout is subject to configured limits and human-in-the-loop approval. The catalog should be treated as the source of truth for price and stock instead of information retained in the model’s context.

## How it works

AgentPay (Russia) MCP server deployments can use the remote endpoint at `https://agentpay.shop/ap/mcp`. The connection process begins by retrieving `https://agentpay.shop/connect.json`, installing the remote MCP configuration described there, and opening the supplied browser link. The account owner then selects “Разрешить” to approve access. The owner should not be asked to copy an `ap_…` value from the AgentPay cabinet. After authorization, the agent calls `verify_connection` to confirm that the connection is active.

For discovery, `peek_stores` can serve as an initial step when the request is to find or select something. Product searches and individual product lookups provide the current details needed before checkout. Existing purchases can be used as a starting point for reorders, but the product’s price should be refreshed through the catalog first.

## Setup and configuration

Use the remote MCP option when connecting an MCP client. The README identifies Cursor as a remote web connector and provides the endpoint above. It also points to `https://agentpay.shop/llms.txt` for additional model-facing information.

A separately published stdio package is expected to use the name `agentpay-ru-mcp`. The setup instructions explicitly distinguish it from the unrelated npm package named `agentpay-mcp`, which refers to an x402/crypto project from another publisher. Do not install that similarly named package for this integration.

## Tools and capabilities

- `search_products` searches the merchant feed and returns fields such as price, stock status, SKU, and images.
- `get_product` retrieves one ProductCard so the agent can recheck availability and price.
- `peek_stores` supports an initial store-discovery step.
- `list_purchases` exposes previous purchases for reorder workflows.
- `create_purchase` starts checkout while applying limits and requiring human approval.
- `verify_connection` confirms the authorized connection.

## Limitations and notes

The service is limited to Russia and to specialty stores allowlisted on AgentPay. It is not presented as a general marketplace connector, and it does not use the crypto/x402 payment model. A developer should plan for explicit catalog lookups before quoting prices or initiating a purchase. Reorder data does not replace that verification step: refresh the current product details first, then proceed through the controlled checkout flow.

_Full upstream README: https://allmcps.com/mcp/agentpay-russia/readme_

