https://github.com/kocierik/mcp-nomad
A nomad MCP Server (modelcontextprotocol)
https://github.com/kocierik/mcp-nomad
mcp nomad server
Last synced: 7 days ago
JSON representation
A nomad MCP Server (modelcontextprotocol)
- Host: GitHub
- URL: https://github.com/kocierik/mcp-nomad
- Owner: kocierik
- License: mit
- Created: 2025-04-20T09:39:28.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2025-05-19T23:13:26.000Z (about 1 month ago)
- Last Synced: 2025-05-20T00:23:42.591Z (about 1 month ago)
- Topics: mcp, nomad, server
- Language: Go
- Homepage: https://www.npmjs.com/package/@kocierik/mcp-nomad
- Size: 32 MB
- Stars: 22
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-devops-mcp-servers - kocierik/mcp-nomad - MCP Server for nomad management, and analyze your cluster, application health, logs and ACL. (Cloud Infrastructure / 🐳 Container Orchestration)
- mcp-index - MCP Nomad - Manage and monitor Nomad jobs, deployments, namespaces, nodes, allocations, variables, volumes, and ACLs. Perform real-time monitoring and secure operations using token-based authentication for Nomad cluster administration and automation. (Cloud Services)
- awesome-mcp-servers - kocierik/mcp-nomad - based server facilitating seamless integration with Nomad for job management and monitoring. (🏗️ Infrastructure)
README
Golang-based MCP server connecting to Nomad
![]()
MCP Nomad Go
Features ⚙
Browse With Inspector ⚙
Use With Claude ⚙
Contributing ↗ ⚙
About MCP ↗## Features
Job Management
- List jobs
- Get job details
- Run jobs
- Stop jobs
- Get job versions
- Get job submission
- List job allocations
- List job evaluations
- List job deployments
- Get job deployment
- Get job summary
- Update jobs
- Dispatch parameterized jobs
- Revert jobs
- Set job stability
- Create job evaluations
- Create job plans
- Force new periodic instances
- Get job scale status
- Scale task groups
- List job servicesDeployment Management
- List deployments
- Get deployment detailsNamespace Management
- List namespaces
- Create namespaces
- Delete namespacesNode Management
- List nodes
- Get node details
- Drain nodes
- Set node eligibilityAllocation Management
- List allocations
- Get allocation details
- Get allocation logs
- Get task logsVariable Management
- List variables with filtering and pagination
- Get variable details
- Create variables with namespace support
- Delete variables with CAS supportExample variable operations:
```bash
# List variables in a namespace
list_variables namespace="my-namespace" prefix="my/path" per_page=10# Get a specific variable
get_variable path="my/path" namespace="my-namespace"# Create a variable
create_variable path="my/path" key="username" value="john" namespace="my-namespace"# Delete a variable
delete_variable path="my/path" namespace="my-namespace"
```Volume Management
- List volumes
- Get volume details
- Delete volumes
- List volume claims
- Delete volume claimsACL Management
- List ACL tokens
- Get ACL token details
- Create ACL tokens
- Delete ACL tokens
- List ACL policies
- Get ACL policy details
- Create ACL policies
- Delete ACL policies
- List ACL roles
- Get ACL role details
- Create ACL roles
- Delete ACL roles
- Bootstrap ACL systemSentinel Policy Management
- List Sentinel policies
- Get Sentinel policy details
- Create Sentinel policies
- Delete Sentinel policiesCluster Management
- Get cluster leader
- List cluster peers
- List regions## Browse With Inspector
To use the latest published version with Inspector:
```bash
npx @modelcontextprotocol/inspector npx @kocierik/mcp-nomad
```### Options Available
```
-nomad-addr string
Nomad server address (default "http://localhost:4646")
-port string
Port for SSE server (default "8080")
-transport string
Transport type (stdio or sse) (default "stdio")
```### Environment Variables
- `NOMAD_ADDR`: Nomad HTTP API address (default: http://localhost:4646)
- `NOMAD_TOKEN`: Nomad ACL token (optional)
## Use With Claude
https://github.com/user-attachments/assets/731621d7-0acf-4045-bacc-7b34a7d83648
### Installation Options
| | Smithery | mcp-get | Pre-built NPM | Pre-built in Github | From sources | Using Docker |
| ------------ | -------------------------------------- | ------------------------------------ | ---------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------ | ---------------------------------------- |
| Claude Setup | Auto | Auto | Manual | Manual | Manual | Manual |
| Prerequisite | Node.js | Node.js | Node.js | None | Golang | Docker |### Using Smithery
```bash
npx -y @smithery/cli install @kocierik/mcp-nomad --client claude
```### Using mcp-get
```bash
npx @michaellatman/mcp-get@latest install @kocierik/mcp-nomad
```### Prebuilt from npm
```bash
npm install -g @kocierik/mcp-nomad
```Update your `claude_desktop_config.json`:
```json
{
"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:
```json
{
"mcpServers": {
"mcp_nomad": {
"command": "mcp-nomad",
"args": [],
"env": {
"NOMAD_TOKEN": "${NOMAD_TOKEN}",
"NOMAD_ADDR": "${NOMAD_ADDR}"
}
}
}
}
```### Building from Source
```bash
go get github.com/kocierik/mcp-nomad
go install github.com/kocierik/mcp-nomad
```### Using Docker linux
```bash
docker run -i --rm --network=host kocierik/mcpnomad-server:latest
```### Using Docker macos/windows
```bash
docker run -i --rm \
-e NOMAD_ADDR=http://host.docker.internal:4646 \
kocierik/mcpnomad-server:latest
```### For Claude macos/windows:
```json
{
"mcpServers": {
"mcp_nomad": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e", "NOMAD_TOKEN=secret-token-acl-optional",
"-e", "NOMAD_ADDR=http://host.docker.internal:4646",
"mcpnomad/server:latest"
]
}
}
}
```### For Claude linux:
```json
{
"mcpServers": {
"mcp_nomad": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"NOMAD_ADDR=http://172.17.0.1:4646",
"-e", "NOMAD_TOKEN=secret-token-acl-optional",
"kocierik/mcpnomad-server:latest"
]
}
}
}
```## License
This project is licensed under the MIT License - see the LICENSE file for details.