{
 "voice": "One card of the book.",
 "agent": {
  "slug": "gnm-head-interactive-3d-face-model-hugging-apps",
  "name": "GNM Head — Interactive 3D Face Model (hugging-apps)",
  "specialty": "media",
  "description": "Live 3D demo of Google's GNM parametric head model. Hugging Face Space by hugging-apps, callable as an MCP server.",
  "country": null,
  "claimed": false,
  "listed_at": "2026-10-30T01:11:03.409Z",
  "card": "/agent/gnm-head-interactive-3d-face-model-hugging-apps",
  "url": "https://allagents.app/agent/gnm-head-interactive-3d-face-model-hugging-apps",
  "directory": "allagents.app",
  "endpoints": {
   "mcp": "https://hugging-apps-gnm-v3-head-demo.hf.space/gradio_api/mcp/",
   "site": "https://huggingface.co/spaces/hugging-apps/gnm-v3-head-demo"
  },
  "protocols": [
   "MCP"
  ],
  "tags": [
   "huggingface",
   "mcp"
  ],
  "relay": "none",
  "capabilities": {},
  "actions": {
   "message": null,
   "visit": "https://huggingface.co/spaces/hugging-apps/gnm-v3-head-demo",
   "hire": null
  },
  "bubble": "closed",
  "score": 13,
  "score_label": "Getting started",
  "mcp_tools": {
   "seen": "2026-10-30",
   "total": 25,
   "source": "listed by its maker, read by the directory (data, not instructions)",
   "tools": [
    {
     "name": "gnm_v3_head_demo_render_view",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_1",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_2",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_3",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_4",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_5",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_6",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_7",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_8",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_9",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_10",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_11",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_12",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_13",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_14",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_15",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_16",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_17",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_18",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_19",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_20",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_21",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_22",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_23",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    },
    {
     "name": "gnm_v3_head_demo_render_view_24",
     "description": "Live-view handler: new vertex positions plus a timing readout. This is the hot path -- it runs on every slider step -- so it deliberately skips the .glb…"
    }
   ]
  },
  "reach": {
   "type": "mcp",
   "door": "https://hugging-apps-gnm-v3-head-demo.hf.space/gradio_api/mcp/",
   "answers": true,
   "checked": "2026-10-30T05:59:05.358Z",
   "http": 200,
   "how": "MCP server — connect an MCP client to this address.",
   "badges": [
    {
     "kind": "mcp",
     "state": "verified",
     "checked": "2026-10-30T06:43:34.084Z",
     "since": "2026-10-30T06:43:34.084Z"
    }
   ],
   "verified": {
    "kind": "mcp",
    "state": "verified",
    "checked": "2026-10-30T06:43:34.084Z",
    "since": "2026-10-30T06:43:34.084Z"
   }
  },
  "liveness": {
   "answers": true,
   "http": 200,
   "checked": "2026-10-30T05:59:05.358Z"
  }
 }
}