mcpField
M
Mcp Nomad

Mcp Nomad

Local
npmjs.comCloud & Infra59Updated 3d ago

About Mcp Nomad

Mcp Nomad is a Go-based MCP server that connects to a HashiCorp Nomad cluster. It supports stdio, SSE and Streamable HTTP transports and is configured through environment variables for address, token, region and TLS. It suits operators who want to manage Nomad clusters from an AI client.

Key features

  1. 01Written in Go, installable via npm or prebuilt binaries
  2. 02Supports stdio, sse and streamable-http transports
  3. 03Configures Nomad address, ACL token and namespace by environment
  4. 04Handles multi-region clusters and TLS settings
  5. 05Can be tested with MCP Inspector

Use cases

  1. 01Checking Nomad cluster status from Claude Desktop
  2. 02Stopping Nomad allocations through an MCP client
  3. 03Debugging the Nomad server in MCP Inspector

MCP support

Mcp Nomad runs as an MCP server that exposes Nomad HTTP API operations as tools to MCP clients, over stdio, SSE or Streamable HTTP transports.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"nomad": {
"command": "npx",
"args": [
"-y",
"@kocierik/mcp-nomad"
]
}
}
}
Run commandnpx -y @kocierik/mcp-nomad

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@kocierik/mcp-nomad

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README
Golang-based MCP server connecting to Nomad

nomad-futuristic-logo
MCP Nomad Go

Use with Claude ⚙ Server options ⚙ MCP Inspector (testing) ⚙ Contributing ↗ ⚙ About MCP ↗

Go Report latest release badge license badge

Use With Claude

https://github.com/user-attachments/assets/731621d7-0acf-4045-bacc-7b34a7d83648

Installation Options
Pre-built NPMPre-built in GithubFrom sources
Claude SetupManualManualManual
PrerequisiteNode.jsNoneGolang
Prebuilt from npm

The package publishes a mcp-nomad CLI. Easiest zero-install option (downloads to npm’s cache; needs Node/npm):

npx -y @kocierik/mcp-nomad

Or install globally so mcp-nomad is on your PATH:

npm install -g @kocierik/mcp-nomad

claude_desktop_config.json with npx (recommended):

{
  "mcpServers": {
    "mcp_nomad": {
      "command": "npx",
      "args": ["-y", "@kocierik/mcp-nomad"],
      "env": {
        "NOMAD_TOKEN": "${NOMAD_TOKEN}",
        "NOMAD_ADDR": "${NOMAD_ADDR}"
      }
    }
  }
}

If you used npm install -g, keep command / args as the binary directly:

{
  "mcpServers": {
    "mcp_nomad": {
      "command": "mcp-nomad",
      "args": [],
      "env": {
        "NOMAD_TOKEN": "${NOMAD_TOKEN}",
        "NOMAD_ADDR": "${NOMAD_ADDR}"
      }
    }
  }
}
From GitHub Releases

Download the binary and configure Claude Desktop like so:

{
  "mcpServers": {
    "mcp_nomad": {
      "command": "mcp-nomad",
      "args": [],
      "env": {
        "NOMAD_TOKEN": "${NOMAD_TOKEN}",
        "NOMAD_ADDR": "${NOMAD_ADDR}"
      }
    }
  }
}
Building from Source
go get github.com/kocierik/mcp-nomad
go install github.com/kocierik/mcp-nomad

Server options

Command-line flags (also relevant when pairing with MCP Inspector against a manually started binary):

  -nomad-addr string
    	Nomad server address (default "http://localhost:4646")
  -port string
    	Port for HTTP server (default "8080")
  -transport string
    	Transport type (stdio, sse, or streamable-http) (default "stdio")
Environment variables
  • NOMAD_ADDR: Nomad HTTP API address (default: http://localhost:4646)
  • NOMAD_TOKEN: Nomad ACL token (optional)
  • NOMAD_REGION: forwarded as the REST region query parameter when callers do not override it (multi-region clusters)
  • NOMAD_NAMESPACE: default namespace for tools that accept an optional namespace when the tool omits it
  • TLS: NOMAD_CACERT, NOMAD_SKIP_VERIFY, NOMAD_TLS_SERVER_NAME (see utils/client.go / buildTLSConfig)

The HTTP client follows the official /v1/ API and is split across utils/client_*.go; MCP tools depend on narrow interfaces in utils/nomad_tool_interfaces.go.

NomadClient.MakeRequest (used only for a few cluster/legacy call sites) rejects paths outside an internal allow-list — prefer typed helpers such as StopAllocation.

Browse with MCP Inspector

Use this for local testing and debugging — not required for Claude Desktop daily use.

To run the latest published npm build under the MCP Inspector:

npx @modelcontextprotocol/inspector npx @kocierik/mcp-nomad
Inspector with a local HTTP server (optional)

Default transport is stdio. To attach the Inspector as Streamable HTTP, start the binary in another terminal first:

go run . -transport=streamable-http -port=8080

Then open http://localhost:8080/mcp in the Inspector. For -transport=sse, use http://localhost:8080/sse.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.