프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. 리뷰와 계정 기능은 다음 단계에서 열려요.
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

x402 Doctor

제작자: Fizzl13버전 1.0.3i★ –i클라우드에서 실행
레지스트리 이름io.github.Fizzl13/x402-doctor

설치

개요

제작자가 쓴 설명(영어 원문)

Is this x402/MPP API safe to pay? $0.001 preflight, fixes, a $0.25 test purchase. Free quick check.

PopNx MCP의 세 기둥

이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.

할 수 있는 일

이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.

  • 연결 방식: 클라우드에서 실행
  • 전송 방식: Streamable HTTP
  • 카테고리: 클리닉 및 건강

설치

쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.

설치하기 전에

필요한 것

어떤 앱을 쓰세요?

위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.

웹, 데스크톱, 모바일의 Claude에서 쓸 수 있어요:

  1. Settings → Connectors 열기
  2. Add custom connector 누르기
  3. 아래 주소를 붙여 넣고 Add 누르기
  4. 로그인하라고 하면 제작자의 서비스에 로그인하기
SettingsConnectors1+ Add2https://…3
https://x402-doctor.fizzl.eu/mcp

터미널에서 이 명령어를 실행하세요

claude mcp add --transport http x402-doctor https://x402-doctor.fizzl.eu/mcp

Cursor에서 열기

또는 설정을 직접 복사하기

프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요

