Skip to main content
Glama
meringlab

Official STRING Database MCP Server

STRING: Get interactive network link (web UI)

string_network_link

Generate a stable link to an interactive STRING interaction network for one or more proteins, optionally overlaying numeric values as colored node halos for visualization.

Instructions

Retrieves a stable URL to an interactive STRING network for one or more proteins.

  • For a single protein: includes the protein and its top 10 most likely interactors.

  • For multiple proteins: includes all known interactions within the query set.

The input may include one numeric value per protein, such as fold change, effect size, or score. These values are visualized as colored halos around the nodes, allowing overlay of protein-level measurements on the network.

Example: PTEN 2.1 SMO -1.3

If numeric values are provided:

  • positive values are shown in blue

  • negative values are shown in red

  • larger absolute values produce stronger halo intensity

If the user provides numeric values together with the proteins, preserve them in the query.

If few or no interactions are shown, consider lowering required_score.

For large queries (>100 proteins):

  • use network_flavor="confidence"

  • increase required_score (e.g. 700)

Always display the link as a markdown hyperlink (hide the raw URL).

Input parameters should match those used in related STRING tools unless otherwise specified.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
speciesNoNCBI/STRING taxon (e.g. 9606 for human, or STRG0AXXXXX).
proteinsYesOne or more protein IDs, optionally followed by one numeric value per protein. Use newline (%0d) between entries. Tabs and spaces are accepted as separators.
network_typeNoOmit for the default functional network. Its typed view can include physical and directed regulatory attributes when STRING returns them; inspect `physical` and `regulatory.directions` before claiming those edge types. Set physical for binding, complex, or co-complex questions. Set regulatory for directed regulatory relationships between proteins.
extend_networkNoAdd white nodes to network, based on scores. Default: 0.
network_flavorNoDefaults are typed for functional networks, evidence for physical networks, and confidence for regulatory networks. Typed returns functional pairs with any physical and directed regulatory attributes that STRING reports; it does not make every pair physical or regulatory. Typed is available only for functional networks. Set evidence or confidence only when the user requests that edge display style.
required_scoreNoThreshold of significance to include an interaction. Omit for STRING default filtering. Set only when a threshold is requested or a broader/narrower threshold is needed.
hide_disconnected_nodesNoHide proteins not connected to any other protein. Set only if the user asks to hide disconnected or unconnected proteins.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.13.0

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden and does a good job: it discloses the return type (stable URL), single vs. multiple protein behavior, numeric value visualization via colored halos, and recommendations for large queries. It does not, however, mention authentication, rate limits, or explicitly state that the operation is read-only.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with bullet points and front-loads the core purpose. It is appropriately sized for a 7-parameter tool, though some content (e.g., the final line about matching related STRING tools) is vague and borderline unnecessary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that an output schema exists, the description need not explain return values, but it still clarifies the output (markdown hyperlink) and covers large-query handling. It is largely complete, though it omits guidance on several parameters (species, extend_network, hide_disconnected_nodes) that are left entirely to the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds meaningful semantics beyond the schema: numeric values per protein are visualized as colored halos with specific color/intensity rules, and it recommends parameter values for large queries (network_flavor='confidence', required_score ~700). It does not add information for every parameter, but the added guidance is substantive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Retrieves a stable URL to an interactive STRING network for one or more proteins.' It explains the single-protein and multi-protein behavior clearly, but does not explicitly differentiate this tool from sibling network tools like string_visual_network or string_interactions_query_set.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives operational guidance for parameters (when to lower required_score, how to handle large queries with network_flavor and required_score), which implies usage context. However, it never states when to choose this tool over sibling STRING tools or when not to use it; the guidance is about invocation details rather than tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.