# ksterx/srunx [Health: Active]

**Category:** 👨‍💻 Code Execution  
**Repository:** https://github.com/ksterx/srunx  
**GitHub Stars:** 17  
**Views:** 4  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/ksterx-srunx

## Description
MCP server for the SLURM workload manager. Submit jobs, run YAML workflows, monitor GPU resources, manage SSH profiles, and sync files to remote HPC clusters from natural language. 14 tools spanning local SLURM and SSH-remote clusters; companion CLI and FastAPI Web UI ship in the same package.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `uvx` (confidence: high):

```json
"mcpServers": {
  "srunx": {
    "command": "uvx",
    "args": ["--from"]
  }
}
```

## Documentation

## What ksterx/srunx MCP server does

The ksterx/srunx MCP server connects agent workflows to SLURM-based high-performance computing environments. Its documented scope covers job submission and control, queue and accounting inspection, workflow execution, GPU and cluster monitoring, SSH profile management, and file synchronization for remote clusters. The package also provides a command-line interface, a Python API, and a FastAPI web dashboard, although those interfaces are separate from the MCP tool surface.

The server is suited to environments where workloads run on a local SLURM installation or on one or more clusters reached through SSH. It is especially relevant for machine-learning and other compute-heavy workflows that need GPU allocation, dependencies between jobs, or container execution through Pyxis, Apptainer, or Singularity.

## How it works

Local operations use the available SLURM environment. For a remote target, srunx uses an SSH profile and dispatches the same operations to the selected cluster. The README describes file synchronization to the remote system, execution of `sbatch` there, and log streaming back to the local machine. A profile can be selected through the command interface with `--profile`; the documented `SRUNX_SSH_PROFILE` setting can also select a default profile.

Workflow definitions are written in YAML. Jobs can depend on earlier jobs, and independent branches can run concurrently. Workflow arguments support Jinja2-style substitution, while parent jobs can export values for dependent jobs to consume at workflow-load time. Command-line overrides support individual arguments and matrix-style parameter sweeps with a maximum parallelism setting.

## Setup and configuration

The ksterx/srunx MCP server requires Python 3.12 or newer and access to a SLURM cluster, either directly or through SSH. Install the base package with `uv add srunx` or `pip install srunx`. MCP support is installed with the additional `mcp` dependency, using `uv add "srunx[mcp]"` as documented in the README.

Remote use requires SSH profiles managed by srunx. The material identifies profile operations for adding, listing, synchronizing, and testing profiles, but does not specify the underlying credential format or an MCP launch command. The web dashboard is started separately with `srunx ui` and listens on a local port by default.

## Tools and capabilities

Documented operations include:

- Submit and cancel SLURM jobs.
- List active jobs, partitions, node states, and accounting records.
- Inspect srunx submission history and stream job output.
- Watch job state, cluster state, and resource availability.
- Run and validate YAML workflows with dependencies and parameter sweeps.
- Monitor aggregate GPU availability across partitions.
- Manage SSH profiles and synchronize files for remote clusters.
- Use container settings for Pyxis, Apptainer, and Singularity workloads.

The listing describes these functions as 14 MCP tools, but it does not provide the individual MCP tool names or schemas.

## Limitations and notes

A usable deployment depends on an accessible SLURM cluster; this is not a standalone compute backend. Remote execution also depends on SSH connectivity and a configured profile. The supplied material does not document support for particular MCP clients, the exact MCP server entrypoint, authentication configuration, or environment variables required by the server.

srunx targets SLURM workflows with a relatively small number of dependencies and includes workflow features such as DAG execution and sweeps. The README explicitly positions larger scientific workflow systems such as Snakemake or Nextflow as better choices when full-featured workflow tooling is required.

_Full upstream README: https://allmcps.com/mcp/ksterx-srunx/readme_

