A Model Context Protocol (MCP) server that provides access to UCSC Cell Browser datasets by parsing the dataset.json file from https://cells.ucsc.edu/dataset.json.
# Clone the repository
git clone https://github.com/MCPmed/UCSCCBmcp
cd ucsccbMCP
# Install in development mode
pip install -e .pip install ucsc-cell-browser-mcpAfter installation, you can run the MCP server using:
ucsc-mcpThis will start the MCP server and listen for connections via stdio.
from ucsccbmcp.main import main_cli
# Run the MCP server
main_cli()The MCP server provides the following tools:
- search_datasets: Search UCSC Cell Browser datasets by various criteria
- get_dataset_details: Get detailed information about a specific dataset
- list_organisms: List all available organisms in the cell browser
- list_body_parts: List all available body parts in the cell browser
- list_diseases: List all available diseases in the cell browser
- list_projects: List all available projects in the cell browser
- refresh_data: Refresh the dataset cache from UCSC Cell Browser
The server automatically caches dataset information for 1 hour to improve performance. You can force a refresh using the refresh_data tool.
- Python 3.8+
- httpx>=0.24.0
- mcp>=1.0.0
# Install development dependencies
pip install -e .[dev]
# Run tests
pytest
# Format code
black ucsccbmcp/
# Lint code
flake8 ucsccbmcp/