{"servers":[{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Servosity/liongard-mcp","description":"Liongard config visibility: sync your estate offline, then drift-check and search it from one CLI.","title":"Liongard MCP","repository":{"url":"https://github.com/servosity/msp-skills","source":"github","subfolder":"skills/liongard"},"version":"0.1.8","icons":[{"src":"https://raw.githubusercontent.com/servosity/msp-skills/main/docs/assets/social/liongard/liongard-512x512.png","mimeType":"image/png","sizes":["512x512"]}],"packages":[{"registryType":"mcpb","identifier":"https://github.com/Servosity/msp-skills/releases/download/liongard-v0.1.8/liongard-mcp.mcpb","version":"0.1.8","fileSha256":"8acaa749b377ff042de4d18fd0cb7aa5fd27fa3ad51da55bb067b845d0123493","transport":{"type":"stdio"},"environmentVariables":[{"description":"Liongard Access Key ID, the half that pairs with LIONGARD_ACCESS_KEY_SECRET; the server composes the two into the base64 X-ROAR-API-KEY. One of two ways to authenticate - set EITHER this pair OR the pre-encoded LIONGARD_API_KEY, never both. LIONGARD_API_KEY wins when it is set, so leave it blank to use this pair.","isSecret":true,"name":"LIONGARD_ACCESS_KEY_ID"},{"description":"Liongard Access Key Secret, the other half of LIONGARD_ACCESS_KEY_ID. One of two ways to authenticate - set EITHER this pair OR the pre-encoded LIONGARD_API_KEY, never both. LIONGARD_API_KEY wins when it is set, so leave it blank to use this pair.","isSecret":true,"name":"LIONGARD_ACCESS_KEY_SECRET"},{"description":"Pre-encoded X-ROAR-API-KEY: base64 of 'accessKeyId:accessKeySecret'. One of two ways to authenticate - set EITHER this key OR the LIONGARD_ACCESS_KEY_ID + LIONGARD_ACCESS_KEY_SECRET pair, never both. This key wins when it is set, and the pair is ignored.","isSecret":true,"name":"LIONGARD_API_KEY"},{"description":"Full API base URL. Leave blank: the CLI builds it from LIONGARD_INSTANCE. Set it only to point at a different host.","name":"LIONGARD_BASE_URL"},{"description":"Optional Liongard session token (from `authentication log-in`), sent as X-Auth-Token only to the endpoints that accept a session token (verify-token, access-key create). Leave blank to use the access key.","isSecret":true,"name":"LIONGARD_ENDPOINTS_SESSION_TOKEN_AUTH"},{"description":"Your Liongard subdomain (the 'acme' in acme.app.liongard.com); builds the API URL.","isRequired":true,"default":"example","name":"LIONGARD_INSTANCE"},{"description":"Required only when running the MCP server with --transport http. Not needed for the default local stdio transport.","isSecret":true,"name":"LIONGARD_MCP_HTTP_TOKEN"},{"description":"Optional. Set to exactly 1 to expose only read-only tools and refuse any state-changing execute call.","name":"LIONGARD_MCP_READ_ONLY"},{"description":"Optional. Set to 1 to keep no local copy of API responses: reads go to the API and the response cache is off.","name":"LIONGARD_NO_LOCAL_DATA"},{"description":"Overrides the User-Agent the CLI sends on Liongard requests. Leave blank to use the CLI's own built-in User-Agent.","name":"LIONGARD_USER_AGENT"},{"description":"Optional: binds the MCP server to an existing tenant-gated Printing Press client profile. Leave unset for a single-tenant install.","isSecret":true,"name":"PRINTING_PRESS_CLIENT_PROFILE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-11-05T21:05:31.761497Z","publishedAt":"2026-11-05T21:05:31.761497Z","updatedAt":"2026-11-05T21:05:31.761497Z","isLatest":true}}}],"metadata":{"count":1}}
