Remote MCP server for your Gaggiuino espresso machine's shots and profiles
What it says
The record the registry holds
How you get it
There is no address to call. This one is a package you install and run yourself, wherever your assistant runs.
ghcr.io/ljcl/gaggiuino-mcp:4.0.0 · oci
the recordCopied from the official MCP registry, exactly as it holds it.
{
"server": {
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"name": "io.github.ljcl/gaggiuino-mcp",
"description": "Remote MCP server for your Gaggiuino espresso machine's shots and profiles",
"repository": {
"url": "https://github.com/ljcl/gaggiuino-mcp",
"source": "github"
},
"version": "4.0.0",
"websiteUrl": "https://github.com/ljcl/gaggiuino-mcp#readme",
"packages": [
{
"registryType": "oci",
"identifier": "ghcr.io/ljcl/gaggiuino-mcp:4.0.0",
"runtimeHint": "docker",
"transport": {
"type": "streamable-http",
"url": "http://localhost:8000/mcp"
},
"environmentVariables": [
{
"description": "Gaggiuino machine URL (default http://gaggiuino.local)",
"format": "string",
"name": "GAGGIUINO_URL"
},
{
"description": "Server port (default 8000)",
"format": "number",
"name": "PORT"
},
{
"description": "Bind address (default 0.0.0.0)",
"format": "string",
"name": "HOST"
},
{
"description": "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",
"format": "string",
"name": "MCP_PUBLIC_URL"
},
{
"description": "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",
"format": "string",
"isSecret": true,
"name": "MCP_OAUTH_SECRET"
},
{
"description": "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",
"format": "string",
"isSecret": true,
"name": "MCP_OAUTH_PASSPHRASE_HASH"
},
{
"description": "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",
"format": "string",
"name": "MCP_OAUTH_ISSUER"
},
{
"description": "Comma-separated browser origins allowed to call /mcp, or * to allow any (unsafe). Requests with no Origin header are unaffected",
"format": "string",
"name": "MCP_ALLOWED_ORIGINS"
},
{
"description": "Comma-separated Host header values to accept on /mcp. Empty disables host validation",
"format": "string",
"name": "MCP_ALLOWED_HOSTS"
},
{
"description": "Log verbosity: debug, info, warn, error, or silent (default info). Logs are one JSON object per line on stderr",
"format": "string",
"name": "LOG_LEVEL"
}
]
}
]
},
"_meta": {
"io.modelcontextprotocol.registry/official": {
"status": "active",
"statusChangedAt": "2026-08-23T05:29:26.495761Z",
"publishedAt": "2026-08-23T05:29:26.495761Z",
"updatedAt": "2026-08-23T05:29:26.495761Z",
"isLatest": true
}
}
}
Make it installable
Draft an Agent Plugin from this
An MCP server is raw capability: some tools, wired to something. An Agent Plugin is the packaging that says what job it does, what it leaves behind and where it stops. The prompt below carries this record and asks for the packaging; your own assistant writes it, and nothing here is sent anywhere.
What this is
MCP server
application/mcp-server-record+jsonlocal · you run it yourselfversion 4.0.0last seen 2026-08-23
These are the publisher's own words, filed by them with the official MCP registry and mirrored here. This catalog did not read them from the publisher and has not run, called or installed anything.