MCP GeneLab Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| NEO4J_URI | Yes | URI of the Neo4j instance (e.g., bolt://localhost:7687) | |
| NEO4J_USER | Yes | Username for Neo4j authentication | |
| NEO4J_PASSWORD | Yes | Password for Neo4j authentication |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_neo4j_schemaA | List all nodes, their attributes and their relationships to other nodes in the neo4j database. If this fails with a message that includes "Neo.ClientError.Procedure.ProcedureNotFound" suggest that the user install and enable the APOC plugin. |
| queryA | Execute a Cypher query on the Neo4j database. If the question is about up- or down-regulated genes, use the find_upregulated_genes or find_downreguluated genes EDGE PROPERTIES - CRITICAL: Many relationships in this knowledge graph have properties stored as edge attributes (data ON the relationship itself). Examples include: log2fc, adj_p_value, methylation_diff, q_value, etc. |
| get_node_metadataA | Get metadata for all nodes from MetaNode nodes in the knowledge graph. |
| get_relationship_metadataA | Get descriptions of properties of all relationships in the knowledge graph. |
| find_differentially_expressed_genesA | Return the top-N up- and down-regulated genes for a given assay_id. This tool runs two queries on the GeneLab KG:
FORMATTING INSTRUCTION: RENDER THE RESPONSE IN MARKDOWN FORMAT! |
| find_common_differentially_expressed_genesA | Find common differentially expressed genes across multiple assays. This function:
FORMATTING INSTRUCTION: RENDER THE RESPONSE IN MARKDOWN FORMAT! INFORM THE USER ABOUT CURRENT THRESHOLDS AND THAT THEY CAN BE CHANGED. |
| select_assaysA | List and select assays for a study and render the response in markdown format. First call (selection=None):
Second call (selection='i,j,k,l,...,m,n'):
FORMATTING INSTRUCTION: RENDER THE RESPONSE IN MARKDOWN FORMAT! |
| create_volcano_plotA | Create a volcano plot for differential gene expression data from the given assay. A volcano plot displays log2 fold change on the x-axis and -log10(adjusted p-value) on the y-axis. Genes are colored based on their significance:
Returns a link to the plot and summary statistics. FORMATTING INSTRUCTION: RENDER THE RESPONSE IN MARKDOWN FORMAT! |
| create_venn_diagramA | Create Venn diagrams comparing differentially expressed genes between 2 or 3 assays. This function creates side-by-side Venn diagrams showing:
If assay_id_3 is provided, creates 3-way Venn diagrams. If assay_id_3 is None, creates 2-way Venn diagrams. Returns a link to the plot and summary statistics. FORMATTING INSTRUCTION: RENDER THE RESPONSE IN MARKDOWN FORMAT! |
| clean_mermaid_diagramA | Clean a Mermaid class diagram by removing unwanted elements. extra" to "ClassName") |
| create_chat_transcriptA | Prompt for creating a chat transcript in markdown format with user prompts and Claude responses. |
| visualize_schemaA | Prompt for visualizing the knowledge graph schema using a Mermaid class diagram. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Most tools have clearly distinct purposes, especially the four DEG-related tools (find, common, venn, volcano) each target different outputs. However, 'create_chat_transcript' is an outlier unrelated to gene expression analysis, and 'clean_mermaid_diagram' and 'visualize_schema' both deal with Mermaid diagrams, causing slight ambiguity.
The tools mostly follow a snake_case verb_noun pattern (e.g., clean_mermaid_diagram, select_assays). One exception is 'query', which is just a plain verb without a noun. Overall, the pattern is consistent and predictable.
With 12 tools, the server covers a reasonable scope for a gene expression analysis platform. Each tool contributes to data retrieval, selection, analysis, or visualization, without being overwhelming or too sparse.
Core workflows such as finding differentially expressed genes, comparing assays via Venn diagrams, and generating volcano plots are present. However, the toolset lacks direct support for downloading raw data or exploring beyond the predefined thresholds, and the inclusion of unrelated tools like 'create_chat_transcript' does not fill domain gaps.