Nomad: Connecting AI Agents to SciFMs¶
Nomad is a lightweight runtime for serving scientific foundation models (SciFMs) to AI agents.
It focuses on two things:
Serve models at scale. Run N PyTorch models across M GPUs through a unified inference interface. Nomad handles loading, scheduling, batching, and packaging, whether your weights live on Hugging Face, local storage, or in Git/Git LFS.
Code-mode execution. Nomad exposes MCP tools as typed Python callables inside a sandbox, so agents can call and compose them efficiently within an existing execution environment.
Built on the Model Context Protocol (MCP), Nomad is agent-agnostic and designed for both HPC and local inference. It makes SciFMs easier to package, deploy, and integrate into real agent workflows.
Start Here¶
Connect to a running server: Getting Started shows how to launch
nomad serve, connect from MCP Inspector or Ursa, and run scripts withnomad code-mode-exec.Host a new model: Model Builder explains how to package a
nomad.fm_base_tool.TorchModuleTool, point Nomad at model weights, and validate the resulting MCP tool.Operate a deployment: Deployment Guide and Deployment Specification cover the container workflow and deployment requirements.
Work on Nomad itself: Developer Documentation collects contributor commands, docs tasks, and environment notes.
Key References¶
Core Concepts¶
Nomad server:
nomad serveloads regular Python tools and PyTorch-backed model tools from config and exposes them over MCP.Code-mode gateway:
nomad code-modeproxies MCP servers into a sandbox where tools can be imported frommcp_tools.<server>.Artifact sources: model weights can come from local paths, Hugging Face, Git/Git LFS repositories, or ORAS artifacts.
Scientific state exchange:
nomad.well_format.WellFormatdefines a common schema for gridded scientific state across Python objects, JSON/MCP payloads, and HDF5 files.