Skip to content

terrain-mcp

Node.js MCP server for the CyVerse Terrain API — enables AI-powered scientific computing workflows with Claude Desktop, VS Code Cline, and other MCP-compatible AI assistants.

Repository github.com/cyverse/terrain-mcp
Language Node.js ≥ 20
License Apache 2.0
Status Public release
MCP transports stdio

What it does

terrain-mcp provides a standardized MCP interface to the CyVerse Terrain API, enabling AI assistants and automation tools to manage scientific applications, data, and analyses on the CyVerse Discovery Environment.

Capabilities

  • Scientific App Management — browse, search, and manage thousands of scientific applications.
  • Analysis Workflows — submit, monitor, and manage computational analyses.
  • Data Management — upload, download, organize, and share scientific data.
  • Collaboration — share data and analyses with other researchers.
  • Automation — build automated scientific workflows with AI assistance.

Prerequisites

  • Node.js ≥ 20.0.0
  • npm ≥ 10.0.0
  • Git — for cloning the repository
  • CyVerse account — free at cyverse.org
  • Operating system — Linux (Ubuntu 20.04+), macOS, or Windows with WSL2

Install on Ubuntu

# System packages
sudo apt update && sudo apt upgrade -y
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs build-essential python3 git curl openssl

# Verify
node --version  # should show v20.x.x or higher
npm --version   # should show v10.x.x or higher

terrain-mcp vs formation-mcp

Both servers expose the Discovery Environment. The split is by API surface:

Server API
formation-mcp CyVerse Formation API — a higher-level orchestration API on top of Terrain
terrain-mcp CyVerse Terrain API — direct lower-level access

Most users should pick formation-mcp for cleaner abstractions; pick terrain-mcp when you need direct Terrain API features (e.g., low-level analysis filters or sharing operations) that Formation does not yet expose.

Further reading

Full README — installation, configuration, available tools, usage examples, and contributing guide.