Claim this agent
agentCLAWHUBUnverified

OpenSea

Query OpenSea NFT marketplace data via official MCP server. Get floor prices, trending collections, token prices, wallet balances, swap quotes, and NFT holdings. Supports Ethereum, Base, Polygon, Solana, and other major chains. Requires OpenSea developer account for MCP token.

OpenClaw

Rank

62

Safety

84

Downloads

1.5k

Updated

Apr 15, 2026

Version

1.0.2

Source

CLAWHUB

About

What it does, and when to use it.

Capability contract not published. No trust telemetry is available yet. 1.5K downloads reported by the source. Last updated 4/15/2026.

Avoid when

  • Contract metadata is missing or unavailable for deterministic execution.

Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing

Public facts

Every fact links back to the source it came from.

Vendor
Clawhubvendor · observed Apr 15, 2026
Protocol compatibility
OpenClawcompatibility · observed Apr 15, 2026
Adoption signal
1.5K downloadsadoption · observed Apr 15, 2026
Latest release
1.0.2release · observed Feb 8, 2026
Handshake status
UNKNOWNsecurity

Install and run

Setup complexity: low.

clawhub skill install kn7176r43k8cwrwyv9h52051z9809n51:opensea-mcp
  1. Install using `clawhub skill install kn7176r43k8cwrwyv9h52051z9809n51:opensea-mcp` in an isolated environment before connecting it to live workloads.
  2. No published capability contract is available yet, so validate auth and request/response behavior manually.
  3. Review the upstream CLAWHUB listing at https://clawhub.ai/dfinzer/opensea-mcp before using production credentials.

Contract: missing

curl -s "https://www.xpersona.co/api/v1/agents/clawhub-dfinzer-opensea-mcp/snapshot"

Documentation

CLAWHUB

76,635 characters of source documentation, loaded on request.

Extracted files

5 files captured from the source.

SKILL.md

# OpenSea API

Query NFT data, trade on the Seaport marketplace, and swap ERC20 tokens across Ethereum, Base, Arbitrum, Optimism, Polygon, and more.

## Quick start

1. Set `OPENSEA_API_KEY` in your environment
2. Run helper scripts in `scripts/` for common operations
3. Use the MCP server for token swaps and advanced queries

```bash
export OPENSEA_API_KEY="your-api-key"

# Token swap: ETH to token
./scripts/opensea-swap.sh 0xTokenAddress 0.1 0xYourWallet 0xYourKey base

# Token swap: Token to token (specify from_token as last arg)
./scripts/opensea-swap.sh 0xToToken 100 0xYourWallet 0xYourKey base 0xFromToken

# Get collection info
./scripts/opensea-collection.sh boredapeyachtclub

# Get NFT details
./scripts/opensea-nft.sh ethereum 0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d 1234

# Get best listing price for an NFT
./scripts/opensea-best-listing.sh boredapeyachtclub 1234
```

## Task guide

### Token swaps

OpenSea's API includes a cross-chain DEX aggregator for swapping ERC20 tokens with optimal routing across all supported chains.

| Task | Tool/Script |
|------|-------------|
| Get swap quote with calldata | `get_token_swap_quote` (MCP) or `opensea-swap.sh` |
| Check token balances | `get_token_balances` (MCP) |
| Search tokens | `search_tokens` (MCP) |
| Get trending tokens | `get_trending_tokens` (MCP) |
| Get top tokens by volume | `get_top_tokens` (MCP) |

### Reading NFT data

| Task | Script |
|------|--------|
| Get collection details | `opensea-collection.sh <slug>` |
| Get collection stats | `opensea-collection-stats.sh <slug>` |
| List NFTs in collection | `opensea-collection-nfts.sh <slug> [limit] [next]` |
| Get single NFT | `opensea-nft.sh <chain> <contract> <token_id>` |
| List NFTs by wallet | `opensea-account-nfts.sh <chain> <address> [limit]` |

### Marketplace queries

| Task | Script |
|------|--------|
| Get best listing for NFT | `opensea-best-listing.sh <slug> <token_id>` |
| Get best offer for NFT | `opensea-best-offer.sh <slug> <token_id>` |
| List all collection listings | `opensea-listings-collection.sh <slug> [limit]` |
| List all collection offers | `opensea-offers-collection.sh <slug> [limit]` |
| Get listings for specific NFT | `opensea-listings-nft.sh <chain> <contract> <token_id>` |
| Get offers for specific NFT | `opensea-offers-nft.sh <chain> <contract> <token_id>` |
| Get order by hash | `opensea-order.sh <chain> <order_hash>` |

### Marketplace actions (POST)

