MCP ExplorerExplorer

Validation Cloud Mcp

@adamj-vcon 3 days ago
0 MIT
FreeCommunity
AI Systems

Overview

What is Validation Cloud Mcp

The Validation Cloud MCP Server is an implementation designed to interact with Validation Cloud’s Ethereum Node API. It facilitates Ethereum JSON-RPC method calls while automatically converting hexadecimal values to decimal for improved readability.

Use cases

Common use cases include retrieving the latest block number, checking account balances, fetching transaction details, and querying event logs. It provides an efficient way to access Ethereum blockchain data without needing to handle hexadecimal formats manually.

How to use

To use the server, clone the repository, build it, and configure it with your system’s node path and the resulting build path in Claude’s configuration file. You’ll also need to set your Validation Cloud API key in the environment variables for authentication.

Key features

Key features include automatic conversion of hex to decimal for various values (like block numbers and gas prices), support for a range of Ethereum JSON-RPC methods, and robust error handling for standard error codes.

Where to use

This MCP server is ideal for developers and users who need to integrate Ethereum blockchain functionality into their applications or tools, particularly those using the Anthropic platform with Claude’s desktop app.

Content

Validation Cloud MCP Server

An MCP server implementation for interacting with Validation Cloud’s Ethereum Node API, with automatic conversion of hex values to decimal.

Requirements:

  • An Anthropic account (create one if you don’t have it)

  • Cluade desktop app

  • Validation cloud API key for ethereum

  • node@20

Setup

  1. Find Node Path

Find your node path by running

which node

The output will be your “command” value for the configuration.

  1. Set Up Validation Cloud MCP

Clone and build the repository:

git clone https://github.com/adamj-vc/validation-cloud-mcp.git
cd validation-cloud-mcp
npm install
npm run build
pwd

Take the output from pwd and append /build/index.js to it. This will be your “args” value.

  1. Configure Claude
vi ~/Library/Application\ Support/Claude/claude_desktop_config.json

Add this configuration (replace COMMAND and ARGS with your values from steps 1 and 2):

{
  "mcpServers": {
    "validation-cloud": {
      "command": "COMMAND",
      "args": [
        "ARGS"
      ],
      "env": {
        "VALIDATION_CLOUD_API_KEY": ""
      }
    }
  }
}

For example, if:

which node outputs /opt/homebrew/opt/node@20/bin/node

pwd outputs /Users/username/validation-cloud-mcp

Your final configuration would look like:

{
  "mcpServers": {
    "validation-cloud": {
      "command": "/opt/homebrew/opt/node@20/bin/node",
      "args": [
        "/Users/username/validation-cloud-mcp/build/index.js"
      ],
      "env": {
        "VALIDATION_CLOUD_API_KEY": ""
      }
    }
  }
}

Available Methods

The server supports standard Ethereum JSON-RPC methods with automatic conversion of hex values to decimal. Here are some common examples:

Get Latest Block Number

Get Account Balance

Get Transaction

Get Block

Query Logs

{
  "tool": "ethereum_request",
  "arguments": {
    "method": "eth_getLogs",
    "params": [
      {
        "fromBlock": "0x0",
        "toBlock": "latest",
        "address": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e"
      }
    ]
  }
}

Value Conversions

The server automatically converts hex values to decimal for better readability:

  • Block numbers are converted to decimal numbers
  • Gas values (gasPrice, gasLimit, gasUsed) are converted to decimal
  • Wei values are provided in both wei (decimal string) and ether (decimal string)
  • Timestamps are converted to decimal
  • Transaction values include both wei and ether representations
  • Block and transaction indexes are converted to decimal

Supported Methods

The server supports all standard Ethereum JSON-RPC methods including:

  • eth_blockNumber: Get current block number (returns decimal)
  • eth_getBalance: Get account balance (returns wei and ether in decimal)
  • eth_getTransactionByHash: Get transaction details (numeric values in decimal)
  • eth_getBlockByNumber: Get block by number (numeric values in decimal)
  • eth_getBlockByHash: Get block by hash (numeric values in decimal)
  • eth_getTransactionReceipt: Get transaction receipt (numeric values in decimal)
  • eth_getCode: Get contract code
  • net_version: Get network version
  • eth_gasPrice: Get current gas price (returns decimal)
  • eth_getLogs: Query event logs
  • eth_sendRawTransaction: Send signed transaction
  • eth_call: Call contract method
  • eth_estimateGas: Estimate transaction gas (returns decimal)
  • eth_getTransactionCount: Get account nonce (returns decimal)

Error Handling

The server handles standard Ethereum JSON-RPC error codes:

  • -32700: Parse error
  • -32602: Invalid params
  • -32601: Method not found
  • -32603: Internal error
  • -32000: Server error

Development

Running Tests

npm test

MCP inspector

Run the server using the MCP inspector:

npm run inspector

Watch Mode

npm run watch

License

This project is licensed under the terms of the LICENSE file included in the repository.

Tools

No tools

Comments