← Back to Skills Marketplace
ianalloway

Nft Tracker

by ianalloway · GitHub ↗ · v0.1.0
cross-platform ✓ Security Clean
717
Downloads
0
Stars
2
Active Installs
1
Versions
Install in OpenClaw
/install nft-tracker
Description
Track Ethereum NFT collections' floor prices, volumes, owners, and recent sales including BAYC, MAYC, CryptoPunks via Reservoir and OpenSea APIs.
README (SKILL.md)

NFT Price Tracker

Track NFT collection stats, floor prices, and recent sales using free APIs.

Free APIs (No Key Required)

Reservoir API (Recommended)

Get collection floor price:

curl -s "https://api.reservoir.tools/collections/v6?slug=boredapeyachtclub" | jq '.collections[0] | {name, floorAsk: .floorAsk.price.amount.native, volume24h: .volume["1day"], volumeChange: .volumeChange["1day"]}'

Popular Collection Slugs

  • boredapeyachtclub - Bored Ape Yacht Club (BAYC)
  • mutant-ape-yacht-club - Mutant Ape Yacht Club (MAYC)
  • cryptopunks - CryptoPunks
  • azuki - Azuki
  • pudgypenguins - Pudgy Penguins
  • doodles-official - Doodles
  • clonex - CloneX

Collection Stats

Get detailed collection stats:

curl -s "https://api.reservoir.tools/collections/v6?slug=mutant-ape-yacht-club" | jq '.collections[0] | {
  name: .name,
  floor_eth: .floorAsk.price.amount.native,
  floor_usd: .floorAsk.price.amount.usd,
  volume_24h: .volume["1day"],
  volume_7d: .volume["7day"],
  volume_30d: .volume["30day"],
  owners: .ownerCount,
  supply: .tokenCount
}'

Recent Sales

Get recent sales for a collection:

curl -s "https://api.reservoir.tools/sales/v6?collection=0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d&limit=10" | jq '.sales[] | {token_id: .token.tokenId, price_eth: .price.amount.native, timestamp: .timestamp, marketplace: .orderSource}'

Contract addresses:

  • BAYC: 0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d
  • MAYC: 0x60e4d786628fea6478f785a6d7e704777c86a7c6
  • CryptoPunks: 0xb47e3cd837ddf8e4c57f05d70ab865de6e193bbb

Floor Price History

Get floor price over time:

curl -s "https://api.reservoir.tools/collections/daily-volumes/v1?collection=0x60e4d786628fea6478f785a6d7e704777c86a7c6&limit=30" | jq '.[] | {date: .timestamp, floor: .floorAskPrice, volume: .volume}'

Top Collections

Get top collections by volume:

curl -s "https://api.reservoir.tools/collections/v6?sortBy=1DayVolume&limit=10" | jq '.collections[] | {name: .name, floor: .floorAsk.price.amount.native, volume_24h: .volume["1day"]}'

Token Lookup

Get details for a specific NFT:

# MAYC #1234
curl -s "https://api.reservoir.tools/tokens/v7?tokens=0x60e4d786628fea6478f785a6d7e704777c86a7c6:1234" | jq '.tokens[0] | {name: .token.name, image: .token.image, lastSale: .token.lastSale.price.amount.native, owner: .token.owner}'

Price Alerts (Script Example)

Monitor floor price and alert when below threshold:

#!/bin/bash
COLLECTION="mutant-ape-yacht-club"
THRESHOLD=5  # ETH

FLOOR=$(curl -s "https://api.reservoir.tools/collections/v6?slug=$COLLECTION" | jq -r '.collections[0].floorAsk.price.amount.native')

if (( $(echo "$FLOOR \x3C $THRESHOLD" | bc -l) )); then
  echo "ALERT: $COLLECTION floor is $FLOOR ETH (below $THRESHOLD ETH)"
fi

OpenSea API (With Key)

If you have an OpenSea API key:

curl -s "https://api.opensea.io/api/v2/collections/mutant-ape-yacht-club/stats" \
  -H "X-API-KEY: $OPENSEA_API_KEY" | jq '.'

