io.github.galaxyproject/galaxy-mcp
PYPI · GALAXY-MCP · SCANNED SEP 20
MCP server for Galaxy bioinformatics platform - connect, execute tools, and manage workflows
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security99
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- Runs setuptools.build_meta at install time, a recognised native-build step with no shell scripting around it. View diagnostics → Pass
- 3 of 42 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency32
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- License check failed: no license is declared. See how to fix → Fail
- Actively maintained (last published 3 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability74
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 3717 tokens (~119/item across 31 items; 31 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management83
- Stability observed for 25 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 31 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 31 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
How do I install the io.github.galaxyproject/galaxy-mcp server?
io.github.galaxyproject/galaxy-mcp runs locally as a PyPI package, launched with uvx galaxy-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
pypi · galaxy-mcp
claude mcp add galaxyproject-galaxy-mcp -- uvx galaxy-mcp
{
"mcpServers": {
"galaxyproject-galaxy-mcp": {
"command": "uvx",
"args": [
"galaxy-mcp"
]
}
}
} {
"servers": {
"galaxyproject-galaxy-mcp": {
"command": "uvx",
"args": [
"galaxy-mcp"
]
}
}
} codex mcp add galaxyproject-galaxy-mcp -- uvx galaxy-mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"galaxyproject-galaxy-mcp": {
"type": "local",
"command": [
"uvx",
"galaxy-mcp"
],
"enabled": true
}
}
} openclaw mcp add galaxyproject-galaxy-mcp --command uvx --arg galaxy-mcp
mcp_servers:
galaxyproject-galaxy-mcp:
command: "uvx"
args: ["galaxy-mcp"] {
"McpServers": {
"galaxyproject-galaxy-mcp": {
"Transport": "stdio",
"Command": "uvx",
"Arguments": [
"galaxy-mcp"
]
}
}
} assistant mcp add galaxyproject-galaxy-mcp -t stdio -c uvx -a galaxy-mcp
{
"mcpServers": {
"galaxyproject-galaxy-mcp": {
"command": "uvx",
"args": [
"galaxy-mcp"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 20 Sept 26 −2
- Stability: pass → 0.83 functional
- 19 Sept 26 0
- Stability: 0.97 → pass security
- 18 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
- 15 Sept 26 +16
- Malware scan: unverified → pass ▲ security
- 14 Sept 26 −15
- Malware scan: pass → unverified ▼ security
- 13 Sept 26 −2
- Stability: pass → 0.80 functional
- 12 Sept 26 0
- Stability: 0.97 → pass security
- 11 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Analysed pypi/galaxy-mcp@1.3.0
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | pypi |
Background: How many MCP packages publish verified provenance →
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| build_backend | allowlisted | setuptools.build_meta |
Background: Why install scripts are a supply-chain risk →
Dependencies 42 packages
| Packages resolved | 42 |
|---|---|
| Stale | 3 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
cancel_workflow_invocation Cancel Workflow Invocation ~37
Cancel a running workflow invocation
| Name | Type | Req | Description |
|---|---|---|---|
| invocation_id | string | yes | ID of the workflow invocation to cancel - a hexadecimal hash string |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
connect Connect ~56
Connect to Galaxy server
| Name | Type | Req | Description |
|---|---|---|---|
| api_key | – | – | Galaxy API key (optional, uses GALAXY_API_KEY env var if not provided) |
| url | – | – | Galaxy server URL (optional, uses GALAXY_URL env var if not provided) |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
create_history Create History ~160
Create a new history to organize datasets and analyses. A history is the primary workspace in Galaxy. Create a new history for each distinct project or analysis to keep your work organized. RECOMMENDED WORKFLOW: 1. Create a history with a descriptive name 2. Upload your input data: upload_file() or upload_file_from_url() 3. Run tools on the data: run_tool() 4. View results: get_history_contents()
| Name | Type | Req | Description |
|---|---|---|---|
| history_name | string | yes | Descriptive name for the history. Best practices: - Include project/sample name: "RNA-seq Sample A" - Include date if relevant: "ChIP-seq 2024-01" - Be specifi… |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
download_dataset Download Dataset ~168
Download a dataset from Galaxy to the local filesystem or memory
| Name | Type | Req | Description |
|---|---|---|---|
| dataset_id | string | yes | Galaxy dataset ID - a hexadecimal hash string identifying the dataset (e.g., 'f2db41e1fa331b3e', typically 16 characters) |
| file_path | – | – | Local filesystem path where to save the downloaded file (e.g., '/path/to/data.txt', requires write access to filesystem) If not provided, downloads to memory instead |
| require_ok_state | boolean | – | Only allow download if dataset processing state is 'ok' (default: True, set False to download datasets in other states) |
| use_default_filename | boolean | – | Deprecated - use file_path for specific locations (default: True, ignored when file_path not provided) |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_collection_details Get Collection Details ~123
Get detailed information about a dataset collection and its members Dataset collections group multiple datasets together (e.g., paired-end reads, sample lists). This tool shows the collection structure and member datasets.
| Name | Type | Req | Description |
|---|---|---|---|
| collection_id | string | yes | Galaxy dataset collection ID - a hexadecimal hash string (e.g., 'a1b2c3d4e5f6g7h8', typically 16 characters) |
| max_elements | integer | – | Maximum number of collection elements to return (default: 100) Set lower for large collections to avoid overwhelming output |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_dataset_details Get Dataset Details ~124
Get detailed information about a specific dataset, optionally including a content preview
| Name | Type | Req | Description |
|---|---|---|---|
| dataset_id | string | yes | Galaxy dataset ID - a hexadecimal hash string identifying the dataset (e.g., 'f2db41e1fa331b3e', typically 16 characters) |
| include_preview | boolean | – | Whether to include a preview of the dataset content showing first N lines (default: True, only works for datasets in 'ok' state) |
| preview_lines | integer | – | Number of lines to include in the content preview (default: 10) |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_histories Get Histories ~169
Get list of user's histories with optional pagination and filtering. Histories are Galaxy's primary organizational unit - each contains datasets, collections, and records of analyses. Most operations require a history_id. RECOMMENDED WORKFLOW: 1. Call get_histories() to see existing histories 2. Either use an existing history_id or create_history() for new work 3. Upload data or run tools in the selected history
| Name | Type | Req | Description |
|---|---|---|---|
| limit | – | – | Maximum histories to return. Default None returns all. Use with offset for pagination on large history lists. |
| name | – | – | Filter by name pattern (case-sensitive partial match). Example: name="RNA" matches "RNA-seq analysis", "my RNA data" |
| offset | integer | – | Skip this many histories (for pagination). Default 0. |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_history_contents Get History Contents ~263
Get paginated contents (datasets and collections) from a specific history with ordering support
| Name | Type | Req | Description |
|---|---|---|---|
| deleted | boolean | – | Include deleted datasets in results (default: False) |
| history_id | string | yes | Galaxy history ID - a hexadecimal hash string identifying the history (e.g., '1cd8e2f6b131e5aa', typically 16 characters) |
| limit | integer | – | Maximum number of items to return per page (default: 100, max recommended: 500) |
| offset | integer | – | Number of items to skip from the beginning (default: 0, for pagination) |
| order | string | – | Sort order for results. Options include: - 'hid-asc': History ID ascending (default, oldest first) - 'hid-dsc': History ID descending (newest first) - 'create_time-dsc': Creation time descendin… |
| visible | boolean | – | Include only visible datasets (default: True, set False to include hidden) |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_history_details Get History Details ~98
Get history metadata and summary count ONLY - does not return actual datasets This function provides quick access to history information without loading all datasets. For the actual datasets/contents, use get_history_contents() which supports pagination and ordering.
| Name | Type | Req | Description |
|---|---|---|---|
| history_id | string | yes | Galaxy history ID - a hexadecimal hash string identifying the history (e.g., '1cd8e2f6b131e5aa', typically 16 characters) |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_invocations Get Invocations ~224
View workflow invocations in Galaxy
| Name | Type | Req | Description |
|---|---|---|---|
| history_id | – | – | Filter invocations by history ID - a hexadecimal hash string (e.g., '1cd8e2f6b131e5aa', typically 16 characters, optional) |
| invocation_id | – | – | Specific workflow invocation ID to view - a hexadecimal hash string (e.g., 'a1b2c3d4e5f6789a', typically 16 characters, optional) |
| limit | – | – | Maximum number of invocations to return (optional, default: no limit) |
| step_details | boolean | – | Include details on individual workflow steps (only applies when view is 'element', default: False) |
| view | string | – | Level of detail to return - 'element' for detailed or 'collection' for summary (default: 'collection') |
| workflow_id | – | – | Filter invocations by workflow ID - a hexadecimal hash string (e.g., 'b2c3d4e5f6789abc', typically 16 characters, optional) |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_iwc_workflow_details Get Iwc Workflow Details ~171
Get comprehensive details about a specific IWC workflow before importing. Use this to examine a workflow's full documentation, inputs, and complexity before deciding to import it into your Galaxy instance. RECOMMENDED WORKFLOW: 1. Search workflows with search_iwc_workflows() or recommend_iwc_workflows() 2. Call this function with the trsID to get full details 3. Review the readme and inputs to ensure it fits your needs 4. Import with import_workflow_from_iwc(trs_id)
| Name | Type | Req | Description |
|---|---|---|---|
| trs_id | string | yes | The TRS (Tool Registry Service) ID from search results. Format: "#workflow/github.com/iwc-workflows/<name>/<branch>" Example: "#workflow/github.com/iwc-workflows/rnaseq-pe/main" |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_iwc_workflows Get Iwc Workflows ~35
Fetch all workflows from the IWC (Interactive Workflow Composer) Returns: GalaxyResult with workflow manifest in data field
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_job_details Get Job Details ~104
Get detailed information about the job that created a specific dataset
| Name | Type | Req | Description |
|---|---|---|---|
| dataset_id | string | yes | Galaxy dataset ID - a hexadecimal hash string identifying the dataset (e.g., 'f2db41e1fa331b3e', typically 16 characters) |
| history_id | – | – | Galaxy history ID containing the dataset - optional for performance optimization (e.g., '1cd8e2f6b131e5aa', typically 16 characters) |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_server_info Get Server Info ~34
Get Galaxy server information including version, URL, and configuration details Returns: GalaxyResult with server information in data field
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_tool_citations Get Tool Citations ~30
Get citation information for a specific tool
| Name | Type | Req | Description |
|---|---|---|---|
| tool_id | string | yes | ID of the tool |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_tool_details Get Tool Details ~159
Get detailed information about a specific tool including its input parameters. RECOMMENDED WORKFLOW: 1. First find tools using search_tools_by_name() or get_tool_panel() 2. Call this function with io_details=True to see all input parameters 3. Use the inputs schema to construct the inputs dict for run_tool()
| Name | Type | Req | Description |
|---|---|---|---|
| io_details | boolean | – | Set True to include detailed input/output parameter schemas. Essential for understanding how to call run_tool(). |
| tool_id | string | yes | Galaxy tool identifier. Common formats: - Simple: "fastqc", "bwa", "upload1" - Toolshed: "toolshed.g2.bx.psu.edu/repos/devteam/fastqc/fastqc/0.73" |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_tool_panel Get Tool Panel ~31
Get the tool panel structure (toolbox) Returns: GalaxyResult with tool panel hierarchy in data field
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_tool_run_examples Get Tool Run Examples ~71
Return the exact XML test definitions (inputs, outputs, assertions, required files) for a Galaxy tool so an LLM can study real, working run configurations.
| Name | Type | Req | Description |
|---|---|---|---|
| tool_id | string | yes | ID of the tool to inspect |
| tool_version | – | – | Optional version selector (use '*' for all versions) |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_user Get User ~26
Get current user information Returns: GalaxyResult with current user details in data field
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
get_workflow_details Get Workflow Details ~57
Get detailed information about a specific workflow
| Name | Type | Req | Description |
|---|---|---|---|
| version | – | – | Specific version of the workflow (optional, uses latest if not specified) |
| workflow_id | string | yes | ID of the workflow to get details for - a hexadecimal hash string |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
import_workflow_from_iwc Import Workflow From Iwc ~43
Import a workflow from IWC to the user's Galaxy instance
| Name | Type | Req | Description |
|---|---|---|---|
| trs_id | string | yes | TRS ID of the workflow in the IWC manifest |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
invoke_workflow Invoke Workflow ~207
Invoke (run) a workflow with specified inputs and parameters
| Name | Type | Req | Description |
|---|---|---|---|
| history_id | – | – | ID of history to store workflow outputs (optional) |
| history_name | – | – | Name for new history to create (ignored if history_id provided) |
| inputs | – | – | Mapping of workflow inputs to datasets. Format: {'step_index': {'id': 'dataset_id', 'src': 'hda'}} where src can be: - 'hda' for HistoryDatasetAssociation - 'hdca' for HistoryDatasetCollecti… |
| inputs_by | string | – | How to identify workflow inputs - 'step_index', 'step_uuid', or 'name' |
| parameters_normalized | boolean | – | Whether parameters are already in normalized format |
| params | – | – | Tool parameter overrides as a nested dictionary |
| workflow_id | string | yes | ID of the workflow to invoke - a hexadecimal hash string |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
list_history_ids List History Ids ~40
Get a simplified list of history IDs and names for easy reference Returns: GalaxyResult with list of {id, name} dictionaries in data field
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
list_workflows List Workflows ~66
List workflows available in the Galaxy instance
| Name | Type | Req | Description |
|---|---|---|---|
| name | – | – | Filter workflows by name (optional) |
| published | boolean | – | Include published workflows (default: False, shows only user workflows) |
| workflow_id | – | – | Specific workflow ID to get (optional) - a hexadecimal hash string |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
recommend_iwc_workflows Recommend Iwc Workflows ~210
Semantic search for IWC workflows based on natural language description. Use this when you have a general analysis goal and want to find the best matching workflows. Uses BM25 ranking to search across names, descriptions, readmes, tags, and tool names. RECOMMENDED WORKFLOW: 1. Describe your analysis goal in natural language 2. Review ranked recommendations with match explanations 3. Get details for promising workflows: get_iwc_workflow_details(trs_id) 4. Import the best match: import_workflow_from_iwc(trs_id)
| Name | Type | Req | Description |
|---|---|---|---|
| intent | string | yes | Natural language description of your analysis goal. Examples: - "I have paired-end RNA-seq data and want differential expression" - "Assemble a bacterial genome from nanopore reads" -… |
| limit | integer | – | Maximum number of recommendations to return (default: 5) |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
run_tool Run Tool ~231
Run a Galaxy tool on datasets in a history. RECOMMENDED WORKFLOW: 1. Create or select a history: create_history() or get_histories() 2. Upload data: upload_file() or upload_file_from_url() 3. Get tool parameters: get_tool_details(tool_id, io_details=True) 4. Call this function with properly formatted inputs 5. Monitor job: get_job_details() or check history contents
| Name | Type | Req | Description |
|---|---|---|---|
| history_id | string | yes | Galaxy history ID (16-char hex string like '1cd8e2f6b131e5aa'). Get from create_history() or get_histories(). |
| inputs | object | yes | Tool input parameters. Dataset inputs use this format: {"input_name": {"src": "hda", "id": "dataset_id"}} |
| tool_id | string | yes | Tool identifier. Common formats: - Simple built-in: "cat1", "Cut1", "upload1" - Toolshed: "toolshed.g2.bx.psu.edu/repos/iuc/fastqc/fastqc/0.73" |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
search_iwc_workflows Search Iwc Workflows ~180
Search for workflows in the IWC (Intergalactic Workflow Commission) manifest. IWC hosts curated, best-practice workflows for common bioinformatics analyses. This function searches across workflow names, descriptions, tags, and readmes. RECOMMENDED WORKFLOW: 1. Search for workflows matching your analysis need 2. Review the results - check step_count for complexity, readme_summary for details 3. Call get_iwc_workflow_details(trs_id) for full information 4. Import with import_workflow_from_iwc(trs_id) 5. Run with invoke_workflow()
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | Search query (case-insensitive). Matches against: - Workflow name (e.g., "RNA-seq") - Description/annotation - Tags (e.g., "assembly", "transcriptomics") |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
search_tools_by_keywords Search Tools By Keywords ~75
Recommend Galaxy tools based on a list of keywords.
| Name | Type | Req | Description |
|---|---|---|---|
| keywords | array | yes | A list of keywords or phrases describing what you're looking for, e.g., ["csv", "rna", "alignment", "visualization"]. The search will match tools whose name, description, or accepted input formats co… |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
search_tools_by_name Search Tools By Name ~118
Search Galaxy tools whose name, ID, or description contains the given query (substring match). RECOMMENDED WORKFLOW: 1. Use this function to find tools by name/keyword 2. Review the returned tool IDs and names 3. Call get_tool_details(tool_id) for full input parameters 4. Call run_tool() with the correct inputs
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | Search query - matches against tool name, ID, or description. Examples: "fastq", "alignment", "filter", "bwa" |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
upload_file Upload File ~215
Upload a local file to Galaxy for analysis. Galaxy automatically detects the file type (FASTQ, BAM, BED, etc.) and indexes the file appropriately. Large files are uploaded efficiently. RECOMMENDED WORKFLOW: 1. Create a history: create_history("My Analysis") 2. Upload your data files with this function 3. Wait for upload to complete (check dataset state) 4. Run tools on the uploaded data: run_tool()
| Name | Type | Req | Description |
|---|---|---|---|
| history_id | – | – | Target history ID. If None, uses the most recent history. Recommend always specifying for clarity. |
| path | string | yes | Local file path to upload. Supports common bioinformatics formats: - Sequences: .fastq, .fasta, .fa, .fq, .fastq.gz - Alignments: .bam, .sam, .cram - Annotations: .bed, .gff, .gtf, .vcf - Tab… |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
upload_file_from_url Upload File From Url ~192
Upload a file from a URL to Galaxy
| Name | Type | Req | Description |
|---|---|---|---|
| dbkey | string | – | Database key/genome build (default: '?', e.g., 'hg38', 'mm10', 'dm6') |
| file_name | – | – | Optional name for the uploaded file in Galaxy (inferred from URL if not provided) |
| file_type | string | – | Galaxy file format name (default: 'auto' for auto-detection) Common types: 'fasta', 'fastq', 'bam', 'vcf', 'bed', 'tabular', etc. |
| history_id | – | – | Galaxy history ID where to upload the file - optional, uses current history (e.g., '1cd8e2f6b131e5aa', typically 16 characters) |
| url | string | yes | URL of the file to upload (e.g., 'https://example.com/data.fasta') |
| Name | Type | Req | Description |
|---|---|---|---|
| count | – | – | Number of items returned |
| data | – | yes | Response data from Galaxy API |
| message | string | yes | Human-readable status message |
| pagination | – | – | Pagination info for list operations |
| success | boolean | – | Whether the operation succeeded |
No examples provided.
What is the io.github.galaxyproject/galaxy-mcp server?
io.github.galaxyproject/galaxy-mcp is listed in the public MCP registry as io.github.galaxyproject/galaxy-mcp. MCP server for Galaxy bioinformatics platform - connect, execute tools, and manage workflows. This page covers its PyPI package (galaxy-mcp).
Is the io.github.galaxyproject/galaxy-mcp server safe to use?
io.github.galaxyproject/galaxy-mcp scores 79 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the io.github.galaxyproject/galaxy-mcp server expose?
io.github.galaxyproject/galaxy-mcp exposes 31 tools: connect, search_tools_by_name, get_tool_details, get_tool_run_examples, get_tool_citations, and 26 more. Their descriptions and schemas cost roughly 3,717 tokens of context every time the server is loaded.
Is the io.github.galaxyproject/galaxy-mcp server still maintained?
io.github.galaxyproject/galaxy-mcp is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.