{
  "mcpServers": {
    "x402-doctor": {
      "url": "https://x402-doctor.fizzl.eu/mcp"
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

VS Code에서 열기

또는 설정을 직접 복사하기

프로젝트의 .vscode/mcp.json에 붙여 넣으세요

{
  "servers": {
    "x402-doctor": {
      "type": "http",
      "url": "https://x402-doctor.fizzl.eu/mcp"
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요:

  1. 웹에서 ChatGPT 열기 → Settings → Connectors (Apps)
  2. Create 또는 Add 누르기(일부 요금제는 먼저 Advanced에서 Developer mode를 켜야 해요)
  3. 아래 주소를 붙여 넣고 이름을 정한 뒤 저장하기
  4. 로그인하라고 하면 제작자의 서비스에 로그인하기
SettingsConnectors1+ Create2https://…3
https://x402-doctor.fizzl.eu/mcp

메뉴 이름은 요금제나 시기에 따라 조금 다를 수 있어요.

선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.

이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.

할 수 있는 일

도구 이름과 설명은 서버가 2026년 11월 8일에 알려 준 그대로예요. 우리가 아니라 제작자가 쓴 글이고, 일반 텍스트로만 보여 드려요.

  • x402_quick_check

    Free: does this x402 endpoint work for a paying agent? Returns pass, warn or fail with the number of problems and the top three. Limited to 10 calls per hour. For every check use x402_diagnose ($0.01); for code changes x402_fix ($0.05); before paying someone else's endpoint x402_

  • x402_payee_check

    Free: is every payTo of this x402 endpoint really its seller's? Per payment option, one outcome of the draft ERC "x402 Payee Verification for ERC-8004 Agents": verified-wallet (the payTo is the agent wallet registered in the ERC-8004 Identity Registry), verified-delegation (the a

  • check_payment_proof

    Free: after paying an x402 endpoint, pass the PAYMENT-RESPONSE header it returned (X-PAYMENT-RESPONSE in v1). Returns the transaction, network and payer it names, whether that transaction exists on-chain and succeeded, and which USDC moved from whom to whom, with an explorer link

  • concordium_badge_check

    Free: look up an agent in Concordium's Agent Registry (CIS-8004) by its badge, the CIS-2 token address an Agent Card carries, or by the longer Agent ID that Concordium's registry app shows. Returns whether the badge is valid (Active, the card at agent_uri hashes to the metadata_h

  • x402_trust_record

    Free: the daily track record of a paid x402 or MPP endpoint from the x402 Trust Index: on how many of the last 30 scanned days an agent could pay it, the latest verdict and reasons, price and networks. found: false when it is not in the index; add your own endpoint with x402_trus

  • x402_trust_add

    Free: add your own paid endpoint to the x402 Trust Index when no registry lists it yet (CDP Bazaar, Circle's Agent Marketplace, GoPlausible, XRPL AI Hub, nohumans.directory, PayAPI Market, MPP directory). x402 Doctor first checks that it answers 402 with a payment challenge (x402

  • verify_receipt

    Free: check the signed receipt that every paid x402 Doctor answer carries (diagnose, preflight, batch, deep, fix, delivery check; HTTP or MCP), for example to prove later which verdict you got before paying an endpoint. Pass the whole answer as response. Returns valid, the signer

  • x402_diagnose

    Paid ($0.01 via x402 in USDC on Base, Solana, Monad, Polygon, Arbitrum, Avalanche, Algorand or Stellar, or in RLUSD on the XRP Ledger): diagnose an x402 endpoint the way a paying agent would, without paying it: the 402 challenge format, every accepts[] option, the resource URL, S

  • x402_preflight

    Paid ($0.001 via x402 in USDC on Base, Solana, Monad, Polygon, Arbitrum, Avalanche, Algorand or Stellar, or in RLUSD on the XRP Ledger): call this before your agent pays an x402 endpoint. Returns go, caution or no_go, the recommended payment option, and why: payment would fail, t

  • x402_fix

    Paid ($0.05 via x402 in USDC on Base, Solana, Monad, Polygon, Arbitrum, Avalanche, Algorand or Stellar, or in RLUSD on the XRP Ledger): diagnoses your x402 endpoint, then returns per problem the concrete change as code for your stack (express, next, hono, node, python, generic),

  • x402_preflight_batch

    Paid ($0.005 via x402 in USDC on Base, Solana, Monad, Polygon, Arbitrum, Avalanche, Algorand or Stellar, or in RLUSD on the XRP Ledger): the pre-payment check for up to 10 x402 endpoints at once. Per endpoint go, caution or no_go, the recommended payment option and why, plus tota

  • x402_preflight_deep

    Paid ($0.01 via x402 in USDC on Base, Solana, Monad, Polygon, Arbitrum, Avalanche, Algorand or Stellar, or in RLUSD on the XRP Ledger): for expensive calls. The pre-payment verdict (go, caution or no_go) plus the full diagnosis, the 30-day history per day, how reliable the seller

  • x402_delivery_check

    Paid ($0.25 via x402 in USDC on Base, Solana, Monad, Polygon, Arbitrum, Avalanche, Algorand or Stellar, or in RLUSD on the XRP Ledger): not a reading but a purchase. x402 Doctor buys the endpoint once (at most $0.1, USDC on Base, from its own wallet) with the example input its li

  • x402_delivery_status

    Free: the status of a delivery check ordered with x402_delivery_check (or GET /api/v1/delivery-check): awaiting_payment, queued or done, and once done the result: paid_and_delivered, the outcome, the charge measured on chain and the transaction.

  • feedback

    Report a bug, a missing feature or anything else about this service, in a structured way. Free. A person reads every report; nothing is run or changed automatically.

기본 점검i

누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 8일 점검

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 GitHub 계정 Fizzl13 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요

  • … 아직 점검 안 함

    계속 관리되고 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • … 아직 점검 안 함

    라이선스 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • ✓ 통과

    엔드포인트 응답

    156ms 만에 응답(HTTP 200)

  • – 해당 없음

    OAuth로 로그인

    로그인 필요 없음

  • ✓ 통과

    도구 설명에 숨겨진 지시 없음

    도구 설명 15개를 읽었고, AI에게 보내는 숨겨진 지시는 없었어요

클리닉 및 건강 카테고리의 다른 서버와 비교i

  • 이 카테고리의 다른 서버 1028개 중 0%보다 스타가 많아요
  • 이 카테고리의 다른 서버 1028개 중 52%보다 최근에 레지스트리에 공개됐어요
  • 기본 점검 결과가 이 카테고리의 다른 서버 1028개 중 100%와 같거나 더 좋아요

레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.

자주 묻는 질문

x402 Doctor, 안전한가요?

해당하는 기본 점검 3개 중 3개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.

어떤 키나 코드가 필요한가요?

레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.

내 컴퓨터에서 실행되나요, 클라우드에서 실행되나요?

제작자의 클라우드에서 실행돼요. 설치 없이 인터넷으로 연결하지만, 보내는 내용은 제작자의 서버를 거쳐요.

아직 관리되고 있나요?

GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(1.0.3)은 27일 전 레지스트리에 올라왔어요.

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. URL로 연결되기 때문에, 원격 MCP 서버를 지원하는 앱(예: 개발자 모드의 ChatGPT)에서도 쓸 수 있어요.

대신 쓸 수 있는 건 뭐가 있나요?

같은 카테고리에는: Mirobody, FHIR MCP Server, Google Health MCP

대안

같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.

카드 보는 법:↓ 주간 다운로드i★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i

Mirobody

Lab results to LOINC codes and UCUM units, symptoms and diagnoses to ICPC-3. Offline, no API key.

제작자: thetahealth성장 중↓ 290/주★ 1.4천어제 업데이트

내 컴퓨터에서 실행✓ thetahealth.ai

FHIR MCP Server

MCP server providing seamless access to FHIR APIs for AI tools and healthcare applications

제작자: wso2성장 중↓ 823/주★ 13710일 전 업데이트

내 컴퓨터에서 실행

Google Health MCP

Privacy-first unofficial Google Health API v4 MCP server for health, sleep, activity, HR agents

제작자: davidmosiah성장 중↓ 1천/주★ 794개월 전 업데이트

내 컴퓨터에서 실행

제작자의 README

README 열기

제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.

x402 Doctor

· Live status ·

Diagnoses why an x402-payable endpoint's payment flow is broken, without needing a funded wallet.

Paste a URL (web app) or run x402-doctor (CLI, CI) and get back exactly which check failed, why, and how to fix it. Every check traces back to a real bug hit while shipping Ichimoku Signal and presign-guard.

▶ [Watch the 70-second explainer](https://x402-doctor.fizzl.eu/media/explainer.mp4) (with voice and captions): diagnosing a broken endpoint, the pre-payment check for agents, and the daily Trust Index.

▶ New: [the paid fix in 70 seconds](https://x402-doctor.fizzl.eu/media/fix.mp4): for $0.05 the Doctor hands you the medicine, the exact code that fixes each problem for your stack, in the browser or as JSON for agents.

What it checks

GroupCheckCatches
402 challengereturns-402No 402 for GET or POST (tries both, or --method). Behind Cloudflare or Amazon CloudFront the hint names the usual Monetization Gateway or AWS WAF Monetize rule misses. An endpoint that asks for x401 proof first is info, not a failure. A POST that answers 400 or 422 to an empty body checks its input before payment: Doctor sends the requestBody example from the seller's /openapi.json (or one built from its schema), or your own example body, and without one the check is a warning (needs input), not a failure
x401An x401 proof request (PROOF-REQUEST, x401.id) instead of a 402: the endpoint asks who is behind the agent before it asks for payment. Pass when the base64url payload names scheme x401, a version and credential requests (with their protocols, the token endpoint and the payment hint); a warning when agents can't read it; info for the older header name PROOF-REQUIRED
protocol-version, challenge-headerv1 vs v2, missing x402Version, challenge in the wrong header, undecodable header
envelope-body-mirrorHeader-only challenge (@x402/express sends {}), header and body disagreeing
MCP (payment per tool call)mcp-serverWhen the URL answers no 402 but speaks MCP (Streamable HTTP, JSON or SSE, with or without a session): initialize and tools/list without payment
mcp-paid-toolsNo tool description says it is paid (x402, USDC, a price), so agents can't tell
mcp-payment-requiredOne unpaid tools/call per paid-looking tool (at most 2; explicitly paid tools first — "Paid …" or a price / "via x402" in the title; never tools that call themselves free, destructive tools, or write tools unless explicitly paid). A free answer warns only for an explicitly paid tool, otherwise it is info: the x402 payment requirement in the tool result with isError: true (as @x402/mcp), or an HTTP 402 with PAYMENT-REQUIRED instead (payable over HTTP, not by @x402/mcp clients), a JSON-RPC error, a tool that answers for free, or example arguments refused before the payment step (publish one valid call as _meta.examples to avoid that). The requirement then gets the payment-option, settlement and wallet checks below
mcp-tool-poisoningHidden orders for the agent in tool descriptions (tool poisoning): hidden Unicode characters, blocks, reading ~/.ssh or .env, "do not tell the user", sending the maximum USDC (code rules), then TypeSafe Jev per tool (with TYPESAFE_API_KEY). A sure finding is warn, an unsure one info. Calibrated on 755 tools of 96 servers from the official MCP registry: no false alarm, and five made-up poisoned tools all caught
mcp-payment-text, mcp-payment-structuredThe requirement only in structuredContent (the x402 MCP transport requires JSON text in content[0]), or only as text (structuredContent preferred)
Payment optionsaccepts[i]-scheme, -networkMissing scheme; legacy names like base / solana:mainnet instead of CAIP-2
accepts[i]-payto, -assetInvalid EVM, Solana, XRPL or Algorand addresses (XRPL and Algorand with their checksums); a payTo that is a placeholder nobody holds a key for (the zero address, which USDC refuses, 0x…dEaD, or Solana's System Program or incinerator), also as an MPP recipient; asset that is not USDC, or USDC of another network (e.g. Base Sepolia USDC on Base); on Algorand an asset that is not an ASA id (USDC is ASA 31566704); on XRPL an XRP amount that isn't in drops, or "RLUSD" from another issuer than Ripple's
accepts[i]-amountDecimal dollar amounts ("0.02") instead of atomic units, zero or non-integer amounts
Stellar optionsx402 exact on Stellar (stellar:pubnet, @x402/stellar): payTo a G…, C… or M… address with a valid StrKey checksum, asset a Soroban token contract (USDC is CCW67TSZV3SSS2HXMBQ5JFGCKJNXKZM7UQUWUZPUTHXSTZLEO7SJMI75; "USDC" or a testnet contract fails), a positive integer amount (USDC has 7 decimals: 100000 is $0.01) and extra.areFeesSponsored: true, without which the client refuses
testnet-onlyEvery option is on a test network (Base Sepolia, Solana Devnet, …): the challenge can be valid, but agents paying with real USDC have no option
aws-test-modeA 402 served through Amazon CloudFront that offers only testnets (info): AWS WAF Monetize left in Test currency mode
accepts[i]-extraSolana without extra.feePayer (clients throw "feePayer is required"), EVM without the EIP-712 name/version
accepts[i]-batch, -batch-delay, -batch-deposit, batch-escrowThe batch-settlement scheme (one deposit into the x402 escrow, then a signed voucher per call, claimed in batches): extra.receiverAuthorizer missing (clients refuse), withdrawDelay missing or outside 900 s to 30 days, no EIP-712 domain for the EIP-3009 deposit, minDeposit not in atomic units, the escrow not deployed on the network; the deposit and withdraw delay buyers commit to
accepts[i]-auth-capture, -auth-escrow, -auth-deadlines, -auth-fees, -auth-domain, -auth-flow, auth-capture-escrowThe auth-capture scheme on EVM (the buyer signs once; the amount is held in the commerce-payments escrow until the seller captures it, with refunds until a deadline): no operator (extra.captureAuthorizer), an escrow that is neither commerce-payments v1.1 nor v1.0, a capture deadline that has passed or a refund deadline before it, fee bounds outside 0 <= min <= max <= 10000 bps or no fee recipient, no EIP-712 domain for the EIP-3009 authorization, a charge (paymentFlow authorization) without receiverAuthorizer, the escrow not deployed on the network; when the money is captured and until when it can be refunded
accepts[i]-cloudflare, -payto, -amount, cloudflare-registrationCloudflare pay per crawl (batch-settlement on network cloudflare:402): payTo must be merchant (Cloudflare settles, as merchant of record), the price is a currency code (USD) and an amount in cents, and the 402 carries the http-message-signatures extension with the URL where agents register their signing key. Paid by crawlers and agents registered with Cloudflare (Web Bot Auth), not by wallets: the preflight says caution (cloudflare_crawler_only), not no-go
accepts[i]-extra, circle-gateway, accepts-orderCircle Gateway options ("exact" signed for the Gateway Wallet, domain GatewayWalletBatched): extra.version other than "1" or no verifyingContract (Circle's client skips or can't sign it), a contract that isn't Circle's Gateway Wallet; who can pay them (a Gateway balance and Circle's client, not standard x402 clients or browser wallets; their 7-day timeout is right); a Gateway option listed before the standard one on the same network, which x402 clients would pick and fail
accepts[i]-schemeA scheme standard x402 clients don't pay (anything but exact, upto, batch-settlement and auth-capture; eip3009 gets the hint to use exact): what it requires is unknown, so a missing or unusual payTo, asset or amount is a warning, not a fail (a burn address stays a fail). The preflight never recommends such an option over a standard one; with only such options it says caution (custom_scheme_only)
accepts[i]-scheme, -network, -planNevermined plans (nvm:erc4337 on eip155: , nvm:card-delegation on stripe, braintree or visa): no payTo or amount is asked, since the price is in the plan; the network must be the settlement rail (not sandbox or live), planId a plan id and extra.agentId set. The preflight says caution (nevermined_plan): payable only with a Nevermined account and its SDK, not by standard x402 clients
Resourceresource-urlhttp:// resource URL on an https:// endpoint (Express behind a TLS proxy without trust proxy); a path instead of a full URL (judged against the endpoint, a warning)
resource-metadataMissing description / mimeType
Settlementsolana-payout-accountSolana payout wallet without a token account for the asset: every settlement fails on-chain
xrpl-payout-account, xrpl-payout-trustlineXRPL payout account that was never activated, has Deposit Authorization on, or requires a destination tag the option doesn't give; for a token like RLUSD, no (or a frozen) trust line to its issuer: every payment fails
accepts[i]-lightning, lightning-invoice, lightning-request-hashBitcoin Lightning (x402 exact on lnbtc, Sept 2026): payTo must be the node key, amount in millisatoshis, paymentFlow: "upfront" and a request binding (http:1/mcp:1); the BOLT11 invoice in extra.invoice is decoded and must match the option exactly (amount, bc/tb, expiry = maxTimeoutSeconds, signed by payTo, not expired) and commit to extra.requestHash, which for http:1 is recomputed for the doctor's own request
algorand-payout-optinAlgorand payout address that has not opted in to the asset (an account can only receive an ASA after opting in): every payment fails
stellar-payout-trustlineStellar payout account (G…) that was never funded, or has no (or an unauthorised) trustline to Circle's USDC: every payment fails. Read from Horizon; a contract (C…) needs none
solana-walletsSolana settled by PayAI, which rejects Phantom (Lighthouse instructions before the transfer)
Who can paywalletsPer wallet (MetaMask, Coinbase Wallet, Rabby, Phantom, Solflare, Backpack, Pera, Defly, Xaman, Crossmark, GemWallet, x402 agents, which also pay Stellar): the networks where payment works and where it fails, and why. Also in the JSON report as wallets
metamask-site-scanOnly with METAMASK_SCAN=on (off by default: the endpoint has no published API or licence). MetaMask's site scanner (Blockaid) blocks the domain (e.g. "wallet drainer"): MetaMask users can't open the site or pay in the browser. With how to report a false positive. Agents are not affected

| | evm-payto-eoa | EVM payout wallet is

앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요

PopNx에게 묻기