{"id":45678,"recorded_at":"2026-10-26T14:36:46.862150Z","observed_at":"2026-10-26T14:36:46.862066Z","subject_kind":"source_record","subject":"mcp_registry:io.github.pete-builds/unifi","kind":"listing","method":"baseline/1","body":{"endpoints":[["web","https://pete-builds.github.io/mcp-unifi/"]],"name":"UniFi Gateway","owner_address":null,"raw":{"_meta":{"io.modelcontextprotocol.registry/official":{"isLatest":true,"publishedAt":"2026-10-21T03:25:46.707326Z","status":"active","statusChangedAt":"2026-10-21T03:25:46.707326Z","updatedAt":"2026-10-21T03:25:46.707326Z"}},"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","description":"Safe-by-default UniFi MCP: Network + Protect + Access, multi-site, dry-run, audit log.","name":"io.github.pete-builds/unifi","packages":[{"environmentVariables":[{"choices":["true","false"],"default":"true","description":"When true, the server returns realistic mock data and requires no UniFi hardware. Defaults to true so the image is functional out of the box.","format":"string","name":"STUB_MODE"},{"description":"IP address or hostname of the UniFi OS gateway (UCG-Fiber, UDM Pro, etc). Required when STUB_MODE=false and MCP_UNIFI_CONTROLLERS_FILE is unset.","format":"string","name":"UNIFI_HOST"},{"description":"Local API key generated under Settings -> Control Plane -> Integrations on the gateway. Required when STUB_MODE=false and MCP_UNIFI_CONTROLLERS_FILE is unset.","format":"string","isSecret":true,"name":"UNIFI_API_KEY"},{"default":"default","description":"UniFi controller site name. Defaults to 'default'.","format":"string","name":"UNIFI_SITE"},{"choices":["true","false"],"default":"false","description":"Whether to verify the gateway's TLS certificate. Defaults to false because most home gateways use a self-signed cert.","format":"string","name":"UNIFI_VERIFY_SSL"},{"description":"Path to a YAML file describing multiple named controllers for multi-site management. When set, the legacy UNIFI_HOST / UNIFI_API_KEY env vars are ignored. Each entry needs name, host, api_key, and optionally port, site, verify_ssl.","format":"string","name":"MCP_UNIFI_CONTROLLERS_FILE"},{"default":"network","description":"Comma-separated list of modules to load. Known values: 'network', 'protect', 'access'. Defaults to 'network'. Set to 'network,protect,access' to enable Protect and Access tools alongside Network. Access currently ships read-only; door unlocks and credential issuance require session-token auth and are deferred.","format":"string","name":"MCP_UNIFI_MODULES_ENABLED"},{"description":"UniFi Access hub IP or hostname. Required when the access module is enabled and STUB_MODE=false. Often the same host as UNIFI_HOST.","format":"string","name":"UNIFI_ACCESS_HOST"},{"description":"UniFi Access API key. Separate from the Network API key; generated on the Access controller's developer settings. Required when the access module is enabled and STUB_MODE=false.","format":"string","isSecret":true,"name":"UNIFI_ACCESS_API_KEY"},{"default":"12445","description":"HTTPS port for the Access hub. Defaults to 12445 (the direct Access app port).","format":"string","name":"UNIFI_ACCESS_PORT"},{"choices":["file","stdout","syslog"],"default":"file","description":"Audit log sink. One of 'file' (default), 'stdout', or 'syslog'. Every tool call is recorded to a JSONL stream with secrets scrubbed.","format":"string","name":"MCP_UNIFI_AUDIT_SINK"},{"default":"audit.jsonl","description":"Path for the audit log file when MCP_UNIFI_AUDIT_SINK=file. Defaults to audit.jsonl in the process CWD.","format":"string","name":"MCP_UNIFI_AUDIT_PATH"}],"identifier":"ghcr.io/pete-builds/mcp-unifi:0.27.0","registryType":"oci","runtimeHint":"docker","transport":{"type":"streamable-http","url":"http://localhost:3714/mcp"}}],"repository":{"source":"github","url":"https://github.com/pete-builds/mcp-unifi"},"title":"UniFi Gateway","version":"0.27.0","websiteUrl":"https://pete-builds.github.io/mcp-unifi/"}},"source":"mcp_registry","summary":"Safe-by-default UniFi MCP: Network + Protect + Access, multi-site, dry-run, audit log."},"body_sha256":"01b5f2eab075ac897f5c9b4db3411df2c2049c1cd9ba2113fff3dce27e9c15a8","prev_id":null,"leaf":"0xd3653392b0e29de238d0eaeada7eab890042e4f735f7c4ce3d96b5bed630d260","leaf_text":"{\"body\":\"01b5f2eab075ac897f5c9b4db3411df2c2049c1cd9ba2113fff3dce27e9c15a8\",\"id\":45678,\"kind\":\"listing\",\"method\":\"baseline/1\",\"observed_us\":1793025406862066,\"prev\":null,\"subject\":\"mcp_registry:io.github.pete-builds/unifi\",\"subject_kind\":\"source_record\"}","day":{"day":"2026-10-26","leaves":296695,"root":"0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8","chained":"0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a","anchor_chain":"eip155:5042002","anchor_tx":"0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae","anchor_block":69251483},"proof":["0xd3651bac85e338cd78d6d2421de70a7e555b9a8bd1b245566e4f0a1099702c6e","0x86cffdc37fc9743a0b0645fa4c4841a57d5fe518c470b73bb55dcc95e1499616","0x60eef31093a408c97da69d9936b3d56e849a3326b8d16ff22c99d59eed0ada53","0xd75b9b24834c340a82e94ebeab8b0d6b12ac58280345c38600ab2ca856b6e4eb","0x03ae8f7d48c35b2e6fa223fca34b15cc55a2719e62e23ddb3fb6c30ae0c9374c","0x3aafdd79d00ce7c172a50a7a7b0b0037814ffd8518bf9affeb0f9c49e50bb2f8","0x535421c3fbef3e74e2e56f51e50a538bdfe75bd04f335b37ff6c9e5113440c6d","0x524cbae057f276a559c5440b5fd4f966ed8167d5321a9c6b5ac86d579ef6a8c2","0x42bbccbb422c591c5e9cc66f160ea72e0ff83629e23fd162fa4cb22d31530292","0x0834e939cfa9df57864320cb906e871c291dd8cc7aa8327c208c14867fb03a20","0x14362d8e1df4e5c0cf9c6949986f8f51c6a0b5605b593e145aade16c5f5c871a","0x9f6b360f1992898cb3f17e45d0bf5a96f946d7eaf9705a57af03c151a407d239","0x889eefefef2d4457fe6114f397df813a5cbb85011a6f40309b54ddcd4aba3bd1","0xefabf1105e09cf52c12c58e60cbb5048b9ac3f02631d1816a926e14bdd86fbdf","0xe94ca5b798e9899ad611e57835af42266e20f53f44977e487d81365e30972beb","0x703f95866af09c5e5d6ead7411e9a10f964a41a2aff64d4a55ff0053c023a023","0xd0651cb9bc8155eb52b5247d506e74b8a935057dc190ba52091702ac25ed3a40","0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f","0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a"]}