string_enrichment
ActiveTool of STRING Database MCP Server
This tool retrieves functional enrichment for a set of proteins using STRING. - If queried with a single protein, the tool expands the query to include the protein’s 10 most likely interactors; enrichment is performed on this set, not the original single protein. - For two or more proteins, enrichment is performed on the exact input set. - When calling related tools, use the same input parameters unless otherwise specified. - Focus summaries on the top categories and most relevant terms for the results. Always report FDR for each claim. - Report FDR as a human-readable value (e.g. 2.3e-5 or 0.023). - IMPORTANT: Remember to suggest showing an enrichment graph for a specific category of user interest (e.g., GO, KEGG) - Very large responses are capped while preserving category diversity. - Use `expand_category` to return only one category with expanded term coverage and per-term gene details. - If a row has `preferredNames_omitted: true`, do not infer which proteins are in that term from the returned rows. Use `string_functional_annotation` with the same proteins/species and `detail_for_term` set to the exact term ID. Output fields (per enriched term): - category: Term category (e.g., GO Process, KEGG pathway) - term: Enriched term (GO ID, domain, or pathway) - number_of_genes: Number of input genes with this term - number_of_genes_in_background: Number of background genes with this term - ncbiTaxonId: NCBI taxon ID - preferredNames: Canonical protein names, only when the full per-term list is short enough to show - proteinCount: Number of proteins matching this term - preferredNames_omitted: True when the gene list was omitted instead of showing a misleading partial list - p_value: Raw p-value - fdr: False Discovery Rate (B-H corrected p-value) - description: Description of the enriched term Response metadata: - input_gene_name_mapping: Only included when displayed gene lists contain submitted identifiers that differ from STRING preferred names. - category_summary: Total and returned term counts per category; use `expand_category` for categories where `truncated` is true or where the user wants deeper category-specific detail. - truncated_categories / omitted_categories: Categories with terms not shown in the current response.
Parameters schema
{
"type": "object",
"required": [
"proteins"
],
"properties": {
"species": {
"anyOf": [
{
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Optional. NCBI/STRING taxon (e.g. 9606 for human, or STRG0AXXXXX). Use only when required."
},
{
"type": "null"
}
],
"default": null
},
"proteins": {
"type": "string",
"description": "Required. One or more protein identifiers, separated by %0d. Example: SMO%0dTP53"
},
"expand_category": {
"anyOf": [
{
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Optional. Return only this enrichment category with expanded term coverage and a larger per-term gene-list cutoff. Use a category from metadata.category_summary, e.g. Process, KEGG, PMID, NetworkNeighborAL, or Keyword."
},
{
"type": "null"
}
],
"default": null
}
}
}No endpoints wrapped at confidence ≥ 0.50.
Parent server
STRING Database MCP Server
https://github.com/meringlab/string-mcp
2/7 registries