🧪 Skills

QELT Blockchain

Query and interact with the QELT blockchain (Chain ID 770) via JSON-RPC. Use when asked about blocks, transactions, wallet balances, smart contract calls, ga...

v0.1.0
❤️ 0
⬇️ 94
👁 1
Share

Description


name: QELT Blockchain description: Query and interact with the QELT blockchain (Chain ID 770) via JSON-RPC. Use when asked about blocks, transactions, wallet balances, smart contract calls, gas estimation, event logs, nonces, or raw transaction submission. Covers QELT Mainnet (770) and Testnet (771). read_when:

  • Querying QELT blocks or transactions
  • Checking wallet balances on QELT
  • Estimating gas for a QELT transaction
  • Fetching event logs from QELT contracts
  • Submitting a pre-signed raw transaction to QELT
  • Looking up nonce or contract code on QELT homepage: https://docs.qelt.ai metadata: {"clawdbot":{"emoji":"⛓️","requires":{"bins":["curl"]}}} allowed-tools: Bash(qelt-blockchain:*)

QELT Blockchain Skill

QELT is an enterprise-grade EVM-compatible Layer-1 built on Hyperledger Besu 25.12.0 with QBFT consensus. Immediate finality in 5-second blocks. Zero base fee (~$0.002/tx).

Mainnet: Chain ID 770 · RPC https://mainnet.qelt.ai Testnet: Chain ID 771 · RPC https://testnet.qelt.ai Archive (historical + TRACE): https://archivem.qelt.ai

Safety

  • Never request, store, print, or transmit private keys or mnemonics.
  • Write operations accept pre-signed raw transactions only (hex starting with 0x).
  • For historical/TRACE queries, use https://archivem.qelt.ai.
  • Confirm mainnet vs testnet with the user before submitting transactions.
  • Do not invent block numbers, hashes, or balances — always fetch live data.

Endpoints

Purpose URL
Primary RPC (Mainnet) https://mainnet.qelt.ai
Archive + TRACE (Mainnet) https://archivem.qelt.ai
Testnet RPC https://testnet.qelt.ai
Testnet Archive https://archive.qelt.ai
Block Explorer https://qeltscan.ai
Indexer API https://mnindexer.qelt.ai

JSON-RPC Calls

All calls are standard Ethereum JSON-RPC 2.0 POST requests.

Get Latest Block Number

curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'

Parse result hex → printf '%d\n' <hex>.

Get Block

# By number (hex): block 1000 = 0x3e8
curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["0x3e8",true],"id":1}'

# By hash
curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_getBlockByHash","params":["0xHASH",true],"id":1}'

Get Balance

curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0xADDRESS","latest"],"id":1}'

Divide result (wei, hex) by 10^18 for QELT.

Get Transaction

curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_getTransactionByHash","params":["0xTX_HASH"],"id":1}'

Get Transaction Receipt

curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_getTransactionReceipt","params":["0xTX_HASH"],"id":1}'

status: "0x1" = success · status: "0x0" = reverted.

Call Smart Contract (Read-Only)

curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_call","params":[{"to":"0xCONTRACT","data":"0xCALLDATA"},"latest"],"id":1}'

Estimate Gas

curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_estimateGas","params":[{"from":"0xFROM","to":"0xTO","data":"0xDATA","value":"0x0"}],"id":1}'

Get Event Logs

Always bound the block range — querying from genesis ("0x0") scans the entire chain and is commonly rate-limited or timed out. Use a recent window (e.g., last 1,000 blocks) and page forward if you need more history.

# First get the current block number
LATEST=$(curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' | python3 -c "import sys,json; print(json.load(sys.stdin)['result'])")

# Then query a bounded recent range (last ~1000 blocks ≈ 83 minutes on QELT)
# Clamp at 0 so the start block is never negative on a low-height chain (e.g. fresh testnet).
FROM_HEX=$(python3 -c "latest=int('$LATEST',16); print(hex(max(0, latest - 1000)))")

curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d "{\"jsonrpc\":\"2.0\",\"method\":\"eth_getLogs\",\"params\":[{\"fromBlock\":\"$FROM_HEX\",\"toBlock\":\"latest\",\"address\":\"0xCONTRACT\",\"topics\":[\"0xTOPIC\"]}],\"id\":1}"

For full historical log scans, use https://archivem.qelt.ai and page in chunks of ≤10,000 blocks to avoid timeouts.

Get Contract Code

curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_getCode","params":["0xCONTRACT","latest"],"id":1}'

"0x" = EOA · anything longer = deployed contract.

Get Nonce

curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_getTransactionCount","params":["0xADDRESS","latest"],"id":1}'

Send Pre-Signed Transaction

⚠️ Write operation — confirm with user before executing.

curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_sendRawTransaction","params":["0xSIGNED_TX_HEX"],"id":1}'

Returns the transaction hash on success.

Chain Info

# Chain ID
curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'

# Gas price
curl -fsSL -X POST https://mainnet.qelt.ai \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_gasPrice","params":[],"id":1}'

Network Reference

Parameter Mainnet Testnet
Chain ID 770 (0x302) 771 (0x303)
RPC https://mainnet.qelt.ai https://testnet.qelt.ai
Archive https://archivem.qelt.ai https://archive.qelt.ai
Indexer https://mnindexer.qelt.ai https://tnindexer.qelt.ai
Block Time 5 seconds 5 seconds
Gas Limit 50,000,000 50,000,000
Base Fee 0 0
EVM Cancun Cancun
Testnet Faucet https://testnet.qeltscan.ai/faucet

MetaMask Config (Mainnet)

{
  "chainId": "0x302",
  "chainName": "QELT Mainnet",
  "nativeCurrency": { "name": "QELT", "symbol": "QELT", "decimals": 18 },
  "rpcUrls": ["https://mainnet.qelt.ai"],
  "blockExplorerUrls": ["https://qeltscan.ai"]
}

Common Errors

Error Cause Fix
execution reverted Contract call failed Check ABI encoding
nonce too low Stale nonce Fetch fresh nonce with eth_getTransactionCount
insufficient funds No QELT for gas Fund wallet or use testnet faucet
unknown block Archive query on validator Use https://archivem.qelt.ai
HTTP 429/503 Rate limited Exponential backoff

Reviews (0)

Sign in to write a review.

No reviews yet. Be the first to review!

Comments (0)

Sign in to join the discussion.

No comments yet. Be the first to share your thoughts!

Compatible Platforms

Pricing

Free

Related Configs