everstake-mcp
An MCP server for Everstake's non-custodial staking data across 130+ networks: live APY, uptime metrics, rewards calculator, integrations, security and compliance. Built for asset managers, custodians, and exchanges evaluating institutional staking.
README
Everstake MCP Server
MCP server exposing Everstake staking data and company information to AI agents. Built in Go using modelcontextprotocol/go-sdk.
Transport: Streamable HTTP (MCP 2025-03-26 spec) — single / endpoint
Available Tools
| Tool | Type | Description |
|---|---|---|
get_company_profile |
static | Company overview, metrics, certifications |
get_products |
static | Product details: Institutional Staking, VaaS, Yield, SWQOS, ShredStream |
get_solutions |
static | Solutions by audience: custodians, exchanges, asset managers, banks, fintech |
get_developer_docs |
static | SDK links, integration guides, API references |
get_contact_information |
static | Contact channels and routing guide |
get_security_profile |
static | Certifications: SOC 2 Type II, ISO 27001, NIST CSF, ITGC, GDPR, CCPA |
get_integrations |
static | Custody integrations: Fireblocks, BitGo, Anchorage, Coinbase, etc. |
get_uptime_metrics |
live | Uptime metrics from dashboard API (30 min cache) |
get_chains |
live | Supported chains with APY, fees, status (30 min cache) |
staking_calculator |
live | Estimated staking rewards by network and amount |
request_integration |
write | Submit integration/staking inquiry to Everstake sales |
Running the Server
Prerequisites
- Go 1.26.1+
- Environment variable
DASHBOARD_URLset (required)
Local
export DASHBOARD_URL=https://dashboard-api.everstake.one
go run ./cmd/mcp_server
The server starts on port 8080 by default. Override with PORT=<port>.
Docker
docker build -t everstake-mcp .
docker run -e DASHBOARD_URL=https://dashboard-api.everstake.one -p 8080:8080 everstake-mcp
Environment Variables
| Variable | Default | Required |
|---|---|---|
DASHBOARD_URL |
— | yes |
PORT |
8080 |
no |
GIN_MODE |
— | no (release set in Dockerfile) |
Health Check
GET /health
Linting
The project uses golangci-lint with a strict configuration in .golangci.yml.
Install golangci-lint:
go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest
Run:
make lint
Key rules enforced: staticcheck (all checks), gosec, gocritic (diagnostic/style/performance tags), revive (40+ rules including early-return, error-strings, var-naming), errchkjson, bodyclose, contextcheck, and more. nolintlint requires specific lint directives — bare //nolint is not allowed.
Editing Tool Responses
Static tools
Edit tools.yaml. Each map key is the tool name; the static_response field is returned verbatim to the AI agent.
tools:
get_company_profile:
description: |
...
static_response: |
COMPANY: Everstake
...
To add a new static tool:
- Add an entry under
tools:intools.yamlwithstatic_response. - Add a corresponding field to
ToolsConfigininternal/config/mcp_config.gowith a matchingyamlstruct tag — the name is injected automatically via reflection. - Register it in
internal/server/mcp/server.gousingstaticTextTool().
Content rules
Cross-cutting rules that apply to all tool responses are in .vscode/tools_src/RULES.md. These cover:
- Certification differentiator language
- Non-custodial positioning
- Vault product disclaimers
- APY disclaimer wording
- Lead source tagging for
request_integration
Dynamic tools
get_uptime_metrics and get_chains fetch live data from the dashboard API with a 30-minute in-memory cache. Their handlers are in internal/server/mcp/dashboard.go. The underlying API client lives in pkg/everstake/dashboard/.
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
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
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.