Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Dataset Search

БесплатноНе проверен

Unified MCP server for discovering open datasets across Hugging Face, Zenodo, and Kaggle, with ranked search results and one-click Colab starter code generation

GitHubEmbed

Описание

Unified MCP server for discovering open datasets across Hugging Face, Zenodo, and Kaggle, with ranked search results and one-click Colab starter code generation.

README

Unified Model Context Protocol (MCP) server for open-dataset discovery. Search across Hugging Face, Zenodo, and optionally Kaggle, then generate ready-to-run Colab starter code for any result.


Live demo

You can try the search & ranking logic in a simple UI here: Open Dataset Finder (Hugging Face Spaces)


Features

  • Multi-source search: Hugging Face / Zenodo / Kaggle (when credentials are available)
  • Sensible ranking (BM25 + fuzzy + light recency weighting)
  • Kaggle API with automatic CLI fallback
  • Safe by default: the server returns metadata only (no server-side downloads)
  • One-click starter snippets for quick experimentation

Repository layout

dataset-search-mcp/
├─ src/
│  └─ dataset_search_mcp/
│     ├─ __init__.py
│     └─ server.py          # MCP server + tools
├─ examples/
│  ├─ claude-desktop.settings.json
│  └─ cursor.settings.json
├─ .github/workflows/
│  ├─ ci.yml
│  └─ release.yml
├─ Dockerfile
├─ pyproject.toml
├─ .dockerignore
├─ .gitignore
├─ LICENSE
└─ README.md

Install (local)

Requires Python 3.9+

pip install -e .
dataset-search-mcp

This starts the MCP server over stdio (awaiting an MCP client).


Docker

Build

docker build -t dataset-search-mcp:local .

Quick smoke test (import only)

docker run --rm --entrypoint python dataset-search-mcp:local -c \
"import importlib; m=importlib.import_module('dataset_search_mcp.server'); print('OK', hasattr(m,'main'))"
# Expected: OK True

Manual run (server waits for a client)

docker run -it --rm dataset-search-mcp:local

Using with Claude Desktop

Add the server to Settings → MCP Servers.

Simplest (Docker):

{
  "mcpServers": {
    "dataset-search-mcp": {
      "command": "docker",
      "args": ["run","-i","--rm","dataset-search-mcp:local"]
    }
  }
}

With Kaggle credentials:

{
  "mcpServers": {
    "dataset-search-mcp": {
      "command": "docker",
      "args": [
        "run","-i","--rm",
        "-e","KAGGLE_USERNAME=your_username",
        "-e","KAGGLE_KEY=your_api_key",
        "dataset-search-mcp:local"
      ]
    }
  }
}

Restart Claude Desktop and open a new chat.


Tools (overview)

search_datasets

Search public datasets across the supported sources.

Args (common):

  • query (string, required)
  • sources (optional): e.g. ["huggingface","zenodo"] Note: the server is tolerant—string forms like "huggingface, zenodo" also work.
  • limit (optional, default 40): per-source cap before ranking
  • format_filter (optional): e.g. "csv" or "json"

Example call (as JSON):

{"query":"korean weather","sources":["huggingface","zenodo"],"limit":10}

Returns: a ranked array of items, each with: source, id, title, description, updated, url, download_url, formats, score.


starter_code

Generate a small Python snippet to quickly try the selected dataset in Colab.

Args (typical):

  • source (e.g., "huggingface", "zenodo", "kaggle")
  • id
  • url (optional)
  • download_url (optional; if present and CSV, the snippet loads it directly)
  • formats (optional; used to choose the best snippet)

Kaggle credentials (brief)

Provide either environment variables:

export KAGGLE_USERNAME=your_username
export KAGGLE_KEY=your_api_key

or a file:

~/.kaggle/kaggle.json
{"username":"your_username","key":"your_api_key"}

Some Kaggle datasets require accepting terms on the website first.


How it works (short)

  • Hugging Face: list_datasets() plus optional dataset_info() for card details
  • Zenodo: REST search via GET /api/records
  • Kaggle: API first; fallback to CLI datasets list --csv
  • Ranking: BM25 + fuzzy matching + light recency factor; duplicates merged on (source,id)

Quick examples (in chat)

  • Search HF + Zenodo:
{"query":"korean weather","sources":["huggingface","zenodo"],"limit":10}
  • CSV-only on Zenodo:
{"query":"traffic accident Korea","sources":["zenodo"],"limit":20,"format_filter":"csv"}
  • Then request starter code using one of the returned items’ fields (source, id, url, download_url, formats).

from github.com/hyeonseo2/dataset-search-mcp

Установка Dataset Search

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/hyeonseo2/dataset-search-mcp

FAQ

Dataset Search MCP бесплатный?

Да, Dataset Search MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Dataset Search?

Нет, Dataset Search работает без API-ключей и переменных окружения.

Dataset Search — hosted или self-hosted?

Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.

Как установить Dataset Search в Claude Desktop, Claude Code или Cursor?

Открой Dataset Search на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Dataset Search with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории development