addLABSCO SUMMARY
A shelf of research servers, one command each.
The value is the shelf rather than any single server: retrieval, computation and remote execution all speak the same protocol and start the same way, so a research assistant can hold several at once without a different install story for each. Read the server's own README before you wire it in — SSH Exec and Python Code Execution both run code, and the limits on each are written in its directory, not in the shared one.
What it is
A monorepo of open-source MCP servers built for scientific research, published as one PyPI package (mcp.science, version 0.1.7). Each server lives in its own directory under servers/ with its own README, and any of them starts with uvx mcp-science <server-name> — that single command handles installation and execution, so a client entry is just uvx plus two arguments. MIT licensed.
What you get
- Materials Project — search, visualise and manipulate materials-science data from the Materials Project database; needs a Materials Project API key
- Python Code Execution — runs Python snippets in a sandboxed environment with restricted standard-library access, so analysis the assistant writes runs somewhere it cannot reach your system
- GPAW Computation — density-functional-theory calculations through the GPAW package
- Jupyter-Act — executes notebook cells against a running Jupyter kernel
- Mathematica-Check — evaluates small Wolfram Language snippets through a headless Mathematica instance
- Web Fetch — fetches and processes HTML, PDF and plain-text content from the web so the assistant can quote or summarise it
- TXYZ Search — web, academic and "best effort" searches through the TXYZ API; needs a TXYZ API key
- SSH Exec — runs pre-validated commands on remote machines over SSH, with configurable authentication and command whitelists
- NEMAD — tools for inspecting NEMAD data sets
- TinyDB — CRUD access to a lightweight JSON database, for small structured things the assistant needs to keep
- Timer — a countdown timer that streams progress updates, demonstrating MCP notifications
- Example Server — the minimal pieces a server implementation needs, as a starting point for your own
Requirements
uv and an MCP-enabled client — Claude Desktop, VSCode, Goose and 5ire are the ones named. uvx mcp-science <server-name> downloads the package from PyPI and runs the requested entry point, so there is nothing to install per server. Two of them need keys you bring yourself: Materials Project and TXYZ Search. The rest of what a server needs depends on which one you start — SSH Exec wants credentials and a command whitelist for the machines it will touch, Mathematica-Check wants a headless Mathematica, GPAW Computation wants GPAW. Each server's own README under servers/ is where those specifics live, and mcpm will wire servers into supported clients for you if you switch clients often.
Setup effort
One command — uvx mcp-science web-fetch
USE CASES
Pulling structures and properties out of the Materials Project
Start the Materials Project server with your API key and the assistant searches, visualises and manipulates the database directly, instead of you writing a script against the API for each question.
Running analysis code without handing over your machine
python-code-execution executes snippets in a sandbox with restricted standard-library access, so a computation the assistant wrote runs where it cannot touch your files.
Driving the notebook you already have open
jupyter-act executes cells against a running kernel, so the assistant works in the same session and the same namespace you do.
Reading the paper the assistant just found
web-fetch turns HTML, PDF and plain text into content it can quote; txyz-search covers the academic search side once you supply a TXYZ key.
Running one command on a remote machine, and only that one
ssh-exec runs pre-validated commands against a whitelist you configure, so what is reachable is a list you wrote rather than a shell.
40 tools
Listed in project code.
get_image_of_flowersearch_materials_by_formulaselect_material_by_idget_structure_datacreate_structure_from_poscarcreate_structure_from_cifplot_structurebuild_supercellmoire_homobilayerpython_code_executionssh_execfetch-webread-image-urltxyz_search_scholartxyz_search_webtxyz_search_smartwaitcreate_new_projectstart_calculationcheck_calculation_resultexecute_codeadd_cell_and_execute_codeadd_cellreplace_cellread_jupyter_filelist_jupyter_filesexecute_mathematicaverify_derivationnemad_searchnemad_formula_searchnemad_read_resultsnemad_list_cachecreate_tableinsert_documentquery_documentsupdate_documentsdelete_documentspurge_tabledrop_tableBEFORE YOU INSTALL
What to know first
Tools you get
40 tools registered in the project's code. That is the count across all twelve servers. Each client entry starts one server with uvx mcp-science <server-name> and gets only that server's tools; web-fetch, the server the install command starts, registers two: fetch-web and read-image-url.
Requires
uvx on PATH
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
Server setup
uvx mcp-science web-fetchMCP Clients
Claude Desktop
{
"mcpServers": {
"web-fetch": {
"command": "uvx",
"args": [
"mcp-science",
"web-fetch"
]
}
}
}This entry starts the web-fetch server. To add another, copy the entry and use that server's name instead of web-fetch in both places, for example materials-project, python-code-execution or jupyter-act. Each server's README under servers/ says what it needs; Materials Project and TXYZ Search take their own API key.