MCP tools list: every tool in our three servers
The list at a glance
Three servers, 12 tools. dataset-mcp queries fixed dataset files with filters and stats. earn-bounty-scanner reads the live Superteam Earn feed. solana-research-library serves a curated research database that ships inside the package.
| Server | Tools | Data source | Install |
|---|---|---|---|
| dataset-mcp | 5 | 149,673 rows across 5 datasets, downloaded once from a public GitHub release | npx -y github:jayjex/dataset-mcp |
| earn-bounty-scanner | 3 | live Superteam Earn API at superteam.fun, fetched per call | git clone https://github.com/jayjex/earn-bounty-scanner then node index.js (not on npm yet) |
| solana-research-library | 4 | 25 field-probed platforms, database ships in the package, no network at runtime | git clone https://github.com/jayjex/solana-research-library then node index.js (not on npm yet) |
All three are MIT-licensed, need no API key, and run on Node.js 18 or newer.
dataset-mcp: 5 tools over the dataset catalog
Version 1.1.0, listed in the MCP registry as io.github.jayjex/dataset-mcp. It downloads a dataset file once into ~/.cache/dataset-mcp/, pins it with SHA-256, then answers queries from memory. Full server docs are on the MCP server for datasets page.
| Tool | What it returns |
|---|---|
list_datasets() | every dataset in the catalog with row counts, update dates, and full-query availability |
get_dataset_info(slug) | one dataset's file list with rows, bytes, SHA-256, attribution, license, and query tips |
get_sample(slug, format) | free preview rows, about 22 per dataset, JSON or CSV |
query_dataset(slug, {...}) | filter and paginate the full file: where clauses with =, contains, gt, lt, column picking, 100 rows per call, next_offset paging |
get_stats(slug, {...}) | row count, non-empty and unique counts, numeric min/max/mean, top-N frequencies |
list_datasets() output
{
"catalog": "Data Vault",
"last_built": "2026-09-09",
"count": 6,
"datasets": [
{
"slug": "nfl-games",
"name": "NFL Games & Betting Lines 1999-2026",
"stats": { "rows": 7548, "tables": 3, "columns": 46, "updated": "2026-09-06" },
"full_query": { "available": true, "release": "https://github.com/jayjex/dataset-mcp/releases/tag/data-v1" }
},
...
]
}
query_dataset() output: Texas 2-bedroom rents
query_dataset("hud-fmr-2026",
{ where: [{ column: "state", op: "=", value: "TX" }],
columns: ["zip", "area_name", "fmr_2br"], limit: 2 })
total_rows_in_file: 51895 | total_matched: 3247 | next_offset: 2
sha256: 04ffb4597f37de264a2e3c91d39462b44539f650bd7f30b2938ca73971fbe975
{"zip": "76437", "area_name": "Abilene, TX MSA", "fmr_2br": "1090"}
{"zip": "76443", "area_name": "Abilene, TX MSA", "fmr_2br": "1090"}
get_stats() output: NYC Airbnb prices
get_stats("airbnb-six-cities", { file: "airbnb-new-york-city.csv", column: "price" })
rows: 30234 | non_empty: 20331 | unique_count: 12114
numeric: min 4.58 | max 31210.79 | mean 267.35
top values: 59.11 x62, 61.01 x45, 209.00 x32, 279.00 x30, 165.93 x28
earn-bounty-scanner: 3 tools over the live Earn feed
Version 1.0.0, listed in the MCP registry as io.github.jayjex/earn-bounty-scanner. It wraps public superteam.fun API endpoints with plain fetch, no auth, and returns the full description text through an undocumented search-index endpoint. Where dataset-mcp serves the fixed 2026-09-04 snapshot, this server answers with the feed as it is at call time.
| Tool | What it returns |
|---|---|
search_bounties(query) | bounties matching a keyword with id, title, reward, deadline, status, agentAccess, sponsor, and the full description text; short single keywords recall best |
get_bounty(id) | one bounty's complete details by listing uuid, including full description text |
recent_bounties() | currently OPEN bounties from the live feed, page 1, newest first, with agentAccess flags |
agentAccess is the field agents care about: AGENT_ALLOWED means an agent may submit, HUMAN_ONLY means bot submitters are barred.
recent_bounties() output
{
"count": 26,
"bounties": [
{
"title": "Create Content for Breakpoint 2026",
"status": "OPEN",
"rewardAmount": 8000,
"token": "USDG",
"deadline": "2026-09-07T21:59:59.999Z",
"agentAccess": "HUMAN_ONLY",
"sponsor": "Superteam Germany",
"url": "https://superteam.fun/earn/listings/bounty/create-content-for-breakpoint-2026"
},
{
"title": "Solana Summit Serbia Content Bounty: $10,000 for the best summit content",
"status": "OPEN",
"rewardAmount": 10000,
"token": "USDG",
"deadline": "2026-09-10T21:59:59.000Z",
"agentAccess": "HUMAN_ONLY",
"sponsor": "Superteam Balkan"
},
...
]
}
search_bounties() output: keyword "solana"
{
"query": "solana",
"count": 5,
"results": [
{
"title": "Solana Summit Serbia Content Bounty: $10,000 for the best summit content",
"rewardAmount": 10000,
"token": "USDG",
"status": "OPEN",
"sponsor": "Superteam Balkan",
"description": "Solana Summit Serbia is the biggest Solana event in Europe this summer: a two-day
conference on Aug 26-27 at Sava Centar, Belgrade ... Prizes: 20 winners x $500 ..."
},
...
]
}
The description field carries the complete bounty text, not a teaser, so the agent reads requirements and judges fit without opening a browser. Hyphenated titles return 0 search rows; search one distinctive word instead.
solana-research-library: 4 tools over a research database
Version 1.0.0. It serves a curated intelligence DB of 25 Solana/web3 earning platforms, each field-probed on 2026-09-04 with a verdict (LIVE-RAIL / USER-GATED / CONDITIONAL-PASS / WATCHLIST / DEAD), the exact payout rail, the KYC gate, and evidence notes. The database ships inside the package, so tools answer instantly and an upstream outage cannot fail a call.
| Tool | What it returns |
|---|---|
list_topics() | the index of all 25 entries: platform, category, verdict, payout rail, KYC, chains |
get_topic(idOrName) | one entry's full evidence notes and source brief, matched by id, exact name, or unique fragment |
search_topics(query) | keyword search over names, categories, rails, KYC gates, and notes, ranked by term frequency |
stats() | dataset shape: verdict mix, category mix, KYC-free share, crypto-rail share, live-rail shortlist |
search_topics() output: "no KYC"
{
"query": "no KYC",
"matches": 6,
"topics": [
{
"id": "apify-store",
"platform": "Apify Store (scraper marketplace)",
"verdict": "DEAD",
"payoutRail": "fiat only — PayPal/Wise ($20 min) or other fiat ($100 min); NO crypto",
"kyc": "mandatory: gov ID, proof of address, tax docs, UBO info",
"snippet": "Demand real ($1M+/mo paid to devs, 54.5k Actors, 80% dev share ...) ...
Usable ONLY as free distribution upselling to your own x402 endpoints."
},
...
]
}
get_topic() output: "bountybook"
{
"id": "bountybook",
"platform": "Bountybook.ai agent-bounty venue",
"category": "agent-bounties",
"verdict": "CONDITIONAL-PASS",
"payoutRail": "USDC on Base escrowed (official USDC 0x833589fC…A02913) into treasury
0x1bc6c226…, instant release on oracle pass",
"kyc": "none (wallet nonce auth; claiming/submitting free)",
"notes": "API-only flow (claim, submit, get paid), no browser needed. /stats: 206 jobs,
$947 budget, $174.71 totalPaidOut, 54 completed. Experimental PoC, unaudited contracts,
LLM oracle final + probabilistic ... Treat as submit-only, never deposit, expect rejects.",
"source": "x402-bounty-audit.md (2026-09-04)"
}
stats() output
{
"entries": 25,
"verdictMix": { "LIVE-RAIL": 4, "USER-GATED": 6, "CONDITIONAL-PASS": 2, "WATCHLIST": 2, "DEAD": 11 },
"kycFreeEntries": 13,
"cryptoRailEntries": 18,
"liveRails": ["x402 pay-per-call data endpoints", "FiatDock MCP marketplace",
"First Dollar bounty platform", "Hive write-to-earn"]
}
The 11 DEAD entries are kill-logged with reasons, so an agent checking this library skips re-researching lanes that already failed verification.
Connect all three at once
Drop this into claude_desktop_config.json (or the mcp_servers TOML form for pi and Codex) and restart the client:
{
"mcpServers": {
"dataset-mcp": {
"command": "npx",
"args": ["-y", "github:jayjex/dataset-mcp"]
},
"earn-bounty-scanner": {
"command": "npx",
"args": ["-y", "earn-bounty-scanner"]
},
"solana-research-library": {
"command": "npx",
"args": ["-y", "solana-research-library"]
}
}
}
On npm 12, dataset-mcp needs --allow-git=all before -y; see the MCP server for Claude Desktop guide for that and the full walkthrough. A Claude-focused index of the same three servers, with each README's config JSON and registry entry: MCP tools for Claude. Prefer picking servers from a directory instead of hand-wiring config? The MCP server directory lists the official registry, the community indexes, and these three servers.
To verify a server's tool list yourself, the raw JSON-RPC over stdio is three lines: an initialize request, notifications/initialized, then {"jsonrpc":"2.0","id":2,"method":"tools/list"}. The response is the same list a client shows in its tools menu.
Get the full pack
These servers answer questions. A real project usually wants the raw files in its own pipeline: pinned snapshots, spreadsheets, scripts that run without a chat client. The complete packs behind the datasets are available as one-off downloads:
| Pack | Rows | What you get |
|---|---|---|
| NFL games and betting lines 1999-2026 | 7,548 | full CSV zip: scores, spreads, totals, moneylines |
| HUD Fair Market Rents FY2026 | 51,895 | ZIP, county, and state tables with a data dictionary |
| Airbnb listings, 6 US cities | 90,169 | per-city CSVs, 2026 snapshots |
| Superteam Earn listings and API routes | 51 cards | cards file plus 186+ reverse-engineered API routes |
Sample files stay free on the free datasets for AI agents page, and the tool-level docs live on the dataset-mcp server page. For the data behind the examples above, see the HUD rent data guide and the Superteam Earn data guide.
FAQ
What is an MCP tools list?
The set of tools an MCP server advertises to clients. Your client sends a tools/list request over JSON-RPC, the server responds with each tool's name, description, and input schema, and that response fills the tools menu in Claude Desktop or any other MCP client. This page indexes the 12 tools our three servers advertise.
How do I list an MCP server's tools myself?
Start the server over stdio, send an initialize request, then notifications/initialized, then a tools/list request. The server answers with the full tool catalog. Calling a tool is the same transport: a tools/call request with a name and arguments returns the output.
Which server should I use for Superteam Earn data?
earn-bounty-scanner for live data: it fetches superteam.fun at call time, so rewards and deadlines are current. dataset-mcp for a fixed snapshot: the earn-bounties dataset is a 51-card capture from 2026-09-04 with SHA-256 verification, which suits reproducible pipelines.
Are these MCP servers free to run?
Yes. All three are MIT-licensed and run locally over stdio with no API key. dataset-mcp downloads its data files once from a public GitHub release, earn-bounty-scanner fetches superteam.fun per call, and solana-research-library ships its database inside the package with no network calls.