mcpField
H
Hedera Testnet Mirror Node MCP Server

Hedera Testnet Mirror Node MCP Server

Local
github.com/hedera-devFinance3Updated 81w ago

About Hedera Testnet Mirror Node MCP Server

Hedera Testnet Mirror Node MCP Server turns Hedera Testnet Mirror Node API endpoints into MCP tools. It is for clients that need to query the testnet API, with Zod-based parameter validation and SSE transport.

Key features

  1. 01OpenAPI endpoints mapped to tools
  2. 02Zod parameter validation
  3. 03SSE transport
  4. 04Hedera Testnet Mirror Node access

Use cases

  1. 01Query Hedera testnet API endpoints
  2. 02Expose API calls to MCP clients
  3. 03Validate endpoint request parameters

MCP support

It exposes Hedera Testnet Mirror Node GET endpoints as tools for MCP clients, with request parameters validated using Zod. Clients connect through the SSE transport.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Hedera Testnet Mirror Node MCP Server

This repository contains a Model Context Protocol (MCP) server that interfaces with the Hedera Testnet Mirror Node API. The server is built using FastMCP, a TypeScript framework for creating MCP servers. It utilises Zod schemas for input validation.

Features

  • Endpoint Integration: Automatically converts Hedera Mirror Node APIs, defined in OpenAPI specification format, into MCP-compatible tools.
  • Server-Sent Events (SSE) Support: Clients cannot connect to this MCP server over the SSE transport.
  • Schema Validation: Ensures request parameters adhere to defined schemas using Zod.

Prerequisites

Before running the server, ensure you have the following installed:

  • Bun, or any other environment capable of running Typescript directly.

Installation

(1) Clone the repository

git clone https://github.com/hedera-dev/mirrornode-mcp-server

(2) Navigate to the project directory

cd mirrornode-mcp-server

(3) Install dependencies

npm install

Usage

To start the MCP server:

bun mcpServer.ts

Upon successful startup, you should see:

MCP server started

The server will be accessible via the configured SSE endpoint.

http://localhost:3333/hedera-testnet-mirror-node-api/sse

Project Structure

  • mcpServer.ts: The entry point that initializes and starts the MCP server.
  • openApiZod.ts: Contains Mirror Node API endpoint definitions and an API client using zodios (like axios augmented with zod schema definitions).
    • Note that this file has been programmatically generated using openapi-zod-client plus some manual modifications.

How It Works

(1) API Client Creation

An API client is created for the Hedera Testnet Mirror Node using the createApiClient function. The MCP server proxies between this HTTP API client and its own SSE transport.

(2) Endpoint Conversion:

Each endpoint definition from endpointDefinitions is processed by the convertZodiosToMcp function, which:

  • Validates that the endpoint uses the GET method.
  • Maps parameters to Zod schemas.
  • Defines an execution function that makes the corresponding API call and returns the result.
  • Registers the tool with the MCP server.

(3) Server Initialization:

The MCP server is started with SSE transport.

Dependencies

  • FastMCP: Framework for building MCP servers.
  • Zod: TypeScript-first schema declaration and validation library.
  • openapi-zod-client: Generates Zodios code from an OpenAPI specification file.

Author

Brendan Graetz

Licence

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.