| Task | Script |
|------|--------|
| Get fulfillment data (buy NFT) | `opensea-fulfill-listing.sh <chain> <order_hash> <buyer>` |
| Get fulfillment data (accept offer) | `opensea-fulfill-offer.sh <chain> <order_hash> <seller> <contract> <token_id>` |
| Generic POST request | `opensea-post.sh <path> <json_body>` |

### Events and monitoring

| Task | Script |
|------|--------|
| Get collection events | `opensea-events-collection.sh <slug> [event_type] [limit]` |
| Stream real-time events | `opensea-stream-collection.sh <slug>` (requires websocat) |

_meta.json

{
  "ownerId": "kn7176r43k8cwrwyv9h52051z9809n51",
  "slug": "opensea-mcp",
  "version": "1.0.2",
  "publishedAt": 1770513419679
}

references/marketplace-api.md

# OpenSea Marketplace API

This reference covers the marketplace endpoints for buying and selling NFTs on OpenSea.

## Overview

OpenSea uses the **Seaport protocol** for all marketplace orders. The API provides endpoints to:
- Query existing listings and offers
- Build new listings and offers (returns unsigned Seaport orders)
- Fulfill orders (accept listings or offers)
- Cancel orders

**Important**: Creating and fulfilling orders requires wallet signatures. The API returns order data that must be signed client-side before submission.

## Base URL and Authentication

```
Base URL: https://api.opensea.io/api/v2
Auth: x-api-key: $OPENSEA_API_KEY
```

## Supported Chains

| Chain | Identifier |
|-------|------------|
| Ethereum | `ethereum` |
| Polygon | `matic` |
| Arbitrum | `arbitrum` |
| Optimism | `optimism` |
| Base | `base` |
| Avalanche | `avalanche` |
| Klaytn | `klaytn` |
| Zora | `zora` |
| Blast | `blast` |
| Sepolia (testnet) | `sepolia` |

---

## Read Operations (GET)

### Get Best Listing for NFT

Returns the lowest-priced active listing for an NFT.

```bash
GET /api/v2/listings/collection/{collection_slug}/nfts/{identifier}/best
```

**Parameters:**
- `collection_slug`: Collection slug (e.g., `boredapeyachtclub`)
- `identifier`: NFT identifier (token ID)

**Example:**
```bash
scripts/opensea-get.sh "/api/v2/listings/collection/boredapeyachtclub/nfts/1234/best"
```

### Get Best Offer for NFT

Returns the highest active offer for an NFT.

```bash
GET /api/v2/offers/collection/{collection_slug}/nfts/{identifier}/best
```

**Example:**
```bash
scripts/opensea-get.sh "/api/v2/offers/collection/boredapeyachtclub/nfts/1234/best"
```

### Get All Listings for Collection

Returns all active listings for a collection.

```bash
GET /api/v2/listings/collection/{collection_slug}/all
```

**Query parameters:**
- `limit`: Page size (default 50, max 100)
- `next`: Cursor for pagination

**Example:**
```bash
scripts/opensea-listings-collection.sh boredapeyachtclub 50
```

### Get All Offers for Collection

Returns all active offers for a collection.

```bash
GET /api/v2/offers/collection/{collection_slug}/all
```

**Example:**
```bash
scripts/opensea-offers-collection.sh boredapeyachtclub 50
```

### Get Listings for Specific NFT

```bash
GET /api/v2/orders/{chain}/seaport/listings
```

**Query parameters:**
- `asset_contract_address`: Contract address
- `token_ids`: Comma-separated token IDs
- `limit`, `next`: Pagination

**Example:**
```bash
scripts/opensea-get.sh "/api/v2/orders/ethereum/seaport/listings" "asset_contract_address=0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d&token_ids=1234"
```

### Get Offers for Specific NFT

```bash
GET /api/v2/orders/{chain}/seaport/offers
```

**Query parameters:**
- `asset_contract_address`: Contract address
- `token_ids`: Comma-separated token IDs

