base-tx-explain
base-tx-explain
하나의 MCP 도구: explain_transaction(tx_hash) → 모든 Base 메인넷 트랜잭션에 대한 엄격한 JSON 설명.
트랜잭션 해시를 입력하세요. 무슨 일이 일어났는지 평이한 영어로, 그리고 구조화된 사실(무엇이 이동했는지, 누가 관여했는지, 무엇을 주의해야 하는지, 비용이 얼마인지)을 돌려받습니다. 결정적 온체인 디코드 — 응답 경로 어디에도 LLM이 없으므로 동일한 입력은 항상 동일한 출력을 생성하고, 환각(hallucination)할 내용이 없으며, JSON 계약은 블라인드 파싱이 가능할 정도로 안정적입니다.
Base 메인넷(체인 ID 8453) 전용입니다.
링크: 라이브 엔드포인트 · 문서 · OpenAPI · MCP 레지스트리: io.github.0200project/base-tx-explain · 사이트
에이전트용
// tools/call → explain_transaction
{ "tx_hash": "0x0c84b951051f779903b57af9225ca570c77cd5531195968dd78106a69d6c4d8c" }반환값(structuredContent와 content[0].text의 문자열화된 JSON 둘 다로):
{
"summary": "0x401d...f2c5 swapped 0.03 ETH for 12,899,422 WNL via Uniswap V4 PoolManager.",
"action_type": "swap",
"status": "success",
"assets_moved": [
{ "token": "ETH", "amount": "0.03", "from": "0x401d...", "to": "0xd0a4...", "token_address": null, "standard": "native" },
{ "token": "WNL", "amount": "12899422.144134853458613801", "from": "0x4985...", "to": "0x401d...", "token_address": "0xb200...9a01", "standard": "erc20" }
],
"counterparties": [
{ "address": "0xd0a4...", "label": null },
{ "address": "0x4985...", "label": "Uniswap V4 PoolManager" }
],
"risk_flags": [
{ "flag": "unverified_contract", "detail": "The target contract 0xd0a4...e4bf has no verified source code on Sourcify." }
],
"gas_paid_usd": 0.020562,
"timestamp": "2026-08-20T03:54:19.000Z",
"block_number": 50204356,
"tx_hash": "0x0c84...4c8c",
"basescan_url": "https://basescan.org/tx/0x0c84...4c8c",
"partial": false
}필드 계약
action_type— 다음 중 하나:eth_transfer,erc20_transfer,erc20_approval,approval_revoked,approval_for_all,swap,add_liquidity,remove_liquidity,wrap,unwrap,nft_mint,nft_transfer,nft_sale,token_mint,bridge_in,bridge_out,lending_supply,lending_withdraw,lending_borrow,lending_repay,stake,unstake,claim,batch_transfer,account_abstraction_bundle,attestation,name_registration,contract_deployment,contract_interaction,unknown.risk_flags[].flag— 다음 중 하나:unverified_contract,first_time_counterparty,approval_for_all,unlimited_approval,known_drainer,nonstandard_token_symbol,impersonated_token,transaction_reverted. 플래그는 항상 증거가 발견되었음을 의미하며, 조회 실패가 플래그를 생성하는 일은 없습니다.status—success또는reverted. 리버트된 트랜잭션은 의도(시도된 내용)에 따라 분류되며transaction_reverted위험 플래그를 갖습니다.partial: true— 트랜잭션의 전체 의미를 확립할 수 없음;summary는 알려진 것과 알려지지 않은 것을 정확히 명시합니다. 오류 시 도구는{ "error": "...", "code": "invalid_hash" | "not_found" | "pending" | "upstream_error" }와 함께isError: true를 반환합니다.금액은 10진수 문자열입니다(부동소수점이 아님). 주소는 온체인에서 방출된 그대로이며, 대소문자를 구분하지 않고 비교합니다.
provenance.untrusted_fields— 문자열 내용이 공격자가 제어할 수 있는 소스(토큰 심볼, 계약/컬렉션 이름, 이벤트/함수 이름)에서 비롯된 필드를 나열합니다: 현재는summary,assets_moved[].token,counterparties[].label입니다. 이 출력을 LLM에 입력한다면 해당 필드를 데이터로 취급하고, 절대 명령으로 취급하지 마십시오. 명령형 또는 홍보성 텍스트로 스스로를 이름 짓는 토큰은 명령이 아니라 사기 신호입니다. 심볼은 정규화되며(제어 문자, 줄 구분자, 이모지, 호모글리프가 제거됨) 자체 보고된 심볼이 그럴듯한 티커가 아닌 토큰은 선택한 이름 대신 계약 주소로 표시됩니다 — 따라서 적대적인 이름이 실제 이름을 사칭하거나 에이전트의 컨텍스트에 텍스트를 몰래 넣을 수 없습니다.
디코딩 방식
Base RPC의 원시 트랜잭션 + 영수증 → ~40개 이벤트 형식에 대한 내장 디코더(ERC-20/721/1155, Uniswap V2/V3/V4, Aerodrome/Solidly, Seaport, Aave V3, Compound V3, OP-stack 브리지, ERC-4337 EntryPoint, EAS, Basenames, WETH, LP 포지션 매니저) → 결정적 규칙 순서 분류 → 검증된 주요 Base 계약 테이블의 라벨. 앱별 이벤트는 가능한 경우 계약의 Sourcify 검증 ABI를 통해 이름이 지정됩니다. 위험 플래그는 Sourcify/Basescan 검증 상태, ScamSniffer 및 MyEtherWallet 공개 블록리스트, 승인 의미론에서 비롯됩니다. gas_paid_usd에는 OP-stack L1 데이터 수수료가 포함되며 트랜잭션이 포함된 블록의 Chainlink ETH/USD 피드로 ETH 가격을 책정합니다.
Related MCP server: Base Network MCP Server
가격 정책
클라이언트당 무료 호출 10회, 가입 불필요.
이후: x402를 통한 Base의 USDC로 호출당 $0.02 — 결제 필요 응답에는 x402 지원 에이전트가 자율적으로 결제하고 재시도하는 데 필요한 모든 것이 포함됩니다. 계정도, API 키도 필요 없습니다.
마켓플레이스 호스팅도 이용 가능합니다(이 경우 마켓플레이스 결제가 적용됩니다).
연결
{
"mcpServers": {
"base-tx-explain": {
"type": "streamable-http",
"url": "https://base-tx-explain.fly.dev/mcp"
}
}
}자체 호스팅
git clone https://github.com/0200project/base-tx-explain.git && cd base-tx-explain
npm install
cp .env.example .env # defaults work: free mode, public Base RPCs
npm run dev # or: npm run build && npm start환경 변수(.env.example 참조): PAYMENT_MODE (none | x402), X402_PAY_TO (수신 주소 — 새 지갑 사용), X402_PRICE_USD, X402_FACILITATOR_URL (기본값은 키 없는 PayAI 퍼실리테이터; Coinbase CDP 퍼실리테이터도 작동하며 해당 API 키는 지출 노출이 없음), FREE_CALLS_PER_IP, BASE_RPC_URLS, 선택 사항 ETHERSCAN_API_KEY.
서버는 무상태(stateless)입니다(요청당 새 MCP 서버). 따라서 수평 확장이 가능하고 Docker를 실행할 수 있는 모든 환경에서 실행됩니다 — Dockerfile과 Apify .actor/ 구성이 포함되어 있습니다.
npm test # unit tests
npm run validate # decode 100 recent live Base txs, print grades (ship gate: >=90% clean, 0 crashes)보장 및 한계
결정적: 동일한 tx 해시 → 동일한 디코드. 모델 호출은 절대 없습니다.
내부 ETH 전송(계약 → 계약 가치 이동)은 트레이스 API 없이는 보이지 않습니다; WETH 이벤트가 일반적인 경우를 커버합니다. 무언가를 디코드할 수 없으면 추측하는 대신 출력이 그렇게 명시합니다.
블록리스트는 런타임에 공개 소스에서 가져오며 하루 두 번 갱신됩니다;
known_drainer플래그가 없다고 해서 안전이 보장되는 것은 아닙니다.투자 조언이 아닙니다; 이 도구는 트랜잭션이 무엇을 했는지 보고할 뿐, 어떤 것이 좋은 생각인지 여부는 보고하지 않습니다.
This server cannot be deployed
Maintenance
Related MCP Connectors
Base on-chain address labels (eth-labels 104k category tags), tx explainer, clusters, CCTP USDC.
Check a Base contract, transaction or web page before you act. Free pricing, paid per call in USDC.
Base token risk (honeypot sim), prices, balances, Basenames, tx data. Pay-per-call in USDC via x402.
13 free Base tools: address labels, tx explain, balances, receipts, gas, logs, bytecode.
Related MCP Servers
- AlicenseAqualityCmaintenanceSmart contract security scanner for Base. Detect honeypots, rug pulls, hidden mints, proxy dangers, and generate audit reports.825 npm1MIT
- AlicenseNot gradedqualityDmaintenanceEnables querying Base Network blockchain data including blocks, transactions, balances, and smart contracts on mainnet and testnet.4MIT
- AlicenseNot gradedqualityDmaintenanceEnables querying Base Network blockchain data including blocks, transactions, balances, and smart contracts on mainnet and testnet.MIT
- AlicenseAqualityCmaintenanceDecodes Ethereum calldata and returns a safety verdict with plain-English explanations of what the transaction does, flagging dangerous actions like unlimited approvals or gasless permits.2MIT