Read-only MCP server for the public Obol API: DV cluster troubleshooting and monitoring
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"obol-mcp-2","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# Obol MCP [](https://badge.fury.io/py/obol-mcp) [](https://www.python.org/downloads/) A read-only [MCP](https://modelcontextprotocol.io) server, built on [FastMCP](https://gofastmcp.com), that lets an LLM look up Distributed Validator (DV) clusters, validators, exit coordination status and operators through the public [Obol API](https://docs.obol.org/api/what-is-this-api) (`https://api.obol.tech`). It exposes 21 tools. None of them can change anything: the server only sends GET requests, plus one POST to the read-only positions lookup. ## Tools | Tool | What it returns | Obol API endpoint | |------|-----------------|-------------------| | `obol_api_health` | API, database and beacon node health | `GET /v1/_health` | | `obol_cluster_lock_by_hash` | Cluster lock: definition (name, operators, threshold) and distributed validators | `GET /v1/lock/{lockHash}` | | `obol_lock_by_config_hash` | Latest lock created from a definition | `GET /v1/lock/configHash/{configHash}` | | `obol_locks_by_network` | Page of locks on a network (hashes only unless `details=true`) | `GET /v1/lock/network/{network}` | | `obol_cluster_search` | Locks matching part of a lock hash or cluster name | `GET /v1/lock/search/{network}` | | `obol_network_summary` | Total clusters, operators and ETH staked (mainnet only) | `GET /v1/lock/network/summary/{network}` | | `obol_cluster_effectiveness` | Per-validator effectiveness (`{pubkey: {"all": 0-1}}`) | `GET /v1/effectiveness/{lockHash}` | | `obol_cluster_validator_states` | Per-validator beacon state, status and balance (ETH) | `GET /v1/state/{lockHash}` | | `obol_operator_clusters` | Locks where an address is an operator | `GET /v1/lock/operator/{address}` | | `obol_operator_info` | Page of operators on a network | `GET /v1/address/network/{network}` | | `obol_search_operators` | Operators matching part of an address | `GET /…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.