TxWhy
Failed Solana transaction in, working transaction out. Exact cause, rebuilt tx, verifiable repair.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"txwhy": {
"url": "https://txwhy.vercel.app/api/mcp"
}
}
}원격 엔드포인트
https://txwhy.vercel.app/api/mcpstreamable-http할 수 있는 일
도구 목록
도구 (3)
🟡repair_transaction(transaction, signature)
Give it a Solana transaction that failed, or one you are about to send. It finds the cause and returns a rebuilt UNSIGNED transaction that has been simulated against live mainnet state to prove it passes. Fixes expired blockhashes, compute-unit limits, priority fees, loaded-data limits, slippage on plain Jupiter swaps (fresh quote, same tolerance), and slippage on direct Pump.fun, PumpSwap, Raydium AMM v4, Meteora DBC and Meteora DAMM v2 swaps (only the limit moves, never more than 25% against the user). Handles legacy, v0 and version 1 (SIMD-0385) transactions and durable nonces. When the failure cannot be fixed by rebuilding (not enough funds, a private program's own error), it says so and explains why instead of returning something that would fail again. Pass exactly one of `transaction` or `signature`. Sign the returned transaction with your own key and send it within about 60 seconds.
입력 스키마
{
"type": "object",
"properties": {
"transaction": {
"description": "Base64 serialized transaction, signed or unsigned. Use this before sending, or after a send failed.",
"type": "string"
},
"signature": {
"description": "Signature (or explorer URL) of a transaction that already landed on mainnet and failed.",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢diagnose_transaction(signature)
Explains why a transaction that landed on mainnet failed: the exact failing instruction in the call tree, the named error, its cause, and how to fix it. Read-only and fast. Use repair_transaction when you want a working transaction back.
입력 스키마
{
"type": "object",
"properties": {
"signature": {
"type": "string",
"description": "Transaction signature or explorer URL."
}
},
"required": [
"signature"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢explain_error(programId, code)
Looks up what a custom program error code means for a given program, using 1,800+ named errors from major Solana programs plus the runtime's own errors. Use it when you only have a code such as 6001 or 0x1771 from a simulation or an RPC response.
입력 스키마
{
"type": "object",
"properties": {
"programId": {
"type": "string",
"description": "Base58 address of the program that raised the error."
},
"code": {
"anyOf": [
{
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
{
"type": "string"
}
],
"description": "Error code as a number, or a hex string like 0x1771."
}
},
"required": [
"programId",
"code"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}커뮤니티
증거