Skip to content

Connecting to CyVerse

MESA piggybacks on CyVerse for iRODS storage and identity. This page covers how to wire your CyVerse credentials into the MCP servers MESA ships.

Get a CyVerse account

If you don't have one, sign up at user.cyverse.org. Activation is usually instant; some institution domains require admin approval.

iRODS connection parameters

For all MCP servers in this project, the iRODS connection defaults are:

irods_host: data.cyverse.org
irods_port: 1247
irods_zone_name: iplant
irods_shared_dir_name: shared      # public collection at /iplant/home/shared

Authentication options

Read-only access to /iplant/home/shared. No credentials required.

# In your MCP server's config.yaml:
irods:
  host: data.cyverse.org
  port: 1247
  zone: iplant
  anonymous: true

Read/write to your home directory (/iplant/home/<you>).

irods:
  host: data.cyverse.org
  port: 1247
  zone: iplant
  user: YOUR_CYVERSE_USERNAME
  password: YOUR_CYVERSE_PASSWORD

Warning

Don't commit your password to git. Use an environment variable substitution if your client supports it, or store the config in a chmod 600 file outside the project tree.

The hosted mesa-mcp service authenticates users through CyVerse Keycloak. Your MCP client opens a browser, you sign in with CyVerse credentials, and the resulting bearer token is cached for the session.

No config-file change required — your client handles the OIDC dance.

Verifying your connection

Use the ds_ping tool to verify the server can reach iRODS:

Ping the data store.

If mesa-mcp is healthy you'll see a response like:

mesa-mcp v0.0.1 — connected to data.cyverse.org as alice (zone iplant)

Storage quotas

Resource Default Request more
CyVerse Data Store 100 GB CyVerse user portal
MESA project allocation Negotiated per project Email the PI

Globus transfer

For TB-scale uploads/downloads, use Globus rather than iRODS native put/get: