MobusMCP
Search, preview, and analyze datasets from 20+ platforms and millions of datasets via a single MCP connector. Works with Claude instantly
README
<div align="center">
Mobus
Dataset search for AI assistants Discover, preview, and analyze datasets across 20 platforms from a single conversation.
</div>
Connect to Claude
Add Mobus to Claude in under a minute. No install, no API keys, nothing to run.
- Open claude.ai (or Claude Desktop / Mobile)
- Go to Settings from the bottom left → Connectors
- Click Add custom connector
- Name it Mobus and paste this URL:
https://mobus-production.up.railway.app/mcp
- Start a new chat and try:
"Search for air quality datasets with a commercial license"
That's it. All 15 tools are available immediately.
<p align="center"> <video src="https://github.com/user-attachments/assets/a034855f-2c52-4691-8686-65ca97fe5d22" width="100%" autoplay loop muted></video> </p>
<p align="center"> <img alt="Mobus workflow: 5 stages, 15 tools" src="https://github.com/user-attachments/assets/c65b5f0c-fffe-4bd6-aacc-25277ff33aeb" width="100%" /> </p>
What it does
Just ask your AI assistant.
"Search for air-quality datasets with a commercial license" "Preview the first 20 rows of that Zenodo dataset" "Find SEC filings mentioning climate risk" "Generate an APA citation for that Hugging Face dataset" "Check if this dataset can be used commercially" "Visualize that dataset"
Mobus fans requests out to every configured platform in parallel, checks licenses, previews data, generates citations, and traces academic lineage — failing gracefully whenever an API key is missing.
Tools
<table> <tr><td width="50%" valign="top">
Discovery
search_datasets— search all 20 platforms at oncefind_research_datasets— datasets used in papersfind_similar— datasets similar to one you have
Evaluation
get_dataset_details— full metadatapreview_dataset— first N rowscompare_datasets— 2-5 side by side
Quality & Compliance
assess_quality— missing values, duplicates, statscheck_license— commercial / academic / internalcheck_compatibility— schema match against yours
</td><td width="50%" valign="top">
Citation & Output
generate_citation— APA, BibTeX, Chicagovisualize_dataset (Only works locally - ask Claude to generate an artifact).— interactive ECharts dashboardwatch_query— monitor for new datasets
Advanced Research
get_dataset_provenance— introducing paper & historyget_dataset_lineage— variants & derivativestrace_citation_graph— citation chain analysis
</td></tr> </table>
Supported platforms
<table> <tr><td valign="top">
No auth needed
- data.gov
- Zenodo
- OpenML
- UCI ML Repository
- AWS Open Data
- World Bank
- WHO GHO
- NASA Earthdata
- Eurostat
- arXiv
- Census.gov
- SEC EDGAR
- Crossref
</td><td valign="top">
Optional auth
- Hugging Face (faster w/ token)
- Socrata (faster w/ token)
- Semantic Scholar
Requires key
- Kaggle
- Google Dataset Search
Degraded
- Papers with Code (API shut down)
- Econdb (now requires key)
</td></tr> </table>
Missing keys automatically skip that platform. The server never crashes.
Run locally (optional)
If you prefer to self-host instead of using the hosted version above:
git clone https://github.com/hrantvirabyan/Mobus.git
cd Mobus
npm install
cp .env.example .env # fill in any keys you have (all optional)
npm run build
Cursor
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"mobus": {
"command": "node",
"args": ["/absolute/path/to/Mobus/dist/main.js"]
}
}
}
Restart Cursor. All 15 tools appear in the chat.
Claude Desktop
Same config format, in ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows).
API keys (all optional)
| Variable | For | Where |
|---|---|---|
KAGGLE_USERNAME / KAGGLE_KEY |
Kaggle | kaggle.com/account → API |
HF_TOKEN |
Hugging Face | huggingface.co/settings/tokens |
GOOGLE_API_KEY / GOOGLE_CSE_ID |
console.cloud.google.com | |
SOCRATA_APP_TOKEN |
Socrata | dev.socrata.com/register |
Tool reference
<details> <summary><b>Click to expand full parameter reference</b></summary>
search_datasets
| Parameter | Type | Default | Description |
|---|---|---|---|
query |
string | required | Search query |
sources |
string[] | all | Platforms to include |
limit |
number | 5 | Results per source (max 20) |
license |
string | — | e.g. cc-by-4.0 |
format |
string | — | e.g. csv, parquet |
updated_after |
string | — | ISO date |
modality |
string | — | e.g. tabular, image |
get_dataset_details
| Parameter | Type | Description |
|---|---|---|
source |
string | Platform |
dataset_id |
string | Dataset ID |
preview_dataset
| Parameter | Type | Default | Description |
|---|---|---|---|
source / dataset_id |
string | required | — |
rows |
number | 10 | Max 100 |
visualize_dataset (Only works locally - ask Claude to generate an artifact)
Generates an interactive ECharts dashboard with column picker, filter builder, row range selector, 9 chart types, sortable table, and PNG/SVG/CSV/JSON export.
| Parameter | Type | Default | Description |
|---|---|---|---|
source / dataset_id |
string | required | — |
rows |
number | 200 | Max 500 |
open |
boolean | true | Auto-open browser |
compare_datasets
| Parameter | Type | Description |
|---|---|---|
datasets |
array | 2-5 {source, dataset_id} objects |
check_compatibility
| Parameter | Type | Description |
|---|---|---|
source / dataset_id |
string | — |
schema |
array | [{name, type?}] |
find_similar
| Parameter | Type | Default | Description |
|---|---|---|---|
source / dataset_id |
string | required | — |
limit |
number | 5 | Max 20 |
generate_citation
| Parameter | Type | Default | Description |
|---|---|---|---|
source / dataset_id |
string | required | — |
format |
string | apa |
bibtex, apa, chicago |
assess_quality
| Parameter | Type | Default | Description |
|---|---|---|---|
source / dataset_id |
string | required | — |
sample_rows |
number | 100 | Max 500 |
check_license
| Parameter | Type | Description |
|---|---|---|
source / dataset_id |
string | — |
use_case |
string | commercial / academic / internal / redistribution |
watch_query
| Parameter | Type | Description |
|---|---|---|
action |
string | add / remove / list / check |
query / sources / watch_id |
— | See action |
find_research_datasets
| Parameter | Type | Default | Description |
|---|---|---|---|
query |
string | required | Research topic |
limit |
number | 10 | Max 20 |
semantic |
boolean | false | SPECTER v2 embeddings |
get_dataset_provenance / trace_citation_graph / get_dataset_lineage
Currently degraded — depend on the Papers with Code API which has shut down.
</details>
Known issues
- Papers with Code API shut down post-HuggingFace acquisition — lineage/provenance/citation-graph tools return errors
- Econdb now requires a key — returns empty until support is added
- arXiv rate-limits under heavy parallel load (adapter uses 3s throttle)
Contributing
See CONTRIBUTING.md. If Mobus saves you time, a GitHub star helps others find it.
License
MIT — see LICENSE.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.