nftdata-mcp
Retrieves OpenSea collection market data such as floor price, sales, volume, owners, total supply, contracts, and creation date by collection slug.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@nftdata-mcpWhat's the floor price and 7-day volume of the Azuki collection?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
nftdata-mcp
An MCP server that exposes the NFT Data API to AI clients (Claude Desktop, Cursor, etc.) as a single tool. It handles the x402 payment flow automatically.
Tool
get_collection_data
Returns OpenSea collection market data in one call.
Parameter | Type | Description |
| string | OpenSea collection slug, from |
Returned fields: name, slug, contracts, floor_price, floor_price_currency, one_day_sales, one_day_volume, seven_day_sales, seven_day_volume, thirty_day_sales, thirty_day_volume, total_sales, total_volume, num_owners, total_supply, created_date. Volume and price currencies are given in the matching *_currency fields (ETH, USDC, HYPE, ...).
Each call costs $0.002 (USDC on Base, paid via x402).
Related MCP server: nft-floor
Requirements
Node.js 20+
A wallet private key funded with a small amount of USDC on Base
Use a dedicated wallet with only a small balance. Never use your main wallet.
Quick start (npx)
No cloning required. Add to claude_desktop_config.json:
{
"mcpServers": {
"nftdata": {
"command": "npx",
"args": ["-y", "nftdata-mcp"],
"env": {
"EVM_PRIVATE_KEY": "0x..."
}
}
}
}Restart Claude Desktop, then ask for example: "What is the floor price and 7-day volume of azuki?"
If the package is published under a scope, use that name instead (e.g. @your-scope/nftdata-mcp).
Run from source
npm install
EVM_PRIVATE_KEY=0x... npm startTo use a local checkout with Claude Desktop, point args to ["tsx", "/absolute/path/to/nftdata-mcp/server.ts"] with "command": "npx".
Build
npm run build # compiles server.ts to dist/server.jsConfiguration
Variable | Required | Default | Description |
| yes | – | Private key of the wallet that pays for calls |
| no |
| Max paid requests per session |
| no |
| Override the API endpoint |
Behavior
Sends
POST /api/get-collection-datawith body{"collection": "<slug>"}.On
402 Payment Required, signs an x402 payment (Base, USDC) and retries.Caches responses for 5 minutes per slug to avoid paying twice.
Stops after
NFTDATA_MAX_REQUESTSpaid calls per session.Returns clear errors for
400(invalid slug),404(collection not found) and429(rate limit, withRetry-After).
Limitations
Only x402 on Base is supported. Solana and MPP payment methods are not implemented in this wrapper.
The x402 client libraries change quickly; if imports fail, check the current x402 docs.
API reference
Available Tools
1 toolget_collection_dataA
Get OpenSea NFT collection market data in one call: name, contracts, floor price, 1/7/30-day and lifetime sales and volume, unique owners, total supply, creation date. Costs $0.002 per call (x402). collection is the OpenSea slug from the collection URL: opensea.io/collection/ (e.g. 'azuki', 'basedpunks'). Prices are in the currency given in the *_currency fields (ETH, USDC, HYPE...).
| Name | Required | Description | Default |
|---|---|---|---|
| collection | Yes | OpenSea collection slug, e.g. 'azuki' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does well: it discloses the per-call price and payment mechanism (x402), the fact that currency varies per field (*_currency fields may be ETH, USDC, HYPE), and the full set of returned data. It does not cover freshness (real-time vs cached), rate limits, or failure behavior for an invalid slug, which keeps it out of the top band.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the purpose, then cost, then parameter format, then a currency caveat — each sentence carries distinct information and none repeats the schema or annotations. The field enumeration is long but justified because there is no output schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read tool with no annotations and no output schema, the description covers returns, cost, parameter derivation, and price-currency semantics, which is nearly everything an agent needs. Only data freshness and error behavior on a bad slug are left unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% so the baseline is 3; the description earns above baseline by explaining how to derive the value ('the OpenSea slug from the collection URL: opensea.io/collection/<slug>') and adding a second example beyond the schema's 'azuki', which is operational knowledge the schema does not supply.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get OpenSea NFT collection market data') and then enumerates the exact payload (floor price, 1/7/30-day and lifetime sales/volume, unique owners, supply, creation date), so an agent knows precisely what it receives. No siblings exist to disambiguate against, and none is needed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the call context clear ('in one call', market-data snapshot for a given collection) and discloses the $0.002 x402 cost, which is a real usage consideration for an agent deciding whether to call. It stops short of stating when not to use it or naming an alternative, but with no sibling tools that omission costs little.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v1.0.0- First observed
get_collection_data
TDQS
Scored across 1 tool
With a single tool there is no possibility of misselection; the tool targets one clear resource (an OpenSea collection by slug) and one action (fetch aggregated market data).
The name follows a clean verb_noun convention (get_collection_data), which is readable and predictable. With only one tool there is no broader pattern to reinforce, so it falls just short of exemplary.
A single tool is a very thin surface for a server named 'nftdata'; agents will hit dead ends whenever they need anything beyond one collection's aggregate snapshot. The domain implies multiple query types but only one is exposed.
The tool covers one snapshot of one collection but there is no way to discover or list collections, search by name, compare collections, or retrieve historical/time-series trends. This is a significant gap for anything resembling an NFT data server.
Maintenance
Related MCP Connectors
Pay-per-use tool API for AI agents. Free tier, x402 USDC micropayments, or API key.
Pay-per-use weather, environment, finance, and on-chain intelligence tools for AI agents via x402.
Market data and web intelligence for AI agents, paid per call in USDC on Base via x402.
Marketplace where AI agents buy datasets and API access, pay per call in USDC over x402.
Related MCP Servers
- AlicenseAqualityCmaintenanceProvides 16 crypto market data tools for MCP-compatible AI clients with x402/USDC micropayments on Base Mainnet.1621 npmMIT
- AlicenseNot gradedqualityCmaintenanceNFT collection floor price, volume, holders, rarity data for Ethereum and Base via Alchemy. Pay-per-call via x402 (USDC on Base L2) without API key or signup.MIT
- AlicenseAqualityCmaintenanceEnables AI agents to fetch crypto market and on-chain data, including prices across venues, token facts, OHLC candles, market overview, DeFi TVL, and wallet balances, with two free tools and the rest paid per call in USDC on Base via x402.818 npmMIT
- AlicenseAqualityCmaintenanceEnables AI agents to access pay-per-call Base and Polygon onchain data (balances, tokens, transactions, gas, blocks, and trending pairs) settled in USDC via x402, with no API key required.18MIT