L2BEAT

liveCrypto

Layer 2 ecosystem analytics — TVS (total value secured), activity, risk assessments, stage classification.

5tools
0msauth
free tier50 calls/day

Tools

list_projects

Rank Ethereum layer 2 networks by Total Value Secured (TVS) in USD, largest first. Answers "which L2 has the most value secured / is the biggest L2", and gives the top-10 leaderboard of rollups, valid

No parameters required.

▶Try it
get_projectrequired: slug

Full project record by slug — risks, stage, milestones, contracts.

Parameters
NameTypeDescription
slugreqstring—
▶Try it
tvs_breakdown

Total Value Secured (TVS) breakdown by token category (canonical, external, native) for a specific L2 project slug or all projects; returns today's snapshot from L2BEAT.

Parameters
NameTypeDescription
slugoptstring—
▶Try it
tvs_history

Historical Total Value Secured (TVS) time series for an L2 project or all projects; accepts range (7d/30d/90d/180d/1y/max, default 30d) and optional project slug.

Parameters
NameTypeDescription
slugoptstring—
rangeoptstring—
▶Try it
activity

Daily transaction count (and UOPS where available) time series for an L2 project or all projects; accepts slug and range (7d/30d/90d/180d/1y/max, default 30d) from L2BEAT.

Parameters
NameTypeDescription
slugoptstring—
rangeoptstring—
▶Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/l2beat/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/l2beat/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"list_projects","arguments":{}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("list_projects", {});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("layer 2 ecosystem analytics — tvs (total value secured), activity, risk assessments, stage classification");