Agents & BDS — Overview

Agents do not talk to DSV finalization directly. For the current BDS market, they consume finalized Uniswap V3 data through metered /mpp/... routes served by a snapshotter full-node resolver.
There are three first-class consumption paths. All three use the same commercial substrate — metered /mpp/... routes, on-chain plan purchase, and a Bearer API key — but differ in how the agent is wired to the data.
Video walkthroughs
Step-by-step clips for the free API key path are in the BDS & Agents playlist on YouTube:
| Video | Covers |
|---|---|
| Free API key for BDS: Browser Signup | Sign up at bds-metering.powerloom.io/metering — email, Turnstile, copy sk_live_... (2 free credits). |
| Setup Openclaw with free BDS API key | OpenClaw one-shot with powerloom-bds-univ3 and an existing free key (Whale Radar cron). |
Architecture
Three paths
Path A — OpenClaw + powerloom-bds-univ3 + hosted MCP server
🦞 Published skill on ClawHub: powerloom-bds-univ3.
An agent running in OpenClaw installs the published ClawHub skill and connects to the hosted MCP server at https://bds-mcp.powerloom.io/sse. The skill ships with three opinionated recipes (Whale Radar, Token-Flow, Autonomous DeFi Analyst). OpenClaw's TUI or web UI can assist through the setup steps, including API key acquisition.
This path is optimized for fast time-to-first-alert: the agent uses MCP tools exposed by the hosted server rather than calling the resolver's HTTP routes directly.
Best fit: OpenClaw users, ClawHub-distributed recipes, guided onboarding, agents that should compose BDS data with other ClawHub skills.
Path B — bds-agent CLI for headless orchestration
The bds-agent CLI (install: pip install bds-agent or uv tool install bds-agent, package bds-agent on PyPI, source powerloom/bds-agent-py) does not require an MCP server. It translates natural-language queries to structured YAML recipes and executes them directly against the metered resolver routes. It supports wallet-funded automated signup and top-up, making it suitable for agent sandboxes and external orchestration frameworks (LangGraph, CrewAI, and others) where spawning an MCP subprocess is impractical.
Beyond run / query, the CLI includes a Pulse trader (trade run — stream confluence, multi-pool) and Threshold Guard (guard run — one pool, percent take-profit/stop-loss, optional idle exit in USDC for composed agent loops). See Headless CLI → Pulse and Threshold Guard.
Best fit: headless agents, external orchestration, programmatic wallet-based signup, any environment where the MCP process model is not viable.
Path C — Aeon fork (GitHub Actions) + aeon-skills
The Aeon path (powerloom/aeon-skills) runs entirely inside GitHub Actions — no MCP server and no VPS required. A Python-based prefetch step owns BDS fetch and epoch cursor management; the LLM only dispatches pre-built alerts through ./notify to Telegram, Discord, or Slack.
To get started, fork the Aeon repository, set your POWERLOOM_API_KEY and notification secrets as GitHub repository variables, and enable the scheduled GitHub Actions workflow. The workflow runs on cron, fetches the latest data via the metered /mpp/... routes, and pushes alerts to your configured channels.
Best fit: users who fork Aeon and want scheduled whale alerts via Telegram/Discord/Slack without managing a VPS.
Shared substrate
Regardless of path, every agent consumes the same underlying data:
/mpp/...routes are the metered consumption surface- credits are purchased on-chain and tracked per API key
- every supported resolver response includes a
verificationobject the agent can use to confirm the returned payload maps to DSV-finalized state
The route surface is served by a snapshotter full node participating in the BDS market. Metering, MCP, OpenClaw, and bds-agent are access layers around that same underlying resolver path.
Implementation repositories
| Layer | Repository |
|---|---|
Snapshotter full-node resolver / hosted /mpp routes | powerloom/snapshotter-core-edge |
| Metering and API keys | powerloom/bds-agenthub-billing-metering |
| Hosted MCP server | powerloom/bds-mcp-server |
| OpenClaw skill and recipes | powerloom/powerloom-bds-univ3 |
| Headless CLI | bds-agent on PyPI · powerloom/bds-agent-py |
| Aeon skill package | powerloom/aeon-skills |
Read next
| Goal | Page |
|---|---|
| Get running in ~10 minutes | Quickstart |
| Understand plans, keys, and credits | Metering & API Keys |
| Set up on OpenClaw via ClawHub | OpenClaw & Hosted MCP |
| Run a headless agent without MCP | Headless CLI (bds-agent) |
| Set up Aeon scheduled alerts (GitHub Actions) | Aeon Whale Radar |
| Verify data provenance inside an agent | Verification in Agent Workflows |
Agent-readable skill files
All three paths ship a SKILL.md that any LLM-driven agent or orchestrator can fetch at session start to learn the full command surface, metering HTTP flow, and common mistakes — without reading lengthier documentation.
| Path | Skill file | Fetch |
|---|---|---|
| OpenClaw + ClawHub | powerloom-bds-univ3/SKILL.md | curl -sL https://raw.githubusercontent.com/powerloom/powerloom-bds-univ3/main/SKILL.md |
bds-agent (repo: bds-agent-py) | bds-agent-py/SKILL.md | curl -sL https://raw.githubusercontent.com/powerloom/bds-agent-py/main/SKILL.md |
Aeon (repo: aeon-skills) | aeon-skills/SKILL.md | curl -sL https://raw.githubusercontent.com/powerloom/aeon-skills/main/SKILL.md |
The bds-agent skill file (shipped from the bds-agent-py repo) is framework-neutral: it covers the metering HTTP surface, CLI commands, env vars, and common mistakes for any orchestrator, not just OpenClaw.
Background
What BDS Is— the resolver layer and market scopeWhy DSV Exists— the protocol finalization layer