Tips

  • Reservoir API is free and doesn't require authentication for basic queries
  • Rate limits apply - cache responses when possible
  • Prices are in ETH unless specified otherwise
  • Use contract addresses for precise lookups, slugs for convenience
Usage Guidance
This skill is an instruction-only collection of curl+jq examples against Reservoir and OpenSea and appears to do what it claims. Before installing or using it: (1) note that OpenSea API usage is optional — only provide an OPENSEA_API_KEY if you plan to call the examples that require it; prefer a scoped/restricted key and avoid reusing high-privilege credentials; (2) be aware the skill performs outbound requests to reservoir.tools and api.opensea.io (so data you request is sent to those services); (3) ensure your runtime has curl, jq (and bc if you use the alert script); (4) confirm the skill source is trustworthy since the published homepage points to OpenSea docs but the skill's source is unknown; and (5) if you need stronger guarantees, request that the publisher update the registry metadata to mark OPENSEA_API_KEY as optional to avoid confusion.
Capability Analysis
Type: OpenClaw Skill Name: nft-tracker Version: 0.1.0 The skill bundle is benign. It provides examples and instructions for tracking NFT collection data using legitimate APIs (Reservoir and OpenSea). The `SKILL.md` file defines standard `curl` and `jq` binaries as requirements and transparently requests an `OPENSEA_API_KEY` for authenticated OpenSea API calls. All network requests target known NFT data providers, and the scripts only parse and display data, without any evidence of data exfiltration, unauthorized execution, persistence mechanisms, or prompt injection attempts against the agent.
Capability Assessment
Purpose & Capability
The name/description (track NFT collections, floor prices, sales) matches the actual instructions: curl queries against Reservoir and optional OpenSea endpoints and jq parsing. Required binaries (curl, jq) are appropriate for the provided commands.
Instruction Scope
SKILL.md is limited to running curl requests against reservoir.tools and api.opensea.io and parsing with jq. It does not instruct the agent to read arbitrary local files, system configuration, or transmit data to unrelated endpoints. Example scripts do call bc for numeric comparison, which is a minor external dependency.
Install Mechanism
There is no install spec and no code files — the skill is instruction-only. That minimizes on-disk persistence and installation risk.
Credentials
SKILL.md includes an OpenSea API key example and metadata declaring an OPENSEA_API_KEY credential, but the registry metadata shown to you lists 'Required env vars: none' and 'Primary credential: none'. This mismatch suggests the OpenSea key is optional (only needed for some OpenSea endpoints) — which is reasonable — but the registry should clearly mark it as optional. No other unrelated credentials are requested.
Persistence & Privilege
The skill does not request always:true, does not install persistent agents or alter other skills, and is user-invocable only. It does make outbound network calls when used, which is expected for its purpose.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install nft-tracker
  3. After installation, invoke the skill by name or use /nft-tracker
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.1.0
- Initial release of nft-tracker skill. - Track NFT collection prices, floor prices, sales data, and stats for major Ethereum collections. - Easy bash and curl commands to fetch data from Reservoir API (no key required) and OpenSea API (with key). - Supports popular collections like BAYC, MAYC, CryptoPunks, Azuki, Pudgy Penguins, and more. - Includes scripts for price alerts and example queries for floor history, recent sales, top collections, and single token lookup. - Simple setup instructions and metadata for API integration.
Metadata
Slug nft-tracker
Version 0.1.0
License
All-time Installs 2
Active Installs 2
Total Versions 1
Frequently Asked Questions

What is Nft Tracker?

Track Ethereum NFT collections' floor prices, volumes, owners, and recent sales including BAYC, MAYC, CryptoPunks via Reservoir and OpenSea APIs. It is an AI Agent Skill for Claude Code / OpenClaw, with 717 downloads so far.

How do I install Nft Tracker?

Run "/install nft-tracker" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Nft Tracker free?

Yes, Nft Tracker is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Nft Tracker support?

Nft Tracker is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Nft Tracker?

It is built and maintained by ianalloway (@ianalloway); the current version is v0.1.0.

💬 Comments