ProofMarket
AI agents pay people nearby to check the real world: photos and an answer, paid on Solana.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Local MCP server that signs x402 USDC payments (Solana, EVM) to buy PrivadoVPN access
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
SOLANA_PRIVATE_KEY, EVM_PRIVATE_KEY, PREFERRED_NETWORK, X402_BASE_URL, SOLANA_RPC_URL, EVM_RPC_URLค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"x402": {
"command": "npx",
"args": [
"-y",
"@privadovpn/x402-mcp"
],
"env": {
"SOLANA_PRIVATE_KEY": "ใส่ค่าของคุณ",
"EVM_PRIVATE_KEY": "ใส่ค่าของคุณ",
"PREFERRED_NETWORK": "ใส่ค่าของคุณ",
"X402_BASE_URL": "ใส่ค่าของคุณ",
"SOLANA_RPC_URL": "ใส่ค่าของคุณ",
"EVM_RPC_URL": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add x402 --env SOLANA_PRIVATE_KEY='ใส่ค่าของคุณ' --env EVM_PRIVATE_KEY='ใส่ค่าของคุณ' --env PREFERRED_NETWORK='ใส่ค่าของคุณ' --env X402_BASE_URL='ใส่ค่าของคุณ' --env SOLANA_RPC_URL='ใส่ค่าของคุณ' --env EVM_RPC_URL='ใส่ค่าของคุณ' -- npx -y @privadovpn/x402-mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"x402": {
"command": "npx",
"args": [
"-y",
"@privadovpn/x402-mcp"
],
"env": {
"SOLANA_PRIVATE_KEY": "ใส่ค่าของคุณ",
"EVM_PRIVATE_KEY": "ใส่ค่าของคุณ",
"PREFERRED_NETWORK": "ใส่ค่าของคุณ",
"X402_BASE_URL": "ใส่ค่าของคุณ",
"SOLANA_RPC_URL": "ใส่ค่าของคุณ",
"EVM_RPC_URL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"x402": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@privadovpn/x402-mcp"
],
"env": {
"SOLANA_PRIVATE_KEY": "ใส่ค่าของคุณ",
"EVM_PRIVATE_KEY": "ใส่ค่าของคุณ",
"PREFERRED_NETWORK": "ใส่ค่าของคุณ",
"X402_BASE_URL": "ใส่ค่าของคุณ",
"SOLANA_RPC_URL": "ใส่ค่าของคุณ",
"EVM_RPC_URL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
PREFERRED_NETWORK envX402_BASE_URL envSOLANA_RPC_URL envEVM_RPC_URL envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub privadovpn ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: SOLANA_PRIVATE_KEY, EVM_PRIVATE_KEY
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.1.1) เข้า registry 9 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี ProofMarket, Kura, xsolana
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
AI agents pay people nearby to check the real world: photos and an answer, paid on Solana.
Design, check, simulate and launch Solana game economies on loot, one shared program, no contract.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Pay-per-use VPN and SOCKS5 proxy access for AI agents, powered by x402 USDC payments. Local stdio MCP server that signs and broadcasts payments (Solana, EVM); every plan includes both an HTTP proxy and a SOCKS5 proxy.
No subscription required — pay only for the access you use, starting at $0.05. Plans and prices are never hardcoded in this client: list_vpn_catalog always fetches the live, authoritative list from the backend's .well-known/x402-payment manifest. As of 2026-10-21, the approved pricing lineup is:
| Plan ID | Display Name | Duration | Price |
|---|---|---|---|
PREMIUMM15 | Premium M15 | 15 minutes | $0.05 |
PREMIUMX1 | Premium X1 | 1 hour | $0.15 |
PREMIUMX3 | Premium X3 | 3 hours | $0.39 |
PREMIUMD1 | Premium D1 | 24 hours | $0.99 |
PREMIUMD7 | Premium D7 | 7 days | $2.99 |
PREMIUMD30 | Premium D30 | 30 days | $5.99 |
Every plan currently includes both an HTTP proxy and a SOCKS5 proxy (the backend's catalog lists this per plan as services: ["http_proxy", "socks5_proxy"]) — there is no separate SOCKS5-only plan to choose. Always call list_vpn_catalog before purchasing — it returns the current, authoritative set of plans, prices, and included services.
This server signs payments locally and never transmits your private key anywhere.
SOLANA_PRIVATE_KEY and EVM_PRIVATE_KEY are read from local process environment variables. They are used only to sign transactions in-process and are never sent over the network or written to disk by this server.X402_BASE_URL to fulfill a purchase.wallet_status returns configured addresses and network selection only. It never returns private keys or any secret material.~/.privado/ on your local machine and are never logged to stdout/stderr by this server.npx -y @privadovpn/x402-mcp
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": { "privadovpn-x402-mcp": { "command": "npx", "args": ["-y", "@privadovpn/x402-mcp"], "env": { "SOLANA_PRIVATE_KEY": " " } } } }
Claude Code:
claude mcp add privadovpn-x402-mcp -e SOLANA_PRIVATE_KEY=<your-base58-key> -- npx -y @privadovpn/x402-mcp
Cursor (.cursor/mcp.json):
{
"mcpServers": { "privadovpn-x402-mcp": { "command": "npx", "args": ["-y", "@privadovpn/x402-mcp"], "env": { "SOLANA_PRIVATE_KEY": " " } } } }
| Variable | Required | Default | Description |
|---|---|---|---|
SOLANA_PRIVATE_KEY | At least one of SOLANA_PRIVATE_KEY / EVM_PRIVATE_KEY | — | Base58-encoded Solana secret key (32 or 64 bytes) used to sign and pay in SPL USDC. |
EVM_PRIVATE_KEY | At least one of SOLANA_PRIVATE_KEY / EVM_PRIVATE_KEY | — | Hex-encoded EVM private key used to sign EIP-3009 USDC authorizations. |
PREFERRED_NETWORK | No | solana if SOLANA_PRIVATE_KEY is set, else evm | Which network to prefer when a quote offers both. Accepts solana or evm (eip155 is an accepted alias for evm). |
X402_BASE_URL | No | https://x402.privadovpn.com | Base URL of the x402 payment backend used for catalog, quote, and fulfillment requests. |
SOLANA_RPC_URL | No | https://api.mainnet-beta.solana.com | Solana RPC endpoint used to check balances and broadcast transactions. |
EVM_RPC_URL | Required for EVM payments | — | EVM RPC endpoint used to check balances and broadcast transactions. |
| Tool | Purpose |
|---|---|
wallet_status | Show configured wallet addresses and network selection. Never returns private keys. |
list_vpn_catalog | List purchasable VPN plans (including which services — HTTP proxy, SOCKS5 — each plan includes) and supported server country codes. |
buy_vpn | Preferred purchase flow: quote, sign and pay on-chain, fulfill, and save credentials in one call. |
fulfill_payment | Recovery only: exchange an already-broadcast payment for VPN credentials. |
sign_and_pay | Debug only: sign and broadcast payment without fulfilling. Prefer buy_vpn. |
Each GET /pay request creates a new invoice on the server. Because of this, buy_vpn must be called exactly once per purchase attempt — calling it again after funds have already been sent creates a second invoice and results in a duplicate charge.
If buy_vpn reports that the on-chain payment succeeded but fulfillment failed (for example, due to a network error when exchanging the payment for credentials), do not call buy_vpn again. Instead call fulfill_payment with the plan, invoice_no, payment_signature, and settlement_tx values from the error. This exchanges the already-completed payment for credentials without creating a new invoice or sending additional funds.
buy_vpn and sign_and_pay both accept a dry_run flag that performs balance checks without broadcasting a transaction. Note that a dry run still creates a real invoice on the server; it does not need to be followed by a real purchase, but it should not be repeated for the same purchase attempt.
A single purchase covers every service the plan includes — there is no separate checkout for SOCKS5. The vpn object returned by buy_vpn/fulfill_payment (and saved to ~/.privado/) contains:
| Field | Present when | Description |
|---|---|---|
vpn.port, vpn.connection_string | Always | HTTP proxy. connection_string is https://user:pass@host:port. |
vpn.socks5_port, vpn.socks5_connection_string | Plan's services includes socks5_proxy | SOCKS5 proxy, same username/password as the HTTP proxy. socks5_connection_string is socks5://user:pass@host:port. |
This client does not parse or special-case these fields — whatever the backend returns is passed straight through to the agent and to the saved credentials file, so field names always match what list_vpn_catalog/buy_vpn actually return at the time of purchase.
Example of using a purchased SOCKS5 proxy with curl, once you have vpn.socks5_connection_string:
curl -x "$SOCKS5_CONNECTION_STRING" https://ifconfig.me
This server never configures system-wide or OS-level proxy settings — it only returns credentials. Routing any traffic through them is a separate, explicit step you take.
sequenceDiagram
participant Agent participant MCP as Local MCP (this server) participant Backend as x402.privadovpn.com
Agent->>MCP: buy_vpn(plan, country) MCP->>Backend: GET /pay?plan=... Backend-->>MCP: 402 Payment Required + quote (accepts[]) MCP->>MCP: sign payment locally (private key never leaves process) MCP->>Backend: broadcast transaction on-chain Backend-->>MCP: transaction confirmed MCP->>Backend: GET /pay (PAYMENT-SIGNATURE, X-Settlement-Transaction) Backend-->>MCP: VPN credentials MCP-->>Agent: credentials + settlement_tx + credentials_path
Supported networks: Solana (SPL USDC transfer) and EVM (EIP-3009 transferWithAuthorization USDC).
https://x402.privadovpn.com/.well-known/x402-paymenthttps://x402.privadovpn.com/llms.txthttps://x402.privadovpn.com/mcpgit clone git@github.com:privadovpn/x402-mcp.git
cd x402-mcp npm install npm run build npm test
Run with the MCP Inspector:
npx @modelcontextprotocol/inspector node dist/index.js
MIT. See LICENSE.
mcp-name: io.github.privadovpn/x402-mcp