NGS360 Server
FreeNot checkedExposes the NGS360 bioinformatics platform REST API as MCP tools, enabling AI assistants to manage sequencing runs, projects, workflows, and more through natura
About
Exposes the NGS360 bioinformatics platform REST API as MCP tools, enabling AI assistants to manage sequencing runs, projects, workflows, and more through natural language.
README
A Model Context Protocol (MCP) server that exposes the NGS360 REST API as tools for AI assistants.
Overview
This MCP server wraps the NGS360 bioinformatics platform API, providing tools for:
| Domain | Tools | Description |
|---|---|---|
| Runs | 14 tools | Sequencing run CRUD, sample sheets, metrics, demultiplexing |
| Jobs | 6 tools | AWS Batch job submission, monitoring, and logs |
| Projects | 11 tools | Project CRUD, samples, pipeline actions, vendor ingestion |
| Files | 7 tools | File record management, S3 browsing |
| Search | 1 tool | Cross-index search (projects, runs, samples) |
| Workflows | 11 tools | Workflow identity, versions, aliases, deployments |
| Pipelines | 5 tools | Pipeline CRUD, workflow associations |
| QC Metrics | 5 tools | QC record creation, search, retrieval |
| Vendors | 5 tools | Vendor CRUD |
| Settings | 3 tools | Application settings management |
| Platforms | 3 tools | Workflow execution platform registry |
| Manifest | 2 tools | Manifest retrieval and validation |
| WES | 8 tools | GA4GH Workflow Execution Service (run/monitor workflows) |
Installation
cd mcp-server
pip install -e .
Or with uv:
cd mcp-server
uv pip install -e .
Configuration
The server uses environment variables for configuration:
| Variable | Default | Description |
|---|---|---|
NGS360_API_URL |
http://localhost:8000 |
Base URL of the NGS360 API |
NGS360_API_TOKEN |
(empty) | Bearer token for NGS360 authentication |
Usage
Running directly
ngs360-mcp-server
With Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"ngs360": {
"command": "ngs360-mcp-server",
"env": {
"NGS360_API_URL": "https://your-ngs360-api.example.com",
"NGS360_API_TOKEN": "your-bearer-token",
}
}
}
}
With VS Code / Roo
Add to your MCP settings:
{
"mcpServers": {
"ngs360": {
"command": "ngs360-mcp-server",
"env": {
"NGS360_API_URL": "https://your-ngs360-api.example.com",
"NGS360_API_TOKEN": "your-bearer-token",
}
}
}
}
Development
Project Structure
mcp-server/
├── pyproject.toml
├── README.md
└── ngs360_mcp_server/
├── __init__.py
├── client.py # HTTP client wrapper for the NGS360 API
├── server.py # MCP server entry point
└── tools/
├── __init__.py
├── runs.py # Sequencing run tools
├── jobs.py # Batch job tools
├── projects.py # Project & sample tools
├── files.py # File management tools
├── search.py # Cross-index search tools
├── workflows.py # Workflow management tools
├── pipelines.py # Pipeline management tools
├── qcmetrics.py # QC metrics tools
├── vendors.py # Vendor management tools
├── settings.py # Settings tools
├── platforms.py # Platform registry tools
├── manifest.py # Manifest tools
Testing with MCP Inspector
npx @modelcontextprotocol/inspector ngs360-mcp-server
Adding New Tools
- Create or edit a file in
ngs360_mcp_server/tools/ - Define a
register_*_tools(mcp, client)function - Register it in
ngs360_mcp_server/server.py
Each tool is a decorated async function:
@mcp.tool()
async def my_new_tool(param1: str, param2: int = 10) -> dict:
"""Tool description shown to the AI assistant.
Args:
param1: Description of param1
param2: Description of param2
"""
return await client.get("/my/endpoint", params={"p": param1})
API Coverage
This MCP server covers the full NGS360 API surface at /api/v1/*:
POST/GET /runs— Create and list sequencing runsGET/PUT /runs/{run_id}— Get/update a runGET /runs/{run_id}/samplesheet— Sample sheetGET /runs/{run_id}/metrics— Demux metricsGET/POST /runs/demultiplex— Demux workflowsPOST/GET/DELETE /runs/{run_id}/samples— Sample associationsPOST/GET /jobs— Submit and list batch jobsGET/PUT /jobs/{job_id}— Get/update jobGET /jobs/{job_id}/log— Job logsPOST/GET /projects— Create and list projectsGET/PUT/PATCH /projects/{project_id}— Project CRUDPOST/GET /projects/{project_id}/samples— Project samplesPOST /projects/{project_id}/actions/submit— Pipeline submissionPOST/GET /files— File record managementGET/PATCH/DELETE /files/{file_id}— File operationsGET /files/list— S3 browserGET /search— Global searchPOST/GET /workflows— Workflow identityPOST/GET /workflows/{id}/versions— VersionsPUT/GET/DELETE /workflows/{id}/aliases— AliasesPOST/GET/DELETE /workflows/.../deployments— DeploymentsPOST/GET /pipelines— Pipeline CRUDPOST/DELETE /pipelines/{id}/workflows— Workflow membershipPOST/GET/DELETE /qcmetrics— QC recordsGET/POST /qcmetrics/search— QC searchPOST/GET/PUT/DELETE /vendors— Vendor managementGET/PUT /settings— Application settingsPOST/GET /platforms— Platform registryGET/POST /manifest— Manifest operations
GA4GH WES API (/ga4gh/wes/v1/*)
GET /service-info— WES service capabilitiesGET /runs— List workflow runsPOST /runs— Submit a workflow runGET /runs/{run_id}— Full run logGET /runs/{run_id}/status— Run statePOST /runs/{run_id}/cancel— Cancel a runGET /runs/{run_id}/tasks— List tasks for a runGET /runs/{run_id}/tasks/{task_id}— Get task details
Install NGS360 Server in Claude Desktop, Claude Code & Cursor
unyly install ngs360-mcp-serverInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add ngs360-mcp-server -- uvx --from git+https://github.com/NGS360/mcp-server ngs360-mcp-serverFAQ
Is NGS360 Server MCP free?
Yes, NGS360 Server MCP is free — one-click install via Unyly at no cost.
Does NGS360 Server need an API key?
No, NGS360 Server runs without API keys or environment variables.
Is NGS360 Server hosted or self-hosted?
A hosted option is available: Unyly runs the server in the cloud, no local setup required.
How do I install NGS360 Server in Claude Desktop, Claude Code or Cursor?
Open NGS360 Server on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
by modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
by xuzexin-hzCompare NGS360 Server with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All ai MCPs
