MCP.Market

Rosetta MCP server

by Arielbs·io.github.Arielbs/rosetta-mcp-server·v1.3.1·19 stars

Rosetta/PyRosetta protein modeling and Biotite translation for computational biology

B82/100grade B
What users say
No reviews yet
Be the first
Safety scan
B82/100

full report

Adoption
Growing

19 stars120 downloads/wk

Reviews

Write one

Nobody has reviewed Rosetta yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

Rosetta tools (18, 1 write)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • biotite_to_rosetta

    ALWAYS use this tool when asked about Biotite vs Rosetta equivalents. Returns the Rosetta/PyRosetta equivalent of a Biotite function with working example code. Covers: structure I/O, SASA, RMSD, superimposition, secondary structure, distances, angles, contacts, hydrogen bonds, B-factors, and residue selection.

  • check_pyrosetta

    Check if PyRosetta is importable in the current environment. Use before PyRosetta-dependent tools to verify availability.

  • find_rosetta_scripts

    Resolve the rosetta_scripts executable path by checking exe_path, ROSETTA_BIN env, common directories, and PATH. Use to verify Rosetta is installed.

  • get_cached_docs

    Search locally cached Rosetta CLI docs for a keyword. Auto-caches on first use. Use to look up command-line flags or parser info.

  • get_rosetta_help

    Get help for any Rosetta topic, mover, filter, or concept. Accepts general topics (score_functions, movers, filters, xml, parameters) or specific names (FastRelax, Ddg, ChainSelector). Auto-fetches live documentation when available.

  • get_rosetta_info

    Get comprehensive Rosetta installation info including available score functions, movers, filters, selectors, task operations, parameters, and command-line options. Use this first to understand what Rosetta components are available. For live PyRosetta API details, use pyrosetta_introspect.

  • get_rosetta_web_doc

    Fetch and extract text from a specific Rosetta docs URL. Use after search_rosetta_web_docs to read a documentation page.

  • install_pyrosetta_installer

    Install PyRosetta using the pyrosetta-installer package. Takes 10-30 minutes. Use when PyRosetta is not available and needed for scoring or design.

  • pyrosetta_introspect

    Search PyRosetta API classes (movers, filters, selectors, task operations) and return docs and signatures. Use to discover available PyRosetta classes or get constructor details.

  • pyrosetta_score

    Score a PDB file using PyRosetta. Returns total energy in REU. Use to evaluate structure quality or compare designs. Optionally returns per-residue energy breakdown.

  • python_env_info

    Get Python executable path, version, and pip package list. Use to diagnose environment issues or verify package installations.

  • rosetta_scripts_schema

    Generate and cache the RosettaScripts XML schema (XSD). Optionally extract element names. Use to get the authoritative list of valid XML elements.

  • rosetta_to_biotite

    ALWAYS use this tool when asked about Rosetta vs Biotite equivalents. Returns the Biotite equivalent of a Rosetta/PyRosetta function with working example code. Covers: structure I/O, SASA, RMSD, superimposition, secondary structure, distances, angles, contacts, hydrogen bonds, B-factors, interface analysis, database access, and residue selection.

  • run_rosetta_scriptswrite action

    Run a RosettaScripts XML protocol on an input PDB file. Use when executing Rosetta protocols. Requires rosetta_scripts binary.

  • search_rosetta_web_docs

    Search online Rosetta documentation at rosettacommons.org. Use when you need docs for a specific Rosetta feature.

  • translate_rosetta_script_to_biotite

    ALWAYS use this tool when asked to convert or translate Rosetta code to Biotite. Translates RosettaScripts XML or PyRosetta code to Biotite Python code. Analysis operations are translated; design/optimization are flagged as Rosetta-only.

  • validate_xml

    Validate a RosettaScripts XML protocol. Checks XML syntax and optionally validates element names against the Rosetta XSD schema. Use before run_rosetta_scripts to catch errors early.

  • xml_to_pyrosetta

    Translate RosettaScripts XML to equivalent PyRosetta Python code. Supports 37 element types including movers, filters, selectors, and task operations. Use when converting XML protocols to Python.

Public scan report

scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it

no findings
  • Code scan4 source files scanned25/25
  • –Live reliabilityno gateway calls yet and no remote to proben/a
  • –Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitylocal package, no credentials required12/15
  • Maintenancelast push 175 days ago8/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Overall 82/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How Rosetta compares

Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
82/100
higher than 63% of 48,255 servers
Tools
18
the typical server has 7
Tools that change things
6%
typical: 0%. Fewer write tools means less an agent can break
GitHub stars
19
more than 91% of 28,688 servers
Downloads a week
120
more than 67% of 12,191 servers with a package

