NestDaddy

Gaggiuino Mcp

io.github.ljcl/gaggiuino-mcp · v6.0.0

Remote MCP server for your Gaggiuino espresso machine's shots and profiles

Connect Runs on your machine

Terminal
claude mcp add gaggiuino-mcp -e GAGGIUINO_URL=<GAGGIUINO_URL> -e PORT=<PORT> -e HOST=<HOST> -e MCP_PUBLIC_URL=<MCP_PUBLIC_URL> -e MCP_OAUTH_SECRET=<MCP_OAUTH_SECRET> -e MCP_OAUTH_PASSPHRASE_HASH=<MCP_OAUTH_PASSPHRASE_HASH> -e MCP_OAUTH_ISSUER=<MCP_OAUTH_ISSUER> -e MCP_ALLOWED_ORIGINS=<MCP_ALLOWED_ORIGINS> -e MCP_ALLOWED_HOSTS=<MCP_ALLOWED_HOSTS> -e LOG_LEVEL=<LOG_LEVEL> -- docker run -i --rm ghcr.io/ljcl/gaggiuino-mcp:6.0.0
claude_desktop_config.json
{
  "mcpServers": {
    "gaggiuino-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/ljcl/gaggiuino-mcp:6.0.0"
      ],
      "env": {
        "GAGGIUINO_URL": "<GAGGIUINO_URL>",
        "PORT": "<PORT>",
        "HOST": "<HOST>",
        "MCP_PUBLIC_URL": "<MCP_PUBLIC_URL>",
        "MCP_OAUTH_SECRET": "<MCP_OAUTH_SECRET>",
        "MCP_OAUTH_PASSPHRASE_HASH": "<MCP_OAUTH_PASSPHRASE_HASH>",
        "MCP_OAUTH_ISSUER": "<MCP_OAUTH_ISSUER>",
        "MCP_ALLOWED_ORIGINS": "<MCP_ALLOWED_ORIGINS>",
        "MCP_ALLOWED_HOSTS": "<MCP_ALLOWED_HOSTS>",
        "LOG_LEVEL": "<LOG_LEVEL>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "gaggiuino-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/ljcl/gaggiuino-mcp:6.0.0"
      ],
      "env": {
        "GAGGIUINO_URL": "<GAGGIUINO_URL>",
        "PORT": "<PORT>",
        "HOST": "<HOST>",
        "MCP_PUBLIC_URL": "<MCP_PUBLIC_URL>",
        "MCP_OAUTH_SECRET": "<MCP_OAUTH_SECRET>",
        "MCP_OAUTH_PASSPHRASE_HASH": "<MCP_OAUTH_PASSPHRASE_HASH>",
        "MCP_OAUTH_ISSUER": "<MCP_OAUTH_ISSUER>",
        "MCP_ALLOWED_ORIGINS": "<MCP_ALLOWED_ORIGINS>",
        "MCP_ALLOWED_HOSTS": "<MCP_ALLOWED_HOSTS>",
        "LOG_LEVEL": "<LOG_LEVEL>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "gaggiuino-mcp": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/ljcl/gaggiuino-mcp:6.0.0"
      ],
      "env": {
        "GAGGIUINO_URL": "<GAGGIUINO_URL>",
        "PORT": "<PORT>",
        "HOST": "<HOST>",
        "MCP_PUBLIC_URL": "<MCP_PUBLIC_URL>",
        "MCP_OAUTH_SECRET": "<MCP_OAUTH_SECRET>",
        "MCP_OAUTH_PASSPHRASE_HASH": "<MCP_OAUTH_PASSPHRASE_HASH>",
        "MCP_OAUTH_ISSUER": "<MCP_OAUTH_ISSUER>",
        "MCP_ALLOWED_ORIGINS": "<MCP_ALLOWED_ORIGINS>",
        "MCP_ALLOWED_HOSTS": "<MCP_ALLOWED_HOSTS>",
        "LOG_LEVEL": "<LOG_LEVEL>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
GAGGIUINO_URL
Optional
Gaggiuino machine URL (default http://gaggiuino.local)
PORT
Optional
Server port (default 8000)
HOST
Optional
Bind address (default 0.0.0.0)
MCP_PUBLIC_URL
Optional
Public https origin clients reach this server on, with no path (e.g. https://box.tailnet.ts.net). Set with MCP_OAUTH_SECRET to enable OAuth; it is advertised as the OAuth resource and must match the URL entered in the client exactly
MCP_OAUTH_SECRET
Optional, secret
Signing key for self-issued OAuth access and refresh tokens, at least 32 characters (openssl rand -hex 32). Keep it stable across restarts so clients stay signed in
MCP_OAUTH_PASSPHRASE_HASH
Optional, secret
scrypt hash of the passphrase you type on the OAuth consent page, in the form scrypt$N$r$p$salt$hash. Required whenever OAuth is enabled. Generate with `bun run hash-passphrase` — never store the passphrase itself
MCP_OAUTH_ISSUER
Optional
External OAuth issuer URL to delegate token issuing to (e.g. a Keycloak or Authentik realm). Puts the server in resource-server-only mode; requires MCP_PUBLIC_URL and refuses to start alongside MCP_OAUTH_SECRET or MCP_OAUTH_PASSPHRASE_HASH
MCP_ALLOWED_ORIGINS
Optional
Comma-separated browser origins allowed to call /mcp, or * to allow any (unsafe). Requests with no Origin header are unaffected
MCP_ALLOWED_HOSTS
Optional
Comma-separated Host header values to accept on /mcp. Empty disables host validation
LOG_LEVEL
Optional
Log verbosity: debug, info, warn, error, or silent (default info). Logs are one JSON object per line on stderr

Details

Packageghcr.io/ljcl/gaggiuino-mcp:6.0.0 (OCI, streamable-http)
First published5 Oct 2026
Last updated5 Oct 2026
Registry nameio.github.ljcl/gaggiuino-mcp

More other servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.