Announcing Beacon: Self-improving memory for coding agents
← All MCP servers
MCP server

io.github.x402node/x402-mcp

mcp:x402node/x402-mcp

Hundreds of x402-paid APIs as MCP tools, auto-discovered from Coinbase Bazaar. USDC on Base+Solana.

Verdict
Suspicious

Risky behavior the analysis could not rule out.

Analyzed Oct 26, 2026, 12:45 UTC at e5cd11c

Dispute security verdict

If you believe this verdict is incorrect, submit a dispute and we'll review it.

2
findings
critical
highest severity
2
threat classes
13
files scanned
379/379
checks satisfied
0
package advisories

Why this verdict

  • suspicious: finding mcp-server:.:mcp-server.js:69:TOOLPOISON
  • suspicious: finding mcp-server:.:package-lock.json:2:SUPPLY

Security findings 2

Tool poisoning

criticalContextual risklow confidence

Tool names, descriptions and input schemas are built at runtime from a remote Coinbase Bazaar discovery response (refreshed periodically), so remote data can set agent-visible tool metadata and the URLs that get auto-paid with the user's private key (capped by a max price); this dynamic remote tool surface is not stated in the declared claims.

const desc = (accept.description || resource.resource).slice(0, 500);
conceal:remotevector:code
Counter-argument considered

Tool descriptions and input schemas come from a remote feed with no sanitization beyond a 500-character truncation, and are exposed to the agent as tool metadata. The server declares nothing, so a malicious or compromised feed entry could carry injected instructions. Severity is low because the feed is filtered by the configured payTo address, but I found no evidence that kills the finding.

Supply chain

highContextual riskmedium confidence

The lockfile resolves the 'ox' dependency from a mutable pre-release preview URL (pkg.pr.new, commit-pinned build) instead of the npm registry, which bypasses normal registry provenance.

packages.node_modules/ox.resolved: https://pkg.pr.new/ox@386a3439fe1ce76d237930f8c6e6bb493746069a
conceal:remotevector:metadata
Counter-argument considered

The lockfile does resolve ox from pkg.pr.new, a non-registry host, and npm install will fetch it. The build is commit-pinned with an integrity hash, so 'mutable' overstates it, but no carve-out or mitigation clears a non-registry source, so the finding stands as a contextual risk.

Execution chain 500

What it calls, runs, installs, reads and writes, with the line that does it.

Environment variables 5

BASE_RPC_URL
X402_MAX_PRICE_USD
X402_PAY_TO
X402_PRIVATE_KEY
X402_REFRESH_MIN

GitHub repositories 15

chalk/ansi-styles
chalk/chalk
walletconnect/walletconnect-monorepo
walletconnect/walletconnect-monorepo
walletconnect/walletconnect-monorepo
walletconnect/walletconnect-monorepo
walletconnect/walletconnect-monorepo
walletconnect/walletconnect-monorepo
walletconnect/walletconnect-monorepo
walletconnect/walletconnect-monorepo
walletconnect/walletconnect-monorepo
x402node/x402-mcp
x402node/x402-mcp
x402node/x402-mcp
x402node/x402-mcp

Network calls 2

api.cdp.coinbase.com
mainnet.base.org
mcp-server.js:13 · url_literal

Packages 1

npm:x402node-mcp@1.0.3
server.json:13 · launch:server.json

URLs 477