What its tools let an agent do: 16 read · 2 run or deploy

Install Rosetta in Claude Code, Cursor or VS Code

Runs npx -y rosetta-mcp-server on your machine. Read the scan report first; the gateway never runs local packages.

claude mcp add rosetta-mcp-server -- npx -y rosetta-mcp-server
Add to Cursor

What the publisher says

From the Rosetta repository's README, as published. We do not edit it. Read it on GitHub

Rosetta MCP Server

Author: Ariel J. Ben-Sasson

A Model Context Protocol (MCP) server that lets Cursor (or any MCP client) work with Rosetta, PyRosetta, and Biotite: run RosettaScripts, validate XML protocols, translate between Rosetta and Biotite, score structures, and query documentation -- all from your AI coding assistant.

What's new in v1.3.0 (vs v1.1.8 on npm)

New: Biotite integration

  • rosettatobiotite -- Find the Biotite equivalent of any Rosetta function with working example code (21 mappings covering structure I/O, SASA, RMSD, superimposition, secondary structure, contacts, hydrogen bonds, B-factors, angles, and more)
  • biotitetorosetta -- Reverse lookup: find the Rosetta equivalent of a Biotite function
  • translaterosettascripttobiotite -- Translate entire RosettaScripts XML or PyRosetta code to Biotite Python. Design/optimization operations are flagged as Rosetta-only.
  • Fuzzy search with keyword aliases ("contacts", "binding energy", "surface area", "align", etc.)

Improved: XML to PyRosetta translator

  • 37 element types supported (was 6): 11 movers, 9 filters, 10 selectors, 7 task operations
  • Full attribute handling: repeats, disable_design, cartesian, tolerance, threshold, distance, and more
  • Child element support: MoveMap (with Span), Reweight, ScoreFunction
  • Reports unrecognized elements so you know what needs manual work

Improved: Help and documentation

  • getrosettahelp now accepts any topic: movers by name ("FastRelax"), concepts ("constraints", "docking"), or score functions ("ref2015") -- auto-fetches live docs from rosettacommons.org
  • searchrosettawebdocs fallback**: when DuckDuckGo is rate-limited, probes direct Rosetta docs URLs
  • getcacheddocs auto-caches: no need to call cacheclidocs first
  • Expanded static help for score_functions, movers, filters, xml, and parameters

Improved: Scoring

  • pyrosettascore: new perresidue option returns per-residue energy breakdown
  • scorefxn parameter now works (was ignored in v1.1.8)
  • Proper error messages for missing files instead of silent {}

Improved: Validation

  • validatexml: new validateagainst_schema option checks element names against the Rosetta XSD schema (catches typos like FastRleax)

MCP spec compliance fixes

  • tools/call responses now use correct { content: [{ type: "text", text }] } format
  • Tool errors return isError: true (not JSON-RPC errors)
  • Standard JSON-RPC error codes (-32601, -32700, -32603)
  • Removed false resources capability advertisement

Security fixes

  • User input no longer interpolated into Python code (uses env vars / stdin)
  • Temp files written to os.tmpdir() (not module directory)

Cleanup

  • Removed 3 redundant tools: listfunctions (merged into getrosettainfo), searchpyrosettawheels, cacheclidocs (auto-cache in getcached_docs)
  • Removed hardcoded personal paths
  • Fixed shadowed variables, async anti-patterns, dead code
  • 18 tools (was 21), all with improved agent-oriented descriptions

Example: asking a naive question

This is what makes the MCP server powerful -- an AI agent can answer domain questions by calling the right tools automatically:

User asks in Cursor: "How do I relax my protein and what's the Biotite equivalent?"

The agent calls two MCP tools behind the scenes:

1. getrosettahelp("FastRelax") returns 6000+ chars of live documentation:

FastRelax performs all-atom relaxation using the FastRelax protocol. Parameters include scorefxn, repeats, cartesian, disable_design, MoveMap configuration...

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

Rosetta: common questions

Is Rosetta MCP server safe?
Mostly: it is graded B (82/100). Read the Rosetta safety report
How do I install Rosetta?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does Rosetta need an API key?
No secret keys are declared. It reads 3 settings from the environment.
Is Rosetta maintained?
The last commit was 212 days ago (2026-04-05). The latest release is v1.3.1.
How does Rosetta compare with other MCP servers?
safety score 82/100 (higher than 63% of 48,255 servers); tools 18 (the typical server has 7); tools that change things 6% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.