slurm-mcp
slurm-mcp
Slurmスケジューラの状態をエージェントに公開する読み取り専用のMCPサーバー。 ホワイトリストはコードで強制され、プロンプトで要求されるものではない。また、ツールサーフェスは段階的開示(progressive disclosure)を採用しているため、Slurmに関する質問があっても、Slurm関連の情報でコンテキストウィンドウを丸ごと消費することはありません。
v0.1.0. ガード、トピックサーフェス、stdioサーバーは構築・テスト済みです。実クラスターに対して実行することもできますし、Slurmがインストールされていない環境でも記録済みのフィクスチャー(fixtures)に対して実行できます。
ガードがコードにある理由
「読み取り専用のコマンドだけを使え」というシステムプロンプトは、要求であって制御ではありません。フェイルオープン、つまり失敗時には開かれたままになります。ジェイルブレイクや、混乱したツール呼び出し、あるいは普通のハルシネーションだけで、本番コントローラで scontrol update に到達できてしまいます。
ノードをドレインできる操作は、単に非推奨とするのではなく、表現そのものを不可能にしなければなりません。そこで許可リストはguard.pyに置かれ、すべての呼び出しのたびに実行されます:
実行できるのは8つの読み取り専用バイナリだけです。
scontrolはshowだけ許可され、update、reconfigure、shutdown、reboot、requeue、hold、powerを含む他の15以上の操作は拒否されます。引数にシェルのメタ文字が含まれている場合は拒否され、さらにコマンドは
shell=Falseで実行されます — これは多重防御であって、唯一の防壁ではありません。
脅威モデルは悪意のあるユーザーではありません。 午前3時に紛らわしいログ行を読み、今まさに思い切ったことをしようとしているエージェントです。
テストはプロンプトの文言に対してではなく、51件の実際の変更・インジェクション試行によってこの設計を検証しています。プロンプトレベルの約束はテストできないからです:
make testRelated MCP server: systemd-mcp
段階的開示(progressive disclosure)
単純な設計はバイナリごとに1ツールを公開するというものでした — sinfo, squeue, sacct, sdiag, sprio, sshare, scontrol, sacctmgr — それぞれがフラグのスキーマを持ちます。Slurmのフラグ面は膨大で、その大半はどんな質問にも関係ありませんが、そのすべてが毎ターンコンテキストに載ります。
このサーバーが公開するのは3つのツールです:
tool | 用途 |
| ほとんどのセッションが最初に開くスナップショット — ノード、キュー、診断を1回の呼び出しで取得 |
| 1つのトピックと任意のフィルター。対象はクローズドな語彙であり、コマンドラインではありません |
| 1つのトピックの列の意味とフィルターを、必要なときにだけ取得 |
計測済みで、make footprint で再現できます:
resident, three tools 1088 chars
detail, fetched on request 3029 chars
flat one-tool-per-binary 4441 chars (4.1x resident)これはコンテキストコストの計測であり、品質の主張ではありません。詳細は要求されるまで常駐しないということであり、診断性能が向上するということではありません。ここに書かれた内容は slurm-rca-bench でスコアリングされていません。
トピック: queue, nodes, accounting, priority, fairshare、diagnostics, config.
クイックスタート
クラスターは不要です。
make install
make surface # the read-only allowlist, and what is denied
make demo # a full overview against recorded fixtures
make footprint # reproduce the context measurement above
make check # ruff, ruff format, mypy --strict, pytest実クラスターに対して実行する場合は --fixtures を外します:
slurm-mcp overview
slurm-mcp query queue --filter user=alice
slurm-mcp describe accountingMCPサーバーとして
pip install -e ".[server]"
slurm-mcp serve # stdio; add --fixtures to serve recorded dataそのコマンドを任意のMCPクライアントに指定してください。すべてのレスポンスには [live] または [fixture] というラベルが付くので、記録されたデータがクラスターの実ヘルスとして誤認されることはありません。
制限事項
読み取り専用が強制されるのは、このサーバー自身のサーフェスに対してだけです。 ホストをサンドボックス化するものではなく、エージェントが他のどのツールを与えられているかもそれについては語りません。
フィクスチャは例示であり、ベンチマークではありません。 サーフェスを実行可能にするためのもっともらしいクラスター形状を提供しているだけで、それらから結果を引用してはいけません。
スコアリングなし。 ここでの主張はツールサーフェスについてであり、診断の正確性についてではありません。段階的開示がエージェントの診断を変えるかどうかを評価するのは
cluster-sre-agentの仕事であり、まだ実行されていません。単一のSlurm方言のみ。 出力形式はSlurm 25.xy列レイアウトに対してテストされています。古いバージョンでは異なる場合があります。
sacctがブロックします。 劣化したaccounting pathはエラーにとは限らず、ハングします。20秒のタイムアウトで呼び出しが切られ、その旨が報告されます。なぜなら、永遠に待つエージェントよりも、読み取り失敗を伝えられたエージェントの方がまだマシだからです。
関連
cluster-sre-agent — このようなサーフェスを利用するエージェント。このデザインは、その内部の読み取り専用ツールレイヤーに由来します。このリポジトリはそのスタンドアロンのサーバーです。
cluster-ops-skills — クラスターを読めるようになったエージェントが従うランブックです。
slurm-rca-bench — 診断品質についての主張は、ここで証明されなければなりません。
ライセンス
MIT.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables read-only interaction with Proxmox homelab VMs and containers, allowing LLM agents to list VMs, monitor status and performance metrics, view snapshots, and check cluster health through natural language queries.8MIT
- AlicenseNot gradedqualityNot gradedmaintenanceProvides AI assistants with safe, read-only access to Linux systemd services, including status monitoring, log querying, and dependency analysis, with optional granular permissions for service management actions.2
- AlicenseNot gradedqualityDmaintenanceEnables interaction with Slurm HPC clusters via SSH, allowing job submission, monitoring, and error diagnosis through MCP clients like Claude Desktop.6MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage SLURM HPC clusters via SSH. Supports job submission, resource monitoring, queue management, and file operations.104
Related MCP Connectors
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Runtime permission, approval, and audit layer for AI agent tool execution.
See, price, and control every tool call your AI agents make: policy checks, cost, and audit tools.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Zhanyl-tech/slurm-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server