Skip to main content
Glama
MatsWeckhorst

hermes-fleet-mcp

hermes-fleet-mcp

MCP (Model Context Protocol) server that routes Docker operations across a fleet of Docker hosts via the Scotty API.

Overview

Provides two MCP tools:

  • fleet_route — Route a Docker operation through Scotty (Arcane MCP → target Docker host).

  • fleet_hosts — List all known Docker hosts in the fleet.

Related MCP server: amp-mcp-server

Quick Start

Install

pip install hermes-fleet-mcp

Or run from source:

pip install -e .

Configure

Set environment variables (all optional):

Variable

Default

Description

SCOTTY_BASE_URL

http://127.0.0.1:8644/v1

Scotty API endpoint

DOCKER_HOSTS

["hostinger-01", "oci-01"]

JSON array of host identifiers

Run

python -m hermes_fleet_mcp

The server communicates via stdio JSON-RPC.

Tool: fleet_route

Route a Docker operation through Scotty.

Parameters

Parameter

Required

Default

Description

action

Yes

The Docker operation to perform (e.g. "List all running containers", "Show container logs for nginx")

host

No

null

Target host identifier. Use "all" to fan out to all hosts.

params

No

{}

Optional context parameters (passed as additional context to Scotty)

Examples

{
  "tool": "fleet_route",
  "arguments": {
    "action": "List all running containers",
    "host": "hostinger-01"
  }
}
{
  "tool": "fleet_route",
  "arguments": {
    "action": "Show container logs for plex",
    "host": "all"
  }
}

Tool: fleet_hosts

List all known hosts.

{
  "tool": "fleet_hosts",
  "arguments": {}
}

Docker Deployment

docker build -t hermes-fleet-mcp .
docker run --rm -e SCOTTY_BASE_URL=http://scotty:8644/v1 hermes-fleet-mcp

Hermes Agent Registration

Add to ~/.hermes/profiles/<profile>/config.yaml:

mcp_servers:
  fleet-mcp:
    command: "python"
    args: ["-m", "hermes_fleet_mcp"]
    timeout: 120
    connect_timeout: 15

Architecture

MCP Client → hermes-fleet-mcp (stdio)
                ↓ POST /v1/chat/completions
            Scotty (Hermes profile)
                ↓ Arcane MCP
            Target Docker host(s)

The server proxies Docker operation requests to Scotty's chat API. Scotty then routes through Arcane MCP to the appropriate Docker host(s). This means the server doesn't need direct Docker access — it delegates to the existing fleet management infrastructure.

Development

python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"

Run tests:

python3 tests/test_fleet_mcp.py

License

MIT

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/MatsWeckhorst/hermes-fleet-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server