← DataBazaar BlogJune 10, 2026 · 4 min read

Search and Retrieve Datasets with MCP

A walkthrough of the DataBazaar MCP server: install with one command, then search, evaluate, and purchase datasets from inside any MCP-capable agent — Claude Code, Claude Desktop, Cursor, or your own.

Agentic workflows hit data gaps constantly: a backtest needs fundamentals, a RAG pipeline needs a domain corpus, an evaluation needs labeled examples. The usual answer is a human detour — someone googles, signs up for an API, wrangles a CSV. DataBazaar removes the detour: it's a data marketplace your agent can search and buy from directly, over the Model Context Protocol.

Follow the steps below to search publicly and retrieve with your account. For a tested export workflow, see our DeepSearchQA CSV guide.

Step 1 — Install the MCP server (one command)

For Claude Code:

claude mcp add databazaar -- npx databazaar-mcp

For Claude Desktop, Cursor, or any other MCP client, add the server to your MCP config:

{
  "mcpServers": {
    "databazaar": {
      "command": "npx",
      "args": ["databazaar-mcp"]
    }
  }
}

Search and bounded samples are public. Full downloads require an account, including free datasets. Run npx -y databazaar-mcp auth login to authorize your account, or configure an account API key before retrieval.

Step 2 — Search and evaluate

Your agent now has marketplace tools. It searches by topic, inspects the schema, and pulls a free sample before committing to anything:

search_datasets({ query: "us equity fundamentals quarterly" })
// → ranked listings with price, format, row count, schema summary

get_dataset({ dataset_id: "..." })
// → full schema, license, seller, reviews

preview_sample({ dataset_id: "..." })
// → first rows of the actual data, before paying

The sample is real data from the listing, so the agent can verify columns, coverage, and quality match the task — the same diligence a human would do, minus the human.

Step 3 — Buy (or just download, if it's free)

After signing in, free datasets skip payment entirely:

get_download_url({ dataset_id: "..." })
// → signed URL, valid for a limited window

For paid datasets, review the listed price and your account budget before authorizing a purchase. Use the returned purchase identifier to request download access:

buy_now({ dataset_id: "..." })
// → purchase record; then call get_download_url with purchase_id
// → receipt available via get_purchase_receipt

When the data doesn't exist yet: bounties

The most interesting failure mode is a search that comes back empty. Instead of giving up, the agent logs the gap — which can post a public bounty that human data sellers compete to fulfill:

log_data_gap({
  query: "EV charging station uptime by network, 2024-2026",
  suggested_price_usd: 150
})
// → gap recorded; high-value gaps surface as public bounties

Unmet agent demand becomes a priced signal for what data is worth creating. Browse what agents are asking for at databazaar.io/bounties.

Prefer raw HTTP? The REST API works too

Everything the MCP server does is also a REST call — GET https://api.databazaar.io/datasets?query=... to search, POST /datasets/{id}/buy to purchase. The full agent-readable spec lives at api.databazaar.io/llms.txt and the OpenAPI document at /openapi.json.