Zilliqa Insights MCP Server
Enables LLMs to query Zilliqa validator node metrics including stake, earnings, success rates, and top validators through natural language.
README
Zilliqa Insights MCP Server
The Zilliqa Insights Model Context Protocol (MCP) Server is a component designed to provide LLM interaction with Zilliqa validator nodes observability metrics.
Prerequisites
- Node.js: version 20 or higher
Usage
You can ask your MCP client natural language questions about the Zilliqa validator nodes. Here are a few examples:
- "What is the zil address for Huobi?"
- "What is the zil stake for Binance in October 2025?"
- "How reliable was Zillet at proposing blocks last week?"
- "What were the total ZIL rewards for Moonlet yesterday?"
- give me the top 10 validators with more stake
- give me the top 10 validators with more rewards
Your MCP client will translate these questions into the appropriate tool calls to fetch the data from the MCP server.
Available Tools
This server exposes several tools that query validator performance and status metrics. These tools act as a proxy, connecting to the downstream observability-mcp server, which is part of the gcloud-mcp, to retrieve data from Google Cloud Monitoring.
-
listValidators() -
Lists all known validators and their metadata:
name,public_key,address, andzil_address. -
getTotalValidatorEarnings(validator, startTime?, endTime?)- Retrieves the total ZIL rewards earned by a specific validator within a given time frame. Defaults to the last hour if no time is specified.
-
getValidatorEarningsBreakdown(validator, startTime?, endTime?)- Provides a detailed breakdown of a validator's earnings, separating rewards from block proposals and cosignatures.
-
getValidatorStake(public_key)- Fetches the total amount of ZIL currently delegated (staked) to a validator, which represents their weight in the consensus mechanism.
-
getProposerSuccessRate(public_key, startTime?, endTime?)- Calculates the success rate for a validator when they are tasked with proposing a new block. This is a critical indicator of node stability and network latency.
-
getCosignerSuccessRate(public_key, startTime?, endTime?)- Measures the validator's success rate for cosigning (attesting to) blocks proposed by others. This demonstrates consistent uptime and connectivity.
-
getTopValidatorsByEarnings(startTime?, endTime?, limit?) -
Retrieves the top N validators ranked by total ZIL earnings within a given time frame. Defaults to the last hour and top 5 when not specified.
-
getTopValidatorsByStake(startTime?, endTime?, limit?) -
Retrieves the top N validators ranked by current delegated stake (GAUGE metric, latest value per validator). Defaults to the last hour and top 5.
-
getTopProposerSuccessRate(startTime?, endTime?, limit?) -
Retrieves the top N validators ranked by proposer success rate over a time frame (successful proposals divided by total proposals). Defaults to the last hour and top 5.
-
getTopCosignerSuccessRate(startTime?, endTime?, limit?) -
Retrieves the top N validators ranked by cosigner success rate over a time frame (successful cosignatures divided by total cosignatures). Defaults to the last hour and top 5.
Development
Follow these instructions to get the server running on your local machine for development and testing purposes.
1. Installation
First, install the project dependencies using npm:
npm install
2. Build
Next, compile the TypeScript source code into JavaScript:
npm run build
This will create a build directory containing the distributable files.
3. Running the Server
The server can operate in two modes:
stdiomode: The server communicates over standard input/output. This is typically used for direct interaction with the MCP server on the same machine. This is the default option.httpmode: The server exposes an HTTP API, allowing for remote communication and management from other services.
node build/index.js
To run the server in HTTP streamable mode add the --http flag:
node build/index.js --http
4. Configuring the LLM settings
Add this configuration in the LLM local settings to test the MCP server. This is an example for Gemini:
"mcpServers": {
"insights-local": {
"httpUrl": "http://localhost:3001/mcp"
}
}
Note: The Zilliqa Insights MCP server connects to an instance of the gcloud MCP server referred in the OBSERVABILITY_MCP_URL variable to retrieve the validators data. These observability metrics are restricted and not publicly available.
Deployment
Kubernetes
The Kubernetes manifests for deploying this server are located in the cd/ directory. Environment-specific configurations can be found in cd/overlays/.
Production environment
A production version of this server is automatically deployed via GitHub Actions pipelines. The deployment is triggered on the creation of a new release and it is accessible at the following URL:
- URL: https://insights.mcp.zilliqa.com/mcp
Configuring the LLM settings
Add this configuration in the LLM local settings to test the MCP server. This is an example for Gemini:
"mcpServers": {
"insights": {
"httpUrl": "https://insights.mcp.zilliqa.com/mcp"
}
}
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.