Skip to main content
Glama

STRING MCP Server

Model Context Protocol (MCP) server providing access to the STRING protein-protein interaction database.

Features

9 tools for protein interaction analysis:

  • Mapping protein identifiers to STRING IDs

  • Retrieving protein interaction networks

  • Finding interaction partners

  • Functional enrichment analysis (GO, KEGG, pathways)

  • PPI enrichment testing

  • Cross-species homology mapping

  • Protein name resolution

Full endpoint documentation available in ENDPOINTS.md.

Related MCP server: UniProt MCP Server

Installation

From GitHub

npm install git+https://github.com/munch-group/string-mcp.git
cd node_modules/string-mcp
npm run build

From source

git clone https://github.com/munch-group/string-mcp.git
cd string-mcp
npm install
npm run build

Usage with Claude Desktop

# Using built version
claude mcp add string node /path/to/string-mcp/build/index.js

# Or from npm global install
claude mcp add string npx -y string-mcp

Configuration

Add to your Claude Desktop config:

{
  "mcpServers": {
    "string": {
      "command": "node",
      "args": ["/path/to/string-mcp/build/index.js"]
    }
  }
}

Common Species Taxon IDs

  • Human: 9606

  • Mouse: 10090

  • Rat: 10116

  • Fruit fly: 7227

  • C. elegans: 6239

  • Yeast: 4932

Building

npm run build

Dependencies

  • @mcp/rest-utils - Shared REST utilities

  • @modelcontextprotocol/sdk - MCP SDK

  • zod - Schema validation

License

ISC

Available Tools

9 tools
get_enrichmentC

Perform functional enrichment analysis for a set of proteins. Tests for over-representation in Gene Ontology terms, KEGG pathways, etc.

Inputs: identifiers (required), species, background.

get_homologyC

Get homology information for proteins across species using STRING.

Inputs: identifiers (required), species, target_species.

get_homology_bestC

Get the best homology match for proteins in a target species.

Inputs: identifiers (required), target_species (required), species.

get_interaction_partnersA

Get all STRING interaction partners for your proteins. Returns a list of interacting proteins with confidence scores.

Inputs: identifiers (required), species, limit, required_score, +1 more.

get_networkC

Retrieve protein-protein interaction network for given proteins. Returns network edges with confidence scores.

Inputs: identifiers (required), species, required_score, network_type, +1 more.

get_ppi_enrichmentB

Test if your protein set has more interactions than expected by chance. Returns enrichment p-value.

Inputs: identifiers (required), species, required_score.

get_string_idsA

Map protein names, synonyms, and UniProt identifiers to STRING identifiers. Species parameter uses NCBI taxon IDs (e.g., 9606 for human, 10090 for mouse).

Inputs: identifiers (required), species, limit, echo_query.

get_versionB

Get the current version of the STRING database.

Inputs: no named parameters.

resolve_proteinsC

Resolve protein names to their preferred names in STRING database.

Inputs: identifiers (required), species.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.4/5.0

    Scored across 9 tools

    Disambiguation4/5

    Most tools have distinct purposes, such as get_enrichment for functional analysis and get_network for interaction networks. However, get_homology and get_homology_best could be confused as they both handle homology, with the latter being a more specific version, creating minor ambiguity.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern starting with 'get_' or 'resolve_', such as get_enrichment and resolve_proteins. This uniformity makes the set predictable and easy to navigate.

    Tool Count5/5

    With 9 tools, the server is well-scoped for protein analysis tasks, covering key operations like enrichment, homology, interactions, and ID mapping. Each tool serves a clear purpose without being overwhelming.

    Completeness4/5

    The tool set covers essential protein analysis workflows, including enrichment, homology, interactions, and ID resolution. A minor gap exists in lacking update or delete operations, but this is reasonable for a read-focused database query server.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      D
      maintenance
      A comprehensive Model Context Protocol (MCP) server for accessing the STRING protein interaction database. This server provides powerful tools for protein network analysis, functional enrichment, and comparative genomics through the STRING API.
      6
      4
      MIT
    • A
      license
      B
      quality
      D
      maintenance
      Provides seamless access to UniProtKB protein database, enabling queries for protein entries, sequences, Gene Ontology annotations, full-text search, and ID mapping across 200+ database types.
      5
      53 PyPI
      2
      MIT
    • A
      license
      B
      quality
      D
      maintenance
      A Model Context Protocol server that provides tools for interacting with the STRING database to analyze protein-protein interaction networks and functional enrichment. It enables users to map protein identifiers, retrieve interaction data, and generate biological network visualizations through natural language interfaces.
      11
      4
      BSD 3-Clause
    • F
      license
      B
      quality
      D
      maintenance
      Provides programmatic access to AlphaFold protein structure predictions and UniProt data, enabling users to retrieve protein structures, summaries, and annotations through natural language.
      3
      -