Bootnode

ZAP Protocol

Zero-Copy App Proto — Cap'n Proto binary RPC for high-performance infrastructure control. 18 tools across 4 categories.

ZAP (Zero-Copy App Proto) is Bootnode's native binary RPC protocol built on Cap'n Proto. It provides zero-copy serialization, multiplexed streaming, and schema-driven tool definitions.

Connection

zap://api.bootno.de:9999
from hanzo_zap import Client

async with Client.connect("zap://api.bootno.de:9999") as client:
    tools = await client.list_tools()
    result = await client.call_tool("rpc_call", {
        "chain": "ethereum",
        "method": "eth_blockNumber"
    })
let client = zap::Client::connect("zap://api.bootno.de:9999").await?;
let tools = client.list_tools().await?;
let result = client.call_tool("rpc_call", json!({
    "chain": "ethereum",
    "method": "eth_blockNumber"
})).await?;
client, err := zap.Connect("zap://api.bootno.de:9999")
tools, _ := client.ListTools()
result, _ := client.CallTool("rpc_call", map[string]any{
    "chain": "ethereum",
    "method": "eth_blockNumber",
})

Tools

RPC and Blockchain (5 tools)

ToolDescription
rpc_callExecute JSON-RPC on any supported chain
get_token_balancesGet ERC-20 balances for an address
get_nfts_ownedGet NFTs owned by an address
create_smart_walletCreate ERC-4337 smart wallet
estimate_gasGet gas prices for a chain

Fleet Management (4 tools)

ToolDescription
fleet_listList validator fleets across clusters
fleet_getGet fleet status with nodes and endpoints
fleet_scaleScale fleet to target replica count
fleet_restartRolling restart all fleet pods

Service Management (4 tools)

ToolDescription
service_listList all deployed infrastructure services
service_deployDeploy or update a service
service_scaleScale a service
service_logsGet logs from a service

Observability (4 tools)

ToolDescription
o11y_healthAggregate health across all services
o11y_metricsPlatform metrics (rps, latency, error rate)
o11y_logsSearch aggregated logs via Loki
o11y_alertsActive alerts and incidents

Resources

URIDescription
bootnode://chainsList of all supported blockchain networks
bootnode://usageAPI usage for current billing period
bootnode://configCurrent API configuration and limits

Schema

The ZAP schema defines the full RPC interface:

GET /v1/zap/schema

Returns the .zap schema file. Compile to Cap'n Proto with:

zapc compile bootnode.zap --out=bootnode.capnp

AI Agent Integration

ZAP is designed for AI agents to control blockchain infrastructure. The tool definitions follow the MCP (Model Context Protocol) pattern:

# AI agent managing infrastructure via ZAP
async with Client.connect("zap://api.bootno.de:9999") as client:
    # Check health
    health = await client.call_tool("o11y_health", {})

    # Scale if needed
    if health["unhealthy"] > 0:
        await client.call_tool("fleet_restart", {
            "chain": "lux",
            "cluster_id": "do-sfo3-lux-k8s",
            "network": "mainnet"
        })

Last updated on

On this page