ethereum-jsonrpc-skill

Operate Ethereum execution JSON-RPC through UXC with the official execution OpenRPC schema, public EVM read methods, and eth_subscribe pubsub guardrails.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "ethereum-jsonrpc-skill" with this command: npx skills add jolestar/ethereum-jsonrpc-skill

Ethereum JSON-RPC Skill

Use this skill to run Ethereum execution JSON-RPC operations through uxc + JSON-RPC.

Reuse the uxc skill for shared execution, auth, and error-handling guidance.

Prerequisites

  • uxc is installed and available in PATH.
  • Network access to a compatible Ethereum execution JSON-RPC provider.
  • Access to the official execution OpenRPC schema URL:
    • https://raw.githubusercontent.com/ethereum/execution-apis/assembled-spec/refs-openrpc.json

Scope

This skill covers a safe read-first Ethereum execution surface:

  • chain identity and public state reads
  • block, balance, logs, and call-based state reads
  • eth_subscribe pubsub subscriptions for new heads, logs, and pending transactions

This skill does not cover:

  • eth_sendRawTransaction
  • personal_*, admin_*, debug_*, engine_*, txpool_*
  • wallet signing flows
  • private/authenticated RPC providers with custom auth models

Endpoint And Schema

This skill defaults to a public read provider:

  • HTTPS RPC: https://ethereum-rpc.publicnode.com

The operation surface comes from the official Ethereum execution OpenRPC schema:

  • https://raw.githubusercontent.com/ethereum/execution-apis/assembled-spec/refs-openrpc.json

uxc JSON-RPC discovery normally depends on OpenRPC or rpc.discover. Ethereum RPC providers often do not expose discovery directly, so this skill uses a fixed --schema-url link and request flow.

The official execution OpenRPC document is strong enough for normal request/response methods, but it does not currently expose pubsub methods such as eth_subscribe. Use the schema-backed link for reads, and use uxc subscribe start directly for subscriptions.

For subscriptions, use a WebSocket Ethereum RPC provider that you have verified actually accepts eth_subscribe. Do not assume a public HTTPS host automatically guarantees the same wss:// host is stable for pubsub.

Authentication

The default public read provider used by this skill does not require authentication.

If a user later points the same workflow at a private Ethereum RPC provider, verify its auth model first before reusing this skill unchanged.

Core Workflow

  1. Use the fixed link command by default:

    • command -v ethereum-jsonrpc-cli
    • If missing, create it: uxc link ethereum-jsonrpc-cli https://ethereum-rpc.publicnode.com --schema-url https://raw.githubusercontent.com/ethereum/execution-apis/assembled-spec/refs-openrpc.json
    • ethereum-jsonrpc-cli -h
  2. Inspect operation schema first:

    • ethereum-jsonrpc-cli eth_blockNumber -h
    • ethereum-jsonrpc-cli eth_getBlockByNumber -h
    • ethereum-jsonrpc-cli eth_getBalance -h
  3. Prefer chain and balance/block reads before deeper state queries:

    • ethereum-jsonrpc-cli eth_chainId
    • ethereum-jsonrpc-cli eth_blockNumber
    • ethereum-jsonrpc-cli eth_getBalance Address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 Block=latest
  4. Execute with key/value or positional JSON:

    • key/value: ethereum-jsonrpc-cli eth_getBalance Address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 Block=latest
    • positional JSON: ethereum-jsonrpc-cli eth_getBlockByNumber '["latest", false]'
    • nested positional JSON: ethereum-jsonrpc-cli eth_call '[{"to":"0xA0b86991c6218b36c1d19d4a2e9eb0ce3606eb48","data":"0x313ce567"},"latest"]'
  5. Use uxc subscribe start directly for pubsub streams:

    • uxc subscribe start wss://<verified-ethereum-rpc-host> eth_subscribe '{"params":["newHeads"]}' --sink file:$HOME/.uxc/subscriptions/eth-new-heads.ndjson
    • uxc subscribe start wss://<verified-ethereum-rpc-host> eth_subscribe '{"params":["logs",{"address":"0xA0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"}]}' --sink file:$HOME/.uxc/subscriptions/eth-logs.ndjson
    • uxc subscribe status <job_id>
    • uxc subscribe stop <job_id>

Recommended Read Operations

  • net_version
  • eth_chainId
  • eth_blockNumber
  • eth_getBlockByNumber
  • eth_getBalance
  • eth_getLogs
  • eth_call

Recommended Subscription Operations

  • eth_subscribe

Subscription params[0] modes that are usually most useful:

  • newHeads
  • logs
  • newPendingTransactions

Guardrails

  • Keep automation on the JSON output envelope; do not use --text.
  • Parse stable fields first: ok, kind, protocol, data, error.
  • Stay on read-only methods and eth_subscribe by default.
  • The official execution OpenRPC schema drives read help and request execution, but it does not cover eth_subscribe; treat subscriptions as runtime-only flows, not schema-discovered operations.
  • Do not call write/admin/debug/engine methods through this skill without explicit follow-up design and review.
  • Use uxc subscribe start for pubsub methods; the fixed ethereum-jsonrpc-cli link is for normal request/response methods.
  • Subscription jobs should always write to a sink file so events can be inspected and replayed safely.
  • Before documenting or automating a public Ethereum pubsub host, confirm the specific provider actually exposes WebSocket JSON-RPC subscriptions; public HTTPS endpoints do not guarantee a matching wss:// endpoint.
  • ethereum-jsonrpc-cli <operation> ... is equivalent to uxc https://ethereum-rpc.publicnode.com --schema-url <ethereum_execution_openrpc_schema> <operation> ....

References

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Aavegotchi Renderer Bypass

Render Aavegotchi assets by deriving renderer hashes from Goldsky Base core data and calling POST /api/renderer/batch on www.aavegotchi.com. Use when the use...

Registry SourceRecently Updated
General

Toutiao User Profile API

Call GET /api/toutiao/get-user-detail/v1 for Toutiao User Profile through JustOneAPI with userId.

Registry SourceRecently Updated
General

Toutiao Search API

Call 2 search versions for Toutiao App Keyword Search through JustOneAPI with keyword.

Registry SourceRecently Updated
General

Compaction UI Enhancements

Background memory compaction with auto-trigger, chat summary paragraph, configurable threshold, model selector, settings tab, and result storage for OpenClaw...

Registry SourceRecently Updated