LabscoMCP early access ↗
kocierikMCP SERVER

MCP Nomad Go

Ask about a HashiCorp Nomad cluster in the conversation, answered over Nomad's own /v1/ HTTP API.

by kocierik ↗Containers, Kubernetes & Cluster OperationsCommunity

LABSCO SUMMARY

A typed bridge to Nomad, not a shell wrapper around the CLI.

Tools sit behind narrow interfaces and the generic request helper refuses any path outside an internal allow-list, so an agent cannot wander the whole API surface. Before wiring it into a client, run it under the MCP Inspector — npx @modelcontextprotocol/inspector npx @kocierik/mcp-nomad — and look at the tool list it registers.

What it is

A single Go binary that connects an MCP client to a Nomad cluster. It speaks Nomad's official /v1/ API rather than shelling out to the CLI, and ships as an npm package, a release binary, or a go install target.

What you get

  • Cluster access from the conversation, over the same /v1/ API the Nomad CLI uses
  • Typed helpers for cluster actions, including stopping an allocation
  • Three transports: stdio by default, plus sse and streamable-http on a port you choose
  • Region and namespace defaults, so calls that omit them still land in the right place
  • A path allow-list on the generic request helper, which rejects API paths outside it

Requirements

NOMAD_ADDR for the cluster address, default http://localhost:4646, and NOMAD_TOKEN if your cluster uses ACLs. TLS is configured with NOMAD_CACERT, NOMAD_SKIP_VERIFY and NOMAD_TLS_SERVER_NAME. Node is needed only for the npx path; the release binary needs nothing, and building from source needs Go.

Setup effort

One command — npx -y @kocierik/mcp-nomad