TxWhy

Failed Solana transaction in, working transaction out. Exact cause, rebuilt tx, verifiable repair.

我該用這個嗎

品質與安全性

A
說明品質
100%
結構描述完整度
93%
命名品質
80%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

根據工具定義與協定合規性的自動化分析。

上下文成本

~595Token(工具定義)
~970 B典型回應大小
極小的注意力影響(128k 上下文的 0.46%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `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"
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本3 個工具