Back to Home
cyverse icon

irods-mcp-server

Verified Safe

by cyverse

Overview

Provides a Machine-Controlled Process (MCP) server for AI clients to access and manage data within iRODS data stores.

Installation

Run Command
docker run -i --rm -e IRODS_MCP_SVR_IRODS_SHARED_DIR_NAME=shared -e IRODS_HOST=data.cyverse.org -e IRODS_PORT=1247 -e IRODS_ZONE_NAME=iplant cyverse/irods-mcp-server

Environment Variables

  • IRODS_MCP_SVR_REMOTE
  • IRODS_MCP_SVR_SERVICE_URL
  • IRODS_MCP_SVR_BACKGROUND
  • IRODS_MCP_SVR_DEBUG
  • IRODS_MCP_SVR_LOG_PATH
  • IRODS_MCP_SVR_IRODS_PROXY_AUTH
  • IRODS_MCP_SVR_IRODS_SHARED_DIR_NAME
  • IRODS_MCP_SVR_IRODS_WEBDAV_URL
  • IRODS_HOST
  • IRODS_PORT
  • IRODS_ZONE_NAME
  • IRODS_USER_NAME
  • IRODS_USER_PASSWORD
  • IRODS_MCP_SVR_OIDC_DISCOVERY_URL
  • IRODS_MCP_SVR_OAUTH2_CLIENT_ID
  • IRODS_MCP_SVR_OAUTH2_CLIENT_SECRET

Security Notes

The server uses `Access-Control-Allow-Origin: *` for CORS, which is very broad and could be a security concern if not mitigated by external proxies/firewalls. Logging is configured to report caller information (`log.SetReportCaller(true)`), which may expose sensitive file paths in logs if not configured differently for production environments. While `service_url` supports HTTPS, the server itself does not strictly enforce it, relying on deployment configuration. Basic authentication transmits credentials (which could be base64 decoded) and relies on the underlying HTTP transport for security (e.g., HTTPS). OAuth2/OIDC support adds a robust authentication layer but requires careful configuration of client ID/secret and discovery URLs. Hardcoded credentials for Keycloak are for a development setup only, not for iRODS access.

Similar Servers

Stats

Interest Score29
Security Score7
Cost ClassMedium
Avg Tokens50000
Stars3
Forks0
Last Update2026-01-06

Tags

iRODSData AccessMCPAIData Store