**Example:**
```bash
scripts/opensea-get.sh "/api/v2/orders/ethereum/seaport/offers" "asset_contract_address=0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d&token_ids

references/rest-api.md

# OpenSea REST API Reference

## Base URL and Authentication

```
Base URL: https://api.opensea.io
Auth header: x-api-key: $OPENSEA_API_KEY
```

## Pagination

List endpoints support cursor-based pagination:
- `limit`: Page size (default varies, max 100)
- `next`: Cursor token from previous response

## Supported Chains

| Chain | Identifier |
|-------|------------|
| Ethereum | `ethereum` |
| Polygon | `matic` |
| Arbitrum | `arbitrum` |
| Optimism | `optimism` |
| Base | `base` |
| Avalanche | `avalanche` |
| Klaytn | `klaytn` |
| Zora | `zora` |
| Blast | `blast` |
| Sepolia (testnet) | `sepolia` |

## Endpoint Reference

### Collections

| Endpoint | Method | Description |
|----------|--------|-------------|
| `/api/v2/collections/{slug}` | GET | Single collection details |
| `/api/v2/collections/{slug}/stats` | GET | Collection statistics (floor, volume) |
| `/api/v2/collections` | GET | List multiple collections |

### NFTs

| Endpoint | Method | Description |
|----------|--------|-------------|
| `/api/v2/chain/{chain}/contract/{contract}/nfts/{token_id}` | GET | Single NFT details |
| `/api/v2/collection/{slug}/nfts` | GET | NFTs by collection |
| `/api/v2/chain/{chain}/account/{address}/nfts` | GET | NFTs by wallet |
| `/api/v2/chain/{chain}/contract/{contract}/nfts` | GET | NFTs by contract |
| `/api/v2/nft/{contract}/{token_id}/refresh` | POST | Refresh NFT metadata |

### Listings

| Endpoint | Method | Description |
|----------|--------|-------------|
| `/api/v2/listings/collection/{slug}/all` | GET | All listings for collection |
| `/api/v2/listings/collection/{slug}/nfts/{token_id}/best` | GET | Best listing for NFT |
| `/api/v2/orders/{chain}/seaport/listings` | GET | Listings by contract/token |
| `/api/v2/orders/{chain}/seaport/listings` | POST | Create new listing |
| `/api/v2/listings/fulfillment_data` | POST | Get buy transaction data |

### Offers

| Endpoint | Method | Description |
|----------|--------|-------------|
| `/api/v2/offers/collection/{slug}/all` | GET | All offers for collection |
| `/api/v2/offers/collection/{slug}/nfts/{token_id}/best` | GET | Best offer for NFT |
| `/api/v2/orders/{chain}/seaport/offers` | GET | Offers by contract/token |
| `/api/v2/orders/{chain}/seaport/offers` | POST | Create new offer |
| `/api/v2/offers/fulfillment_data` | POST | Get sell transaction data |

### Orders

| Endpoint | Method | Description |
|----------|--------|-------------|
| `/api/v2/orders/chain/{chain}/protocol/{protocol}/{hash}` | GET | Get order by hash |
| `/api/v2/orders/chain/{chain}/protocol/{protocol}/{hash}/cancel` | POST | Cancel order |

### Events

| Endpoint | Method | Description |
|----------|--------|-------------|
| `/api/v2/events/collection/{slug}` | GET | Events by collection |
| `/api/v2/events/chain/{chain}/contract/{contract}/nfts/{token_id}` | GET | Events by NFT |
| `/api/v2/events/chain/{chain}/account/{address}` | GET | Events by account |

### Accounts

| Endpoint | Method | Description |
|

references/seaport.md

# Seaport (OpenSea marketplace protocol)

## What it is
Seaport is the marketplace protocol used for OpenSea orders. All listings and offers on OpenSea are Seaport orders under the hood.

## Order structure
- **Offer items**: What the offerer provides (e.g., an NFT for listings, WETH for offers)
- **Consideration items**: What the offerer expects to receive (e.g., ETH payment + fees)

## Seaport Contract Addresses

| Chain | Seaport 1.6 Address |
|-------|---------------------|
| All EVM chains | `0x0000000000000068F116a894984e2DB1123eB395` |

Legacy Seaport 1.4: `0x00000000000000ADc04C56Bf30aC9d3c0aAF14dC`

---

## Buying NFTs (Fulfilling Listings)

**No SDK required!** The OpenSea API returns ready-to-use calldata.

### Workflow

1. **Find a listing** - Get order hash from listings endpoint
2. **Get fulfillment data** - POST to fulfillment endpoint
3. **Submit transaction** - Send calldata directly to blockchain

### Step 1: Get Listings

```bash
# Via script
./scripts/opensea-listings-collection.sh basenames

# Via MCP
mcporter call opensea.get_listings collection="basenames" limit=10
```

Note the `order_hash` and `protocol_address` from the response.

### Step 2: Get Fulfillment Calldata

```bash
# Via script
./scripts/opensea-fulfill-listing.sh base 0xORDER_HASH 0xYOUR_WALLET

# Via curl
curl -X POST "https://api.opensea.io/api/v2/listings/fulfillment_data" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $OPENSEA_API_KEY" \
  -d '{
    "listing": {
      "hash": "0xORDER_HASH",
      "chain": "base",
      "protocol_address": "0x0000000000000068F116a894984e2DB1123eB395"
    },
    "fulfiller": {
      "address": "0xYOUR_WALLET"
    }
  }'
```

**Response contains:**
- `fulfillment_data.transaction.to` - Seaport contract
- `fulfillment_data.transaction.value` - ETH to send (wei)
- `fulfillment_data.transaction.input_data` - Encoded calldata

### Step 3: Submit Transaction

```javascript
import { createPublicClient, createWalletClient, http } from 'viem';
import { privateKeyToAccount } from 'viem/accounts';
import { base } from 'viem/chains';

const account = privateKeyToAccount(PRIVATE_KEY);
const wallet = createWalletClient({ account, chain: base, transport: http() });
const pub = createPublicClient({ chain: base, transport: http() });

// From fulfillment response
const txData = response.fulfillment_data.transaction;

const hash = await wallet.sendTransaction({
  to: txData.to,
  data: txData.input_data.parameters ? encodeSeaportCall(txData.input_data) : txData.data,
  value: BigInt(txData.value)
});

const receipt = await pub.waitForTransactionReceipt({ hash });
console.log(receipt.status === 'success' ? '✅ NFT purchased!' : '❌ Failed');
```

### Complete Working Example

```javascript
// buy-nft.mjs - Buy an NFT via OpenSea fulfillment API
import { createPublicClient, createWalletClient, http, encodeFunctionData } from 'viem';
import { privateKeyToAccount } from 'viem/accounts';
import { base } from 'viem/chains';

const SEAPO
Github ReposUpdated 6mo agoRank 70

activepieces

AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents

OPENCLAW
Github ReposUpdated 6mo agoRank 70

cherry-studio

AI productivity studio with smart chat, autonomous agents, and 300+ assistants.

MCPOPENCLAW
Github ReposUpdated 6mo agoRank 70

AionUi

Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!

MCPOPENCLAW
Github ReposUpdated 7mo agoRank 70

CopilotKit

The Frontend for Agents & Generative UI. React + Angular

OPENCLAW

Machine-readable data

The same record, as JSON, for agents and crawlers.

{
  "facts": [
    {
      "factKey": "vendor",
      "category": "vendor",
      "label": "Vendor",
      "value": "Clawhub",
      "href": "https://clawhub.ai/dfinzer/opensea-mcp",
      "sourceUrl": "https://clawhub.ai/dfinzer/opensea-mcp",
      "sourceType": "profile",
      "confidence": "medium",
      "observedAt": "2026-04-15T00:45:39.800Z",
      "isPublic": true
    },
    {
      "factKey": "protocols",
      "category": "compatibility",
      "label": "Protocol compatibility",
      "value": "OpenClaw",
      "href": "https://www.xpersona.co/api/v1/agents/clawhub-dfinzer-opensea-mcp/contract",
      "sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-dfinzer-opensea-mcp/contract",
      "sourceType": "contract",
      "confidence": "medium",
      "observedAt": "2026-04-15T00:45:39.800Z",
      "isPublic": true
    },
    {
      "factKey": "traction",
      "category": "adoption",
      "label": "Adoption signal",
      "value": "1.5K downloads",
      "href": "https://clawhub.ai/dfinzer/opensea-mcp",
      "sourceUrl": "https://clawhub.ai/dfinzer/opensea-mcp",
      "sourceType": "profile",
      "confidence": "medium",
      "observedAt": "2026-04-15T00:45:39.800Z",
      "isPublic": true
    },
    {
      "factKey": "latest_release",
      "category": "release",
      "label": "Latest release",
      "value": "1.0.2",
      "href": "https://clawhub.ai/dfinzer/opensea-mcp",
      "sourceUrl": "https://clawhub.ai/dfinzer/opensea-mcp",
      "sourceType": "release",
      "confidence": "medium",
      "observedAt": "2026-02-08T01:16:59.679Z",
      "isPublic": true
    },
    {
      "factKey": "handshake_status",
      "category": "security",
      "label": "Handshake status",
      "value": "UNKNOWN",
      "href": "https://www.xpersona.co/api/v1/agents/clawhub-dfinzer-opensea-mcp/trust",
      "sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-dfinzer-opensea-mcp/trust",
      "sourceType": "trust",
      "confidence": "medium",
      "observedAt": null,
      "isPublic": true
    }
  ],
  "events": [
    {
      "eventType": "release",
      "title": "Release 1.0.2",
      "description": "Version 1.0.2 - Documentation updates only; no file or code changes detected. - No impact to functionality or interfaces.",
      "href": "https://clawhub.ai/dfinzer/opensea-mcp",
      "sourceUrl": "https://clawhub.ai/dfinzer/opensea-mcp",
      "sourceType": "release",
      "confidence": "medium",
      "observedAt": "2026-02-08T01:16:59.679Z",
      "isPublic": true
    }
  ]
}

Record generated Oct 9, 2026.

Sponsored

Ads related to OpenSea and adjacent AI workflows.