Skip to main content
Glama

hpc-mcp

🌀 Agentic MCP tools for High Performance Computing

PyPI version DOI

img/hpc-mcp.png

  • flux-mcp: MCP functions for Flux Framework.

  • fractale: (fractale) MCP orchestration (agents, databases, ui interfaces).

Related MCP server: Sentinel Core Agent

Usage

This is a library of MCP tools (functions, prompts, and resources) intended for converged computing and HPC use cases. A demo server is provided here, and largely functions are expected to be used a-la-carte as imports to other libraries. We welcome contributions of all functions types that are related to HPC, converged computing, and science. These MCP tools can be used via a standalone server, or combined with other tools.

Environment

Control of tools (access, limits, etc.) is done by way of the environment.

Name

Description

Default

HPCMCP_FILESYSTEM_SANDBOX

enable (require) a sandbox

False

HPCMCP_FILESYSTEM_DATA_ROOT

if sandbox enabled, read-only data root

unset

HPCMCP_FILESYSTEM_RESULT_ROOT

if sandbox enabled, read and write result root for agent to write

unset

HPCMCP_FILESYSTEM_TOKEN_LIMIT

Hard limit of tokens to allow in response

unset

Server

We provide examples for fastmcp and a vanilla mcp (stdio) setup. Neither requirements are added to the install directly, so it's up to the user (you) to install. Tests are performed with fastmcp (TBA)

fastmcp

You will need fastapi and fastmcp installed.

# fastmcp
pip install fastmcp fastapi

To start the demo server:

# Vanilla MCP (with cli)
echo '{"jsonrpc": "2.0", "id": 1, "method": "initialize", "params": {"protocolVersion": "2024-11-05", "capabilities": {}, "clientInfo": {"name": "test", "version": "1.0"}}}' | python3 -m hpc_mcp.server | jq

# Initialize and list tools
(echo '{"jsonrpc": "2.0", "id": 1, "method": "initialize", "params": {"protocolVersion": "2024-11-05", "capabilities": {}, "clientInfo": {"name": "manual-test", "version": "1.0"}}}';
 echo '{"jsonrpc": "2.0", "method": "notifications/initialized"}';
 echo '{"jsonrpc": "2.0", "id": 2, "method": "tools/list"}') | python3 -m hpc_mcp.server | jq

# FastMCP
python3 -m hpc_mcp.server.fastmcp

Testing

I will add tools to git as I write tests for them. To test, start the fastmcp server in one terminal:

python3 -m hpc_mcp.server.fastmcp

In another terminal, run the test. You'll need to pip install pytest pytest-asyncio

pytest -xs tests/test_build_docker.py

# or
pytest -xs tests/test_*.py

TODO

  • Add annotated descriptions to all functions for LLM.

Tools to add:

  • helpers

    • debug

    • result parser (regular expressions)

  • kubernetes

    • deploy job

    • deploy minicluster

License

DevTools is distributed under the terms of the MIT license. All new contributions must be made under this license.

See LICENSE, COPYRIGHT, and NOTICE for details.

SPDX-License-Identifier: (MIT)

LLNL-CODE- 842614

A
license - permissive license
-
quality - not tested
B
maintenance

Maintenance

–Maintainers
–Response time
–Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/converged-computing/hpc-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server