Skip to main content

MCP server for PSR Cloud HPC model automation

Project description

PSR Cloud MCP Server

MCP server that exposes PSR Cloud HPC operations as AI tools, built on top of pycloud (psr-cloud on PyPI).

Prerequisites

  1. Python 3.10+
  2. A Personal Access Token from PSR Cloud:
    • Go to sso.psr-inc.com/profile
    • Log in with your corporate PSR Google account
    • Generate a token under PSR Cloud — Personal Access Tokens
    • Save the token value (shown only once)

Installation

Option A — from the Git repository

pip install git+https://github.com/your-org/psr-cloud-mcp.git

This installs the psr-cloud-mcp CLI and pulls psr-cloud from PyPI automatically.

Option B — from a local clone (development)

git clone https://github.com/your-org/psr-cloud-mcp.git
cd psr-cloud-mcp
pip install -e .

Option C — from PyPI (once published)

pip install psr-cloud-mcp

Authentication

Set two environment variables before starting the server:

export PSR_CLOUD_EMAIL=yourname@psr-inc.com
export PSR_CLOUD_ACCESS_TOKEN=<your-token>

On Windows:

$env:PSR_CLOUD_EMAIL = "yourname@psr-inc.com"
$env:PSR_CLOUD_ACCESS_TOKEN = "<your-token>"

Running the server

# directly
python -m psr.cloudmcp

# or via the installed script
psr-cloud-mcp

# or via the MCP CLI
mcp run psr/cloudmcp/server.py

Configuring Claude Code

Add to ~/.claude/settings.json (or settings.local.json for local-only):

{
  "mcpServers": {
    "psr-cloud": {
      "command": "psr-cloud-mcp",
      "env": {
        "PSR_CLOUD_EMAIL": "yourname@psr-inc.com",
        "PSR_CLOUD_ACCESS_TOKEN": "<your-token>"
      }
    }
  }
}

If you prefer not to store the token in the config file, omit the env block and set the variables in your shell profile instead.

Configuring Claude Desktop

Open the Claude Desktop config file:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Add the psr-cloud entry under mcpServers:

{
  "mcpServers": {
    "psr-cloud": {
      "command": "psr-cloud-mcp",
      "env": {
        "PSR_CLOUD_EMAIL": "yourname@psr-inc.com",
        "PSR_CLOUD_ACCESS_TOKEN": "<your-token>"
      }
    }
  }
}

If psr-cloud-mcp is not on the system PATH (common on Windows), use the full path to the executable:

{
  "mcpServers": {
    "psr-cloud": {
      "command": "C:\\Users\\<user>\\AppData\\Local\\Programs\\Python\\Python3xx\\Scripts\\psr-cloud-mcp.exe",
      "env": {
        "PSR_CLOUD_EMAIL": "yourname@psr-inc.com",
        "PSR_CLOUD_ACCESS_TOKEN": "<your-token>"
      }
    }
  }
}

To find the exact executable path, run:

where.exe psr-cloud-mcp

After saving the file, restart Claude Desktop. The PSR Cloud tools will appear in the tools panel (hammer icon).

Available tools

Tool Description
list_cases List cases from the last N days
get_cases Get details for specific case IDs
get_case_status Poll execution status of a case
get_case_log Retrieve execution log text
list_download_files List result files available for a case
run_case Submit a new model run
cancel_case Cancel a running or queued case
download_results Download result files to a local path
get_programs List available programs (SDDP, OPTGEN, …)
get_program_versions List versions for a program
get_execution_types List execution types for a program + version
get_memory_per_process_ratios List valid memory ratio strings

Typical AI workflow

get_programs()
  → get_program_versions("SDDP")
  → get_execution_types("SDDP", "18.0")
  → run_case(name="my-run", data_path="/path/to/data", program="SDDP", ...)
  → get_case_status(case_id)   # poll until SUCCESS
  → list_download_files(case_id)
  → download_results(case_id, output_path="/path/to/results")

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

psr_cloud_mcp-0.1.0.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

psr_cloud_mcp-0.1.0-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file psr_cloud_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: psr_cloud_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for psr_cloud_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 027b7da7c4e2c7e75e5bf4372270b2dd96b74b57389fb3e301dc96f32180679e
MD5 c6dc79db7a8835445302da8071bd1e9a
BLAKE2b-256 de6b66264687f54ea911aea59b3b39e653004509a878f3f06e8a08f45b54c697

See more details on using hashes here.

File details

Details for the file psr_cloud_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: psr_cloud_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for psr_cloud_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ddb10c0268084ee56c0f043f2d02b5593a617ac69b53792b84ae397367bc2927
MD5 b957eeaefb4cb3806dc4e6f1d867d39d
BLAKE2b-256 46e65213db572b208f0de515f696b0f277d3697c92829270f4a216732a23817b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page