MCP server · Engineering and operations

Nomad MCP server

Nomad in any MCP client, through Memtro: Nomad does not publish this server. Memtro's Nomad connector reads Nomad through its API with the credentials you connect, and one endpoint hands those tools, every other system you connect and Memtro's memory tools to Claude Code, Cursor, Claude Desktop or anything else that speaks Streamable HTTP, as you.

What the model can do

HashiCorp Nomad clusters: jobs with status and allocation counts, a job's groups, tasks and versions (never its specification's environment or secrets), allocations by job or node with task states, deployments, evaluations (blocked and failed placements), and client nodes. When you ask, can dispatch parameterized jobs, force a periodic run, scale a task group, revert a job to an earlier version, re-evaluate or stop a job, stop, restart or signal an allocation, drain a node or change its eligibility, and promote, fail or pause a deployment.

Reads

  • nomad_list_jobsNomad jobs: id, type (service, batch, system, sysbatch), status, priority, periodic or parameterized, when submitted, and allocation counts (running…
  • nomad_get_jobOne Nomad job: type, status, version and whether stable, datacenters, periodic schedule or parameterized inputs, and its task groups with counts…
  • nomad_list_allocationsNomad allocations (a task group placed on a node): job, group, node, client status (running, pending, failed, lost, complete), desired status…
  • nomad_list_deploymentsNomad deployments (rolling updates): job, version, status (running, successful, failed, paused…
  • nomad_list_evaluationsNomad evaluations (scheduling decisions), newest first: job, what triggered it, status, and the task groups that could not be placed.
  • nomad_list_nodesNomad client nodes: name, datacenter, node pool, class, status (ready, down, initializing), scheduling eligibility, whether draining…

Acts, when you ask

These change something in Nomad. The model is told to use them only when you ask for exactly that, and each one is granted by name: per team on a shared connection, by the owner on a personal one.

  • nomad_dispatch_jobDispatches a new instance of a parameterized Nomad job, with the meta values and payload you give; it runs a workload on the cluster.
  • nomad_force_periodic_runStarts a new instance of a periodic Nomad job now, outside its schedule, even if its overlap rule would forbid it.
  • nomad_scale_groupSets the number of allocations of one task group of a Nomad job, starting or stopping instances to match; scaling down stops running work.
  • nomad_revert_jobRedeploys a Nomad job at an earlier version (by number or tag), replacing what runs now.
  • nomad_evaluate_jobAsks the Nomad scheduler to re-evaluate a job now; with force_reschedule…
  • nomad_stop_jobStops a Nomad job and every one of its allocations, taking the service down.
  • nomad_stop_allocationStops one Nomad allocation; the scheduler places a replacement elsewhere.
  • nomad_restart_allocationRestarts a Nomad allocation's tasks in place (one task by name, or all of them including ones that already finished)…
  • nomad_signal_allocationSends a Unix signal (such as SIGHUP to reload, or SIGTERM) to a Nomad allocation's tasks, or one task; what happens depends on the program.
  • nomad_drain_nodeDrains a Nomad client node: no new work is placed on it and its allocations migrate to other nodes, force-stopped after the deadline.
  • nomad_set_node_eligibilityMarks a Nomad client node eligible or ineligible for new allocations; running work stays where it is.
  • nomad_promote_deploymentPromotes a Nomad deployment's canaries (all groups, or the groups named)…
  • nomad_fail_deploymentMarks a Nomad deployment failed, which stops it placing new allocations and rolls the job back to its last stable version if that differs.
  • nomad_pause_deploymentPauses a Nomad deployment's rolling update where it stands, or resumes a paused one.

Connect it

First connect Nomad on Dashboard → Connections, then add Memtro to your client once. The Nomad tools appear alongside the tools of everything else you have connected; nothing is configured per connector.

Claude Code

The Memtro plugin registers the server and a skill for when to use it; the tools are then available in every session.

claude plugin marketplace add memtro-org/claude-memtro
claude plugin install memtro@memtro --config api_key=sk-memtro-...

Cursor

Add the server to .cursor/mcp.json in the project, or to the global file under ~/.cursor/.

{
  "mcpServers": {
    "memtro": {
      "url": "https://platform.memtro.com/api/mcp",
      "headers": {
        "Authorization": "Bearer sk-memtro-..."
      }
    }
  }
}

Claude Desktop

Create a personal API key on Dashboard → Profile → API keys. In Claude Desktop add an MCP server of type HTTP with URL https://platform.memtro.com/api/mcp and the header Authorization: Bearer sk-memtro-…

OpenCode

A remote server in opencode.json.

{
  "mcp": {
    "memtro": {
      "type": "remote",
      "url": "https://platform.memtro.com/api/mcp",
      "headers": {
        "Authorization": "Bearer sk-memtro-..."
      }
    }
  }
}

Pi

One command: pi mcp add memtro --url https://platform.memtro.com/api/mcp --bearer-token-env-var MEMTRO_API_KEY. Tools arrive as mcp__memtro__*. The pi-memtro extension registers it for you, alongside Memtro as the model.

Any other client

Add an MCP server of type HTTP (Streamable HTTP, stateless) at https://platform.memtro.com/api/mcp with the header Authorization: Bearer sk-memtro-.... Codex, Zed, Windsurf, Cline and the SDKs all take a remote server this way.

Who may use it

The key identifies the person, and the server offers that person the tools they may use everywhere else in Memtro. A shared Nomad connection is used by the teams an administrator granted it to, tool by tool, on the Permissions page; a personal connection is used by its owner alone, and its tools that act stay off until the owner allows them. See Teams and permissions and Connectors.

Ask it like this

  • › Which jobs have failed or lost allocations right now?
  • › What is blocked waiting for capacity?
  • › Which deployments have canaries awaiting promotion?
  • › Which client nodes are down or draining?
  • › Scale the web group of the frontend job to 6.

Questions

Is this an official Nomad MCP server?
No. It is Memtro's MCP server with Memtro's Nomad connector behind it: the connector reads Nomad through its API with the credentials you connect on Dashboard → Connections, and Nomad publishes nothing here. The same endpoint carries every other system you connect and Memtro's memory tools.
What does it cost?
Nothing on top of Memtro. One price per organisation by its number of users, from $50 a month for up to 10 users after a 7-day free trial, with every connector, the MCP server, jobs and memory included. You bring your own model keys.
Can it change anything in Nomad?
Only when you ask, and only what it has been granted: dispatch an instance of a parameterized job; force a new run of a periodic job now; scale a job's task group to a new count; revert a job to an earlier version; re-evaluate a job, optionally rescheduling failed allocations now; stop a job, optionally purging it; stop an allocation so it is rescheduled; restart an allocation's tasks in place; send a signal to an allocation's tasks; drain a node, or stop draining it; mark a node eligible or ineligible for new work; promote a deployment's canaries; fail a deployment (rolls back to the last stable version); pause or resume a deployment. Every other tool reads, searches or lists. An administrator grants each acting tool by name per team, and a personal connection acts only after its owner allows it.
Which clients work?
Any MCP client that speaks Streamable HTTP: Claude Code, Cursor, Claude Desktop, OpenCode, Codex, Zed, Windsurf, Cline and the Anthropic and OpenAI SDKs. There is no local process to run; the server is remote and authenticated with your key.

Other MCP servers · Engineering and operations

Where agents remember your company

Sign in, add a provider key, create an API key and point your tools at Memtro. It takes about five minutes.

7-day free trial · card on file, nothing charged until it ends · cancel any time