# OpenSea — how to use (mcp.ai)

Connect your OpenSea account and use 24 tools for ecommerce straight from your AI agent. Connect with your own API key. OpenSea is the world's first and largest NFT marketplace for NFTs and crypto collectibles.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_open_sea?ms=1787293500000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `open_sea_build_criteria_offer`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/open_sea`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/open_sea/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/open_sea/build/criteria/offer` — Build a portion of a criteria offer including the merkle tree needed to post an offer.
  - body: { offerer: string, criteria: object, quantity?: integer }
- `POST https://api.mcp.ai/api/open_sea/cancel/order` — Offchain cancel a single order, offer or listing, by its order hash when protected by the SignedZone. Protocol and Chain are required to prevent hash collisions. Please note cancellation is only assur
  - body: { chain: string, order_hash: string, protocol_address: string, offerer_signature?: string }
- `POST https://api.mcp.ai/api/open_sea/create/criteria/offer` — Create a criteria offer to purchase any NFT in a collection or which matches the specified trait.
  - body: { protocol_data: object }
- `POST https://api.mcp.ai/api/open_sea/create/item/offer` — Create an offer to purchase a single NFT (ERC721 or ERC1155).
  - body: { chain: string, protocol: string, signature: string, parameters: object, protocol_address: string }
- `POST https://api.mcp.ai/api/open_sea/create/listing` — List a single NFT (ERC721 or ERC1155) for sale on the OpenSea marketplace.
  - body: { chain: string, protocol: string, signature: string, parameters: object, protocol_address: string }
- `POST https://api.mcp.ai/api/open_sea/fulfill/listing` — Retrieve all the information, including signatures, needed to fulfill a listing directly onchain.
  - body: { listing: object }
- `POST https://api.mcp.ai/api/open_sea/fulfill/offer` — Retrieve all the information, including signatures, needed to fulfill an offer directly onchain.
  - body: { offer: object }
- `POST https://api.mcp.ai/api/open_sea/get/account` — Get an OpenSea Account Profile including details such as bio, social media usernames, and profile image.
  - body: { address_or_username: string }
- `POST https://api.mcp.ai/api/open_sea/get/all/listings/by/collection` — Get all active, valid listings for a single collection.
  - body: { next?: string, limit?: integer, collection_slug: string }
- `POST https://api.mcp.ai/api/open_sea/get/all/offers/by/collection` — Get all active, valid offers for the specified collection. This includes individual and criteria offers.
  - body: { next?: string, limit?: integer, collection_slug: string }
- `POST https://api.mcp.ai/api/open_sea/get/best/listing/by/nft` — Get the best listing for an NFT.
  - body: { identifier: string, collection_slug: string, include_private_listings?: boolean }
- `POST https://api.mcp.ai/api/open_sea/get/best/listings/by/collection` — Get the cheapest priced active, valid listings on a single collection.
  - body: { next?: string, limit?: integer, collection_slug: string, include_private_listings?: boolean }
- `POST https://api.mcp.ai/api/open_sea/get/best/offer/by/nft` — Get the best offers for an NFT.
  - body: { identifier: string, collection_slug: string }
- `POST https://api.mcp.ai/api/open_sea/get/collection` — Get a single collection including details such as fees, traits, and links.
  - body: { collection_slug: string }
- `POST https://api.mcp.ai/api/open_sea/get/collection/stats` — Get stats for a single collection on OpenSea.
  - body: { collection_slug: string }
- `POST https://api.mcp.ai/api/open_sea/get/collections` — Get a list of OpenSea collections with optional filtering and pagination.
  - body: { next?: string, chain?: string, limit?: integer, order_by?: string, include_hidden?: boolean, creator_username?: string }
- `POST https://api.mcp.ai/api/open_sea/get/contract` — Get a smart contract for a given chain and address.
  - body: { chain: string, address: string }
- `POST https://api.mcp.ai/api/open_sea/get/events` — Get a list of events from OpenSea based on various filters like timestamps and event types.
  - body: { next?: string, after?: integer, limit?: integer, before?: integer, event_type?: string[] }
- `POST https://api.mcp.ai/api/open_sea/get/listings` — Get the complete set of active, valid listings.
  - body: { chain: string, limit?: integer, maker?: string, taker?: string, cursor?: string, order_by?: string, protocol: string, token_ids?: integer[], listed_after?: string, listed_before?: string, order_direction?: string, payment_token_address?: string, asset_contract_address?: string }
- `POST https://api.mcp.ai/api/open_sea/get/nft` — Get metadata, traits, ownership information, and rarity for a single NFT.
  - body: { chain: string, address: string, identifier: string }
- `POST https://api.mcp.ai/api/open_sea/get/order` — Get a single order, offer or listing, by its order hash. Protocol and Chain are required to prevent hash collisions.
  - body: { chain: string, order_hash: string, protocol_address: string }
- `POST https://api.mcp.ai/api/open_sea/get/payment/token` — Get a smart contract for a given chain and address.
  - body: { chain: string, address: string }
- `POST https://api.mcp.ai/api/open_sea/get/traits` — Get the traits in a collection.
  - body: { collection_slug: string }
- `POST https://api.mcp.ai/api/open_sea/refresh/nft/metadata` — Refresh metadata for a single NFT.
  - body: { chain: string, address: string, identifier: string }

## Example prompts
- "What can I do in OpenSea?"
- "Show me a summary of my OpenSea account"

## More
- Page: https://mcp.ai/open_sea
- Agent spec (llms.txt): https://mcp.ai/open_sea/llms.txt
- Postman collection: https://mcp.ai/open_sea/postman.json
