Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.up2itnow0822/agentpay

NPM · AGENTPAY-MCP · SCANNED SEP 20

Non-custodial x402 payment MCP server for AI agents. Wallets and payments on 17 chains.

Available components

0 this week 78 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security90
  • No malware found by supply-chain analysis.Pass
  • CVE check failed: a known high-severity CVE affects ws 8.18.3, reached via viem > ws. A fixed version is available. View diagnostics → Fail
  • No install/post-install scripts declared.Pass
  • 31 of 112 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency48
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 126 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability74
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 1544 tokens (~140/item across 11 items; 11 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management83
  • Stability observed for 25 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 3 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "deploy_wallet" implies "deploy" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 11 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the io.github.up2itnow0822/agentpay MCP server?

io.github.up2itnow0822/agentpay runs locally as an npm package, launched with npx -y agentpay-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · agentpay-mcp

# add to Claude Code
claude mcp add up2itnow0822-agentpay -- npx -y agentpay-mcp
// .cursor/mcp.json
{
  "mcpServers": {
    "up2itnow0822-agentpay": {
      "command": "npx",
      "args": [
        "-y",
        "agentpay-mcp"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "up2itnow0822-agentpay": {
      "command": "npx",
      "args": [
        "-y",
        "agentpay-mcp"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add up2itnow0822-agentpay -- npx -y agentpay-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "up2itnow0822-agentpay": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "agentpay-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add up2itnow0822-agentpay --command npx --arg -y --arg agentpay-mcp
# ~/.hermes/config.yaml
mcp_servers:
  up2itnow0822-agentpay:
    command: "npx"
    args: ["-y", "agentpay-mcp"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "up2itnow0822-agentpay": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "agentpay-mcp"
      ]
    }
  }
}
# add to Vellum
assistant mcp add up2itnow0822-agentpay -t stdio -c npx -a -y agentpay-mcp
// mcp.json
{
  "mcpServers": {
    "up2itnow0822-agentpay": {
      "command": "npx",
      "args": [
        "-y",
        "agentpay-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 19 Sept 26 −2
    • Stability: pass → 0.80 functional
  • 18 Sept 26 0
    • Stability: 0.97 → pass security
  • 17 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.

  • 14 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 12 Sept 26 −2
    • Stability: pass → 0.80 functional
  • 11 Sept 26 0
    • Stability: 0.97 → pass security
  • 10 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.

  • 7 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Analysed npm/agentpay-mcp@3.1.0

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Vulnerabilities 2 findings
ID CVE Severity Vector Fix available
GHSA-58qx-3vcg-4xpx CVE-2026-45736 medium CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:N/A:N yes
GHSA-96hv-2xvq-fx4p CVE-2026-48779 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes

Background: What a vulnerability scan can and cannot prove →

Dependencies 112 packages
Packages resolved 112
Stale 31
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 11 exposed · ~1,544 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
check_spend_limit ~82

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.

NameTypeReqDescription
amount_ethstringyesAmount in ETH to check (e.g. "0.01")
tokenstringToken address. Omit for native ETH.

No output schema declared.

No examples provided.

deploy_wallet ~126

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).

NameTypeReqDescription
factory_addressstringFactory contract address. Defaults to FACTORY_ADDRESS env var.
nft_contract_addressstringNFT contract address. Defaults to NFT_CONTRACT_ADDRESS env var.
token_idstringyesNFT token ID that will own this wallet (e.g. "1")

No output schema declared.

No examples provided.

get_transaction_history ~126

Retrieve the wallet's recent on-chain transaction history from event logs. Shows executions, queued transactions, approvals, cancellations, spend policy updates, and operator changes. Filter by event type or block range for targeted queries.

NameTypeReqDescription
event_typestringFilter by event type (default: all)
from_blockstringStart block (decimal string). Defaults to 1000 blocks ago.
limitnumberMax entries to return (default: 20, max: 100)
to_blockstringEnd block (decimal string). Defaults to latest.

No output schema declared.

No examples provided.

get_wallet_info ~82

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).

NameTypeReqDescription
tokenstringToken address to check. Use "0x0000000000000000000000000000000000000000" for ETH (default).

No output schema declared.

No examples provided.

queue_approval ~95

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.

NameTypeReqDescription
actionstringyesAction: "list", "approve", or "cancel"
tx_idstringTransaction queue ID (required for approve/cancel)

No output schema declared.

No examples provided.

send_payment ~187

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.

NameTypeReqDescription
amount_ethstringyesAmount in ETH (or token units). E.g. "0.001" for 0.001 ETH, "1.5" for 1.5 USDC
memostringOptional memo for this payment (not stored on-chain)
tostringyesRecipient wallet address (0x-prefixed)
tokenstringERC20 token address. Omit for native ETH.
token_decimalsnumberToken decimals (default 18 for ETH, 6 for USDC)

No output schema declared.

No examples provided.

x402_pay ~231

Fetch a URL and automatically handle HTTP 402 Payment Required responses. If an active x402 V2 session covers this URL, the session token is used instead of making a new payment (no on-chain cost). If no session exists, the Agent Wallet pays the required amount and retries. Payment is rejected if it exceeds your wallet's spend limits or the max_payment_eth cap. Powered by the x402 protocol on Base network. Tip: Use x402_session_start to pay once for a session and save on repeated calls.

NameTypeReqDescription
bodystringRequest body string (for POST/PUT/PATCH)
headersobjectAdditional request headers
max_payment_ethstringMaximum payment cap in ETH (e.g. "0.001")
methodstringHTTP method (default: GET)
skip_session_checkbooleanSkip session auto-detection and force a fresh x402 payment
timeout_msnumberTimeout in milliseconds (default: 30000)
urlstringyesURL to fetch (HTTP 402 responses are handled automatically)

No output schema declared.

No examples provided.

x402_session_end ~74

Explicitly close an x402 V2 session before it expires naturally. After calling this, x402_session_fetch will return an error for the closed session. Useful for security hygiene or when you know a session is no longer needed.

NameTypeReqDescription
session_idstringyesSession ID to close (from x402_session_start)

No output schema declared.

No examples provided.

x402_session_fetch ~179

Make an HTTP request within an established x402 V2 session — NO payment required. The session token (signed by your wallet) is automatically attached to the request. The server recognises your session and grants access without a new on-chain payment. Requires a session_id from x402_session_start. Returns an error if the session has expired (call x402_session_start again to renew).

NameTypeReqDescription
bodystringRequest body for POST/PUT/PATCH
headersobjectAdditional headers (session token is injected automatically)
methodstringHTTP method (default: GET)
session_idstringyesSession ID from x402_session_start
timeout_msnumberTimeout in milliseconds (default: 30000)
urlstringyesURL to fetch (must be covered by the session)

No output schema declared.

No examples provided.

x402_session_start ~285

Establish an x402 V2 payment session: make a SINGLE on-chain payment and receive a cryptographically signed session token. All subsequent calls to the same endpoint within the session lifetime use x402_session_fetch — no additional payments required. Agents pay once per session rather than once per API call. Session tokens are signed locally by your wallet key (non-custodial). Returns a session_id you pass to x402_session_fetch for all future calls.

NameTypeReqDescription
bodystringRequest body for POST/PUT/PATCH session-start requests
endpointstringyesBase URL to establish a session for (e.g., "https://api.example.com/v1")
headersobjectAdditional request headers
labelstringOptional label for this session (e.g., "Premium API session")
max_payment_ethstringMaximum ETH to pay for this session. Rejects if price exceeds this.
methodstringHTTP method for the initial request (default: GET)
scopestring"prefix": covers all paths under this URL (default). "exact": single URL only.
timeout_msnumberRequest timeout in milliseconds (default: 30000)
ttl_secondsnumberSession TTL in seconds (default: 3600 / 1 hour). Max: 30 days.

No output schema declared.

No examples provided.

x402_session_status ~77

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.

NameTypeReqDescription
session_idstringSpecific session ID to inspect. Omit to list all active sessions.

No output schema declared.

No examples provided.

Common questions

What is the io.github.up2itnow0822/agentpay MCP server?

io.github.up2itnow0822/agentpay is an MCP server listed in the public MCP registry as io.github.up2itnow0822/agentpay. Non-custodial x402 payment MCP server for AI agents. Wallets and payments on 17 chains. This page covers its npm package (agentpay-mcp).

Is the io.github.up2itnow0822/agentpay MCP server safe to use?

io.github.up2itnow0822/agentpay scores 78 out of 100 on VerifyMCP. We recorded 2 known advisories against it as of 20 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.github.up2itnow0822/agentpay MCP server expose?

io.github.up2itnow0822/agentpay exposes 11 tools: deploy_wallet, get_wallet_info, send_payment, check_spend_limit, queue_approval, and 6 more. Their descriptions and schemas cost roughly 1,544 tokens of context every time the server is loaded.

Is the io.github.up2itnow0822/agentpay MCP server still maintained?

io.github.up2itnow0822/agentpay is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the io.github.up2itnow0822/agentpay MCP server under?

io.github.up2itnow0822/agentpay declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.