https://api.cdp.coinbase.com/platform/v2/x402/discovery/merchant?payTo=$
https://docs.metamask.io/metamask-connect
https://docs.metamask.io/metamask-connect
https://docs.metamask.io/metamask-connect
https://dotenvx.com
https://feross.org/support
https://feross.org/support
https://feross.org/support
https://feross.org/support
https://github.com/chalk/ansi-styles?sponsor=1
https://github.com/chalk/chalk?sponsor=1
https://github.com/sponsors/brc-dd
https://github.com/sponsors/broofa
https://github.com/sponsors/broofa
https://github.com/sponsors/broofa
https://github.com/sponsors/broofa
https://github.com/sponsors/broofa
https://github.com/sponsors/colinhacks
https://github.com/sponsors/colinhacks
https://github.com/sponsors/colinhacks
https://github.com/sponsors/colinhacks
https://github.com/sponsors/colinhacks
https://github.com/sponsors/colinhacks
https://github.com/sponsors/colinhacks
https://github.com/sponsors/colinhacks
https://github.com/sponsors/colinhacks
https://github.com/sponsors/ctavan
https://github.com/sponsors/ctavan
https://github.com/sponsors/ctavan
https://github.com/sponsors/ctavan
https://github.com/sponsors/ctavan
https://github.com/sponsors/epoberezkin
https://github.com/sponsors/express-rate-limit
https://github.com/sponsors/fastify
https://github.com/sponsors/feross
https://github.com/sponsors/feross
https://github.com/sponsors/feross
https://github.com/sponsors/feross
https://github.com/sponsors/jonschlinkert
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/ljharb
https://github.com/sponsors/panva
https://github.com/sponsors/RubenVerborgh
https://github.com/sponsors/sindresorhus
https://github.com/sponsors/sindresorhus
https://github.com/sponsors/sindresorhus
https://github.com/sponsors/sindresorhus
https://github.com/sponsors/sindresorhus
https://github.com/sponsors/sindresorhus
https://github.com/sponsors/tannerlinsley
https://github.com/sponsors/tannerlinsley
https://github.com/sponsors/wagmi-dev
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/sponsors/wevm
https://github.com/WalletConnect/walletconnect-monorepo/releases
https://github.com/WalletConnect/walletconnect-monorepo/releases
https://github.com/WalletConnect/walletconnect-monorepo/releases
https://github.com/WalletConnect/walletconnect-monorepo/releases
https://github.com/WalletConnect/walletconnect-monorepo/releases
https://github.com/WalletConnect/walletconnect-monorepo/releases
https://github.com/WalletConnect/walletconnect-monorepo/releases
https://github.com/WalletConnect/walletconnect-monorepo/releases
https://github.com/WalletConnect/walletconnect-monorepo/releases
https://github.com/x402node/x402-mcp
https://github.com/x402node/x402-mcp.git
https://github.com/x402node/x402-mcp/issues
https://github.com/x402node/x402-mcp#readme
https://mainnet.base.org
https://mainnet.base.org
https://mainnet.base.org
https://mainnet.base.org
https://opencollective.com/bigjs
https://opencollective.com/date-fns
https://opencollective.com/express
https://opencollective.com/express
https://opencollective.com/express
https://opencollective.com/express
https://opencollective.com/express
https://opencollective.com/express
https://opencollective.com/express
https://opencollective.com/express
https://opencollective.com/express
https://opencollective.com/express
https://opencollective.com/express
https://opencollective.com/express
https://opencollective.com/express
https://opencollective.com/fastify
https://opencollective.com/preact
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://paulmillr.com/funding/
https://pkg.pr.new/ox@386a3439fe1ce76d237930f8c6e6bb493746069a
https://pkg.pr.new/ox@386a3439fe1ce76d237930f8c6e6bb493746069a
https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.11.1.tgz
https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.2.tgz
https://registry.npmjs.org/@base-org/account/-/account-2.4.0.tgz
https://registry.npmjs.org/@coinbase/cdp-sdk/-/cdp-sdk-1.50.0.tgz
https://registry.npmjs.org/@coinbase/wallet-sdk/-/wallet-sdk-3.9.3.tgz
https://registry.npmjs.org/@coinbase/wallet-sdk/-/wallet-sdk-4.3.6.tgz
https://registry.npmjs.org/@ecies/ciphers/-/ciphers-0.2.6.tgz
https://registry.npmjs.org/@ethereumjs/common/-/common-3.2.0.tgz
https://registry.npmjs.org/@ethereumjs/rlp/-/rlp-4.0.1.tgz
https://registry.npmjs.org/@ethereumjs/tx/-/tx-4.2.0.tgz
https://registry.npmjs.org/@ethereumjs/util/-/util-8.1.0.tgz
https://registry.npmjs.org/@gemini-wallet/core/-/core-0.3.2.tgz
https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.14.tgz
https://registry.npmjs.org/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.6.0.tgz
https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-2.1.2.tgz
https://registry.npmjs.org/@metamask/eth-json-rpc-provider/-/eth-json-rpc-provider-1.0.1.tgz
https://registry.npmjs.org/@metamask/json-rpc-engine/-/json-rpc-engine-7.3.3.tgz
https://registry.npmjs.org/@metamask/json-rpc-engine/-/json-rpc-engine-8.0.2.tgz
https://registry.npmjs.org/@metamask/json-rpc-middleware-stream/-/json-rpc-middleware-stream-7.0.2.tgz
https://registry.npmjs.org/@metamask/object-multiplex/-/object-multiplex-2.1.0.tgz
https://registry.npmjs.org/@metamask/onboarding/-/onboarding-1.0.1.tgz
https://registry.npmjs.org/@metamask/providers/-/providers-16.1.0.tgz
https://registry.npmjs.org/@metamask/rpc-errors/-/rpc-errors-6.4.0.tgz
https://registry.npmjs.org/@metamask/rpc-errors/-/rpc-errors-6.4.0.tgz
https://registry.npmjs.org/@metamask/rpc-errors/-/rpc-errors-6.4.0.tgz
https://registry.npmjs.org/@metamask/rpc-errors/-/rpc-errors-7.0.2.tgz
https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz
https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-3.1.2.tgz
https://registry.npmjs.org/@metamask/sdk-analytics/-/sdk-analytics-0.0.5.tgz
https://registry.npmjs.org/@metamask/sdk-communication-layer/-/sdk-communication-layer-0.33.1.tgz
https://registry.npmjs.org/@metamask/sdk-install-modal-web/-/sdk-install-modal-web-0.32.1.tgz
https://registry.npmjs.org/@metamask/sdk/-/sdk-0.33.1.tgz
https://registry.npmjs.org/@metamask/superstruct/-/superstruct-3.2.1.tgz
https://registry.npmjs.org/@metamask/utils/-/utils-11.11.0.tgz
https://registry.npmjs.org/@metamask/utils/-/utils-5.0.2.tgz
https://registry.npmjs.org/@metamask/utils/-/utils-5.0.2.tgz
https://registry.npmjs.org/@metamask/utils/-/utils-8.5.0.tgz
https://registry.npmjs.org/@metamask/utils/-/utils-8.5.0.tgz
https://registry.npmjs.org/@metamask/utils/-/utils-8.5.0.tgz
https://registry.npmjs.org/@metamask/utils/-/utils-8.5.0.tgz
https://registry.npmjs.org/@metamask/utils/-/utils-9.3.0.tgz
https://registry.npmjs.org/@metamask/utils/-/utils-9.3.0.tgz
https://registry.npmjs.org/@metamask/utils/-/utils-9.3.0.tgz
https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.29.0.tgz
https://registry.npmjs.org/@noble/ciphers/-/ciphers-1.2.1.tgz
https://registry.npmjs.org/@noble/ciphers/-/ciphers-1.2.1.tgz
https://registry.npmjs.org/@noble/ciphers/-/ciphers-1.2.1.tgz
https://registry.npmjs.org/@noble/ciphers/-/ciphers-1.2.1.tgz
https://registry.npmjs.org/@noble/ciphers/-/ciphers-1.3.0.tgz
https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz
https://registry.npmjs.org/@noble/curves/-/curves-1.8.0.tgz
https://registry.npmjs.org/@noble/curves/-/curves-1.8.1.tgz
https://registry.npmjs.org/@noble/curves/-/curves-1.8.1.tgz
https://registry.npmjs.org/@noble/curves/-/curves-1.8.1.tgz
https://registry.npmjs.org/@noble/curves/-/curves-1.8.1.tgz
https://registry.npmjs.org/@noble/curves/-/curves-1.9.1.tgz
https://registry.npmjs.org/@noble/curves/-/curves-1.9.7.tgz
https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz
https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz
https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz
https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.0.tgz
https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.1.tgz
https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.1.tgz
https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.1.tgz
https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.1.tgz
https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz
https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz
https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz
https://registry.npmjs.org/@paulmillr/qr/-/qr-0.2.1.tgz
https://registry.npmjs.org/@reown/appkit-common/-/appkit-common-1.7.8.tgz
https://registry.npmjs.org/@reown/appkit-controllers/-/appkit-controllers-1.7.8.tgz
https://registry.npmjs.org/@reown/appkit-pay/-/appkit-pay-1.7.8.tgz
https://registry.npmjs.org/@reown/appkit-polyfills/-/appkit-polyfills-1.7.8.tgz
https://registry.npmjs.org/@reown/appkit-scaffold-ui/-/appkit-scaffold-ui-1.7.8.tgz
https://registry.npmjs.org/@reown/appkit-ui/-/appkit-ui-1.7.8.tgz
https://registry.npmjs.org/@reown/appkit-utils/-/appkit-utils-1.7.8.tgz
https://registry.npmjs.org/@reown/appkit-wallet/-/appkit-wallet-1.7.8.tgz
https://registry.npmjs.org/@reown/appkit/-/appkit-1.7.8.tgz
https://registry.npmjs.org/@safe-global/safe-apps-provider/-/safe-apps-provider-0.18.6.tgz
https://registry.npmjs.org/@safe-global/safe-apps-sdk/-/safe-apps-sdk-9.1.0.tgz
https://registry.npmjs.org/@safe-global/safe-gateway-typescript-sdk/-/safe-gateway-typescript-sdk-3.23.1.tgz
https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz
https://registry.npmjs.org/@scure/base/-/base-1.2.6.tgz
https://registry.npmjs.org/@scure/bip32/-/bip32-1.4.0.tgz
https://registry.npmjs.org/@scure/bip32/-/bip32-1.6.2.tgz
https://registry.npmjs.org/@scure/bip32/-/bip32-1.6.2.tgz
https://registry.npmjs.org/@scure/bip32/-/bip32-1.6.2.tgz
https://registry.npmjs.org/@scure/bip32/-/bip32-1.6.2.tgz
https://registry.npmjs.org/@scure/bip32/-/bip32-1.7.0.tgz
https://registry.npmjs.org/@scure/bip39/-/bip39-1.3.0.tgz
https://registry.npmjs.org/@scure/bip39/-/bip39-1.5.4.tgz
https://registry.npmjs.org/@scure/bip39/-/bip39-1.5.4.tgz
https://registry.npmjs.org/@scure/bip39/-/bip39-1.5.4.tgz
https://registry.npmjs.org/@scure/bip39/-/bip39-1.5.4.tgz
https://registry.npmjs.org/@scure/bip39/-/bip39-1.6.0.tgz
https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz
https://registry.npmjs.org/@solana-program/compute-budget/-/compute-budget-0.11.0.tgz
https://registry.npmjs.org/@solana-program/system/-/system-0.10.0.tgz
https://registry.npmjs.org/@solana-program/token-2022/-/token-2022-0.6.1.tgz
https://registry.npmjs.org/@solana-program/token/-/token-0.9.0.tgz
https://registry.npmjs.org/@solana/accounts/-/accounts-5.5.1.tgz
https://registry.npmjs.org/@solana/addresses/-/addresses-5.5.1.tgz
https://registry.npmjs.org/@solana/assertions/-/assertions-5.5.1.tgz
https://registry.npmjs.org/@solana/codecs-core/-/codecs-core-5.5.1.tgz
https://registry.npmjs.org/@solana/codecs-data-structures/-/codecs-data-structures-5.5.1.tgz
https://registry.npmjs.org/@solana/codecs-numbers/-/codecs-numbers-5.5.1.tgz
https://registry.npmjs.org/@solana/codecs-strings/-/codecs-strings-5.5.1.tgz
https://registry.npmjs.org/@solana/codecs/-/codecs-5.5.1.tgz
https://registry.npmjs.org/@solana/errors/-/errors-5.5.1.tgz
https://registry.npmjs.org/@solana/fast-stable-stringify/-/fast-stable-stringify-5.5.1.tgz
https://registry.npmjs.org/@solana/functional/-/functional-5.5.1.tgz
https://registry.npmjs.org/@solana/instruction-plans/-/instruction-plans-5.5.1.tgz
https://registry.npmjs.org/@solana/instructions/-/instructions-5.5.1.tgz
https://registry.npmjs.org/@solana/keys/-/keys-5.5.1.tgz
https://registry.npmjs.org/@solana/kit/-/kit-5.5.1.tgz
https://registry.npmjs.org/@solana/nominal-types/-/nominal-types-5.5.1.tgz
https://registry.npmjs.org/@solana/offchain-messages/-/offchain-messages-5.5.1.tgz
https://registry.npmjs.org/@solana/options/-/options-5.5.1.tgz
https://registry.npmjs.org/@solana/plugin-core/-/plugin-core-5.5.1.tgz
https://registry.npmjs.org/@solana/programs/-/programs-5.5.1.tgz
https://registry.npmjs.org/@solana/promises/-/promises-5.5.1.tgz
https://registry.npmjs.org/@solana/rpc-api/-/rpc-api-5.5.1.tgz
https://registry.npmjs.org/@solana/rpc-parsed-types/-/rpc-parsed-types-5.5.1.tgz
https://registry.npmjs.org/@solana/rpc-spec-types/-/rpc-spec-types-5.5.1.tgz
https://registry.npmjs.org/@solana/rpc-spec/-/rpc-spec-5.5.1.tgz
https://registry.npmjs.org/@solana/rpc-subscriptions-api/-/rpc-subscriptions-api-5.5.1.tgz
https://registry.npmjs.org/@solana/rpc-subscriptions-channel-websocket/-/rpc-subscriptions-channel-websocket-5.5.1.tgz
https://registry.npmjs.org/@solana/rpc-subscriptions-spec/-/rpc-subscriptions-spec-5.5.1.tgz
https://registry.npmjs.org/@solana/rpc-subscriptions/-/rpc-subscriptions-5.5.1.tgz
https://registry.npmjs.org/@solana/rpc-transformers/-/rpc-transformers-5.5.1.tgz
https://registry.npmjs.org/@solana/rpc-transport-http/-/rpc-transport-http-5.5.1.tgz
https://registry.npmjs.org/@solana/rpc-types/-/rpc-types-5.5.1.tgz
https://registry.npmjs.org/@solana/rpc/-/rpc-5.5.1.tgz
https://registry.npmjs.org/@solana/signers/-/signers-5.5.1.tgz
https://registry.npmjs.org/@solana/subscribable/-/subscribable-5.5.1.tgz
https://registry.npmjs.org/@solana/sysvars/-/sysvars-5.5.1.tgz
https://registry.npmjs.org/@solana/transaction-confirmation/-/transaction-confirmation-5.5.1.tgz
https://registry.npmjs.org/@solana/transaction-messages/-/transaction-messages-5.5.1.tgz
https://registry.npmjs.org/@solana/transactions/-/transactions-5.5.1.tgz
https://registry.npmjs.org/@solana/wallet-standard-features/-/wallet-standard-features-1.3.0.tgz
https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.100.14.tgz
https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.100.14.tgz
https://registry.npmjs.org/@types/debug/-/debug-4.1.13.tgz
https://registry.npmjs.org/@types/lodash/-/lodash-4.17.24.tgz
https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz
https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz
https://registry.npmjs.org/@wagmi/connectors/-/connectors-6.2.0.tgz
https://registry.npmjs.org/@wagmi/core/-/core-2.22.1.tgz
https://registry.npmjs.org/@wallet-standard/app/-/app-1.1.0.tgz
https://registry.npmjs.org/@wallet-standard/base/-/base-1.1.0.tgz
https://registry.npmjs.org/@wallet-standard/features/-/features-1.1.0.tgz
https://registry.npmjs.org/@walletconnect/core/-/core-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/core/-/core-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/core/-/core-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/core/-/core-2.21.1.tgz
https://registry.npmjs.org/@walletconnect/environment/-/environment-1.0.1.tgz
https://registry.npmjs.org/@walletconnect/ethereum-provider/-/ethereum-provider-2.21.1.tgz
https://registry.npmjs.org/@walletconnect/events/-/events-1.0.1.tgz
https://registry.npmjs.org/@walletconnect/heartbeat/-/heartbeat-1.2.2.tgz
https://registry.npmjs.org/@walletconnect/jsonrpc-http-connection/-/jsonrpc-http-connection-1.0.8.tgz
https://registry.npmjs.org/@walletconnect/jsonrpc-provider/-/jsonrpc-provider-1.0.14.tgz
https://registry.npmjs.org/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.4.tgz
https://registry.npmjs.org/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.8.tgz
https://registry.npmjs.org/@walletconnect/jsonrpc-ws-connection/-/jsonrpc-ws-connection-1.0.16.tgz
https://registry.npmjs.org/@walletconnect/keyvaluestorage/-/keyvaluestorage-1.1.1.tgz
https://registry.npmjs.org/@walletconnect/logger/-/logger-2.1.2.tgz
https://registry.npmjs.org/@walletconnect/relay-api/-/relay-api-1.0.11.tgz
https://registry.npmjs.org/@walletconnect/relay-auth/-/relay-auth-1.1.0.tgz
https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.2.tgz
https://registry.npmjs.org/@walletconnect/sign-client/-/sign-client-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/sign-client/-/sign-client-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/sign-client/-/sign-client-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/sign-client/-/sign-client-2.21.1.tgz
https://registry.npmjs.org/@walletconnect/time/-/time-1.0.2.tgz
https://registry.npmjs.org/@walletconnect/types/-/types-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/types/-/types-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/types/-/types-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/types/-/types-2.21.1.tgz
https://registry.npmjs.org/@walletconnect/universal-provider/-/universal-provider-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/universal-provider/-/universal-provider-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/universal-provider/-/universal-provider-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/universal-provider/-/universal-provider-2.21.1.tgz
https://registry.npmjs.org/@walletconnect/utils/-/utils-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/utils/-/utils-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/utils/-/utils-2.21.0.tgz
https://registry.npmjs.org/@walletconnect/utils/-/utils-2.21.1.tgz
https://registry.npmjs.org/@walletconnect/window-getters/-/window-getters-1.0.1.tgz
https://registry.npmjs.org/@walletconnect/window-metadata/-/window-metadata-1.0.1.tgz
https://registry.npmjs.org/abitype/-/abitype-1.0.6.tgz
https://registry.npmjs.org/abitype/-/abitype-1.0.8.tgz
https://registry.npmjs.org/abitype/-/abitype-1.0.8.tgz
https://registry.npmjs.org/abitype/-/abitype-1.0.8.tgz
https://registry.npmjs.org/abitype/-/abitype-1.0.8.tgz
https://registry.npmjs.org/abitype/-/abitype-1.2.3.tgz
https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz
https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz
https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz
https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz
https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz
https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz
https://registry.npmjs.org/async-mutex/-/async-mutex-0.2.6.tgz
https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz
https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz
https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz
https://registry.npmjs.org/axios-retry/-/axios-retry-4.5.0.tgz
https://registry.npmjs.org/axios/-/axios-1.16.0.tgz
https://registry.npmjs.org/base-x/-/base-x-5.0.1.tgz
https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz
https://registry.npmjs.org/big.js/-/big.js-6.2.2.tgz
https://registry.npmjs.org/bn.js/-/bn.js-5.2.3.tgz
https://registry.npmjs.org/body-parser/-/body-parser-2.2.2.tgz
https://registry.npmjs.org/bowser/-/bowser-2.14.1.tgz
https://registry.npmjs.org/bs58/-/bs58-6.0.0.tgz
https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz
https://registry.npmjs.org/bufferutil/-/bufferutil-4.1.0.tgz
https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz
https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz
https://registry.npmjs.org/call-bind/-/call-bind-1.0.9.tgz
https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz
https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz
https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz
https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz
https://registry.npmjs.org/chokidar/-/chokidar-5.0.0.tgz
https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz
https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz
https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz
https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz
https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz
https://registry.npmjs.org/commander/-/commander-14.0.2.tgz
https://registry.npmjs.org/content-disposition/-/content-disposition-1.1.0.tgz
https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz
https://registry.npmjs.org/content-type/-/content-type-2.0.0.tgz
https://registry.npmjs.org/cookie-es/-/cookie-es-1.2.3.tgz
https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz
https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz
https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz
https://registry.npmjs.org/cors/-/cors-2.8.6.tgz
https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz
https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.2.0.tgz
https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.1.0.tgz
https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz
https://registry.npmjs.org/crossws/-/crossws-0.3.5.tgz
https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz
https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz
https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz
https://registry.npmjs.org/debug/-/debug-4.3.4.tgz
https://registry.npmjs.org/debug/-/debug-4.3.4.tgz
https://registry.npmjs.org/debug/-/debug-4.4.3.tgz
https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz
https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz
https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz
https://registry.npmjs.org/defu/-/defu-6.1.7.tgz
https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz
https://registry.npmjs.org/depd/-/depd-2.0.0.tgz
https://registry.npmjs.org/derive-valtio/-/derive-valtio-0.1.0.tgz
https://registry.npmjs.org/destr/-/destr-2.0.5.tgz
https://registry.npmjs.org/detect-browser/-/detect-browser-5.3.0.tgz
https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.3.tgz
https://registry.npmjs.org/dotenv/-/dotenv-17.4.2.tgz
https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz
https://registry.npmjs.org/duplexify/-/duplexify-4.1.3.tgz
https://registry.npmjs.org/eciesjs/-/eciesjs-0.4.18.tgz
https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz
https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz
https://registry.npmjs.org/encode-utf8/-/encode-utf8-1.0.3.tgz
https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz
https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz
https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.6.5.tgz
https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.3.tgz
https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz
https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz
https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz
https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz
https://registry.npmjs.org/es-toolkit/-/es-toolkit-1.33.0.tgz
https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz
https://registry.npmjs.org/etag/-/etag-1.8.1.tgz
https://registry.npmjs.org/eth-block-tracker/-/eth-block-tracker-7.1.0.tgz
https://registry.npmjs.org/eth-json-rpc-filters/-/eth-json-rpc-filters-6.0.1.tgz
https://registry.npmjs.org/eth-query/-/eth-query-2.1.2.tgz
https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-4.0.3.tgz
https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz
https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.9.tgz
https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz
https://registry.npmjs.org/events/-/events-3.3.0.tgz
https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.0.8.tgz
https://registry.npmjs.org/eventsource/-/eventsource-3.0.7.tgz
https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-8.5.2.tgz
https://registry.npmjs.org/express/-/express-5.2.1.tgz
https://registry.npmjs.org/extension-port-stream/-/extension-port-stream-3.0.0.tgz
https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz
https://registry.npmjs.org/fast-redact/-/fast-redact-3.5.0.tgz
https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz
https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.2.tgz
https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz
https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.1.tgz
https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz
https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.0.tgz
https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz

Linked repositories 3

GitHub repositories it links to or installs from, and whether their names can be taken over.

chalk/ansi-styles
url · not tracked
chalk/chalk
url · not tracked
Refuted findings 1

Candidates the review stage examined and rejected, kept for transparency.

Credential access

criticalRefutedlow confidence

The server signs USDC payments with the user's X402_PRIVATE_KEY via payFetch to resource URLs taken from the remote discovery feed, with no per-call user confirmation, so a compromised or malicious feed entry can spend funds up to the price cap.

resp = await payFetch(url.toString());
Why it was refuted

Paying for x402 resources with the user's own wallet key is the server's core purpose, and the key is the user's own credential for that service. Spending is capped per call by a pre-check against MAX_PRICE_USD, and the payment wrapper is also built with the same cap. The key is not sent anywhere beyond signing payments, so the harm gate fails.

Coverage gaps 2

Parts of the artifact the static analysis could not fully examine.

dynamic_metadata line 103: tools list returned by ListToolsRequestSchema handler is computed
mcp-server.js
no_tools_extracted MCP server target with no statically extractable tools/prompts/resources
package.json