{
 "$schema": "https://agentdrives.com/schemas/tool.schema.json",
 "id": "prd_01m57vgtnd1aaqhc0zztde49n2",
 "ids": {
  "org": "org_01m57vgtgvezvv25xj7fsh5975",
  "surfaces": {
   "web": "srf_01m6bhg6wadm19mtnzvg3rhrxs",
   "api": "srf_01m6bhg6wa90nwybe1j2v5s2vx",
   "mcp": "srf_01m6bhg6war5505bgdk6qqn004"
  },
  "slugs": [
   "chat-google"
  ],
  "domain": "chat.google.com"
 },
 "slug": "chat-google",
 "name": "Google Chat",
 "url": "https://chat.google.com",
 "domain": "chat.google.com",
 "category": "team-chat",
 "category_name": "Team chat",
 "tested_at": "2026-10-27",
 "run": "20261027T231840Z",
 "draft": false,
 "reviewed": true,
 "owner_verified": null,
 "origin": "editorial",
 "history": [
  {
   "run": "20261027T231840Z",
   "date": "2026-10-27",
   "level": 1,
   "engine": {
    "model": "claude-opus-5-5",
    "driver": 5,
    "signed": true,
    "inbox": [
     "agentdrives.com"
    ],
    "robots": "skip",
    "version": "2026.10.27",
    "commit": "132c4d41a411d7acee60092fedfe2af74cee1ec3",
    "prompts": {
     "version": "2026.10.27",
     "commit": "845036a5a40ff8a1d6d9ed752a31210bed0cbc93"
    },
    "rules": {
     "version": "2026.10.27",
     "commit": "fe3b689b94a4f5fc8abd3c7adc454960326b9514"
    }
   },
   "stop": "signup",
   "drives": 2,
   "paid": false,
   "agent_paid": null
  }
 ],
 "level": 1,
 "level_name": "Needs a person",
 "level_selfhost": null,
 "entry": "closed",
 "door": {
  "passed": 0,
  "tries": 2,
  "self_start": false
 },
 "badges": [],
 "not_counted": null,
 "stages": [
  {
   "key": "in",
   "label": "Access",
   "state": "no",
   "text": "Can't get in on its own",
   "at": "signup"
  },
  {
   "key": "work",
   "label": "Use",
   "state": "unreached",
   "text": "Work not measured"
  },
  {
   "key": "pay",
   "label": "Pay",
   "state": "unreached",
   "text": "Payment not reached",
   "value": "unreached",
   "route": "card_checkout"
  },
  {
   "key": "leave",
   "label": "Leave",
   "state": "unreached",
   "text": "Leaving not reached",
   "how": "no-account"
  }
 ],
 "outcomes": [
  {
   "key": "find",
   "label": "Learn",
   "state": "no",
   "text": "No docs it can act on",
   "have": [
    "mcp"
   ],
   "docs": "unreachable"
  },
  {
   "key": "access",
   "label": "Access",
   "state": "no",
   "text": "Can't get in on its own",
   "at": "signup",
   "stage": "in"
  },
  {
   "key": "use",
   "label": "Use",
   "state": "unreached",
   "text": "Work not measured",
   "stage": "work"
  },
  {
   "key": "pay",
   "label": "Pay",
   "state": "unreached",
   "text": "Payment not reached",
   "value": "unreached",
   "route": "card_checkout",
   "stage": "pay"
  },
  {
   "key": "leave",
   "label": "Leave",
   "state": "unreached",
   "text": "Leaving not reached",
   "how": "no-account",
   "stage": "leave"
  }
 ],
 "access": [
  {
   "key": "person",
   "label": "A person sets it up",
   "routes": [],
   "minutes": null,
   "core": null
  }
 ],
 "minutes": null,
 "next": {
  "to": 2,
  "text": "Next: let an agent sign up on its own"
 },
 "stop": "signup",
 "core": null,
 "scores": {
  "coverage": null,
  "reliability": null,
  "resilience": null,
  "setup": 55,
  "surface_coverage": null,
  "docs_accuracy": null,
  "docs_completeness": null
 },
 "parts": {
  "holds_up": null,
  "docs_match": null,
  "setup": 55,
  "security": "private",
  "standards": [
   {
    "standard": "MCP discovery",
    "state": "current",
    "behind": null,
    "value": "ok"
   }
  ]
 },
 "reliability_method": null,
 "resilience": null,
 "stress": [
  {
   "capability": "The first call",
   "probe": "bad credential",
   "outcome": "401, WWW-Authenticate: Bearer realm=\"https://accounts.google.com/\", error=\"invalid_token\"; {\"error\":{\"code\":401,\"message\":\"Request had invalid authentication credentials. Expected OAuth 2 access token",
   "grade": "clear",
   "idempotent": null,
   "rate_limit": null
  }
 ],
 "surface_audit": {
  "totals": {
   "items": 67,
   "documented": 67,
   "safe": 67,
   "exercised": 0,
   "passed": 0,
   "skipped": 0,
   "blocked": 67,
   "not_run": 0,
   "match": 0,
   "drift": 0,
   "broken_doc": 0,
   "docs_complete": 5,
   "docs_partial": 62,
   "docs_missing": 0,
   "errors_clear": 0,
   "errors_vague": 0,
   "errors_silent": 0
  }
 },
 "coverage_core": null,
 "coverage_own": null,
 "after_wall": null,
 "coverage_source": "computed",
 "driver": {
  "version": 5,
  "model": "claude-opus-5-5",
  "profile": "full",
  "assisted": false,
  "handoff": false
 },
 "methodology": 42,
 "rules_date": "2026-10-30",
 "engine": {
  "model": "claude-opus-5-5",
  "driver": 5,
  "signed": true,
  "inbox": [
   "agentdrives.com"
  ],
  "robots": "skip",
  "version": "2026.10.27",
  "commit": "132c4d41a411d7acee60092fedfe2af74cee1ec3",
  "prompts": {
   "version": "2026.10.27",
   "commit": "845036a5a40ff8a1d6d9ed752a31210bed0cbc93"
  },
  "rules": {
   "version": "2026.10.27",
   "commit": "fe3b689b94a4f5fc8abd3c7adc454960326b9514"
  }
 },
 "same_level_drives": 1,
 "drives": 2,
 "same_stop_drives": 2,
 "works_assisted": null,
 "freshness": "fresh",
 "newer_drives": null,
 "nothing_to_pay": false,
 "core_gated": false,
 "profiles": {},
 "agent_check": null,
 "agent_pass": {
  "rung": "signup",
  "vendor": "reCAPTCHA (script on the Google Account sign-up page)",
  "signed": true
 },
 "who_gets_in": {
  "server": {
   "state": "closed"
  },
  "signed": {
   "state": "page",
   "kind": "signup",
   "at": "2026-10-27"
  },
  "browser": {
   "state": "unknown",
   "measured": false
  },
  "our_key": "verified",
  "robots": null,
  "tip": false
 },
 "ladder": {
  "docs": {
   "status": "headless",
   "note": "developers.google.com/workspace/chat: REST reference, discovery document (55 methods), guides, MCP guide, release notes; no llms.txt."
  },
  "signup": {
   "status": "human",
   "cause": "other",
   "note": "Google Account sign-up requires a birthday and gender after the name ('Please fill in a complete birthday'); our agent gives no date of birth. The Workspace trial asked for a team name, company size and contact (our agent answered), then requires a domain to buy or verify, which our agent does not have."
  },
  "verify": {
   "status": "",
   "note": "Not reached: no account.",
   "reached": false
  },
  "credentials": {
   "status": "",
   "note": "OAuth client or service account in a Google Cloud project; needs a Google account (and a Business or Enterprise Workspace account for the Chat API). Not reached.",
   "reached": false
  },
  "first_call": {
   "status": "",
   "note": "GET https://chat.googleapis.com/v1/spaces without a token: 401 UNAUTHENTICATED, CREDENTIALS_MISSING.",
   "route": "account",
   "reached": false
  },
  "first_action": {
   "status": "",
   "note": "Not reached: no account.",
   "reached": false
  },
  "pay": {
   "status": "",
   "grade": "P1",
   "rails": [],
   "rail_ids": [],
   "first_party": false,
   "rail_scope": "none",
   "trial_path": "none",
   "route": "card_checkout",
   "checkout": {
    "reached": "no",
    "processor": "none",
    "captcha": "none",
    "three_ds": "not_seen",
    "card_form": false,
    "phone_field": "none",
    "wallets": [],
    "rail_offer": "none",
    "price": "6.80",
    "currency": "EUR",
    "period": "month",
    "plan": "Business Starter",
    "last_button": ""
   },
   "person": null,
   "ours": "account",
   "note": "No 402, x402/MPP host, registry listing or UCP; nothing paid. Pricing page: 14-day trial, Starter €6.80 per user per month. The trial sign-up stopped at the domain step before any plan or payment page, so the checkout and whether the trial needs a card are unknown.",
   "reached": false
  },
  "cancel": {
   "status": "",
   "grade": "n/a",
   "note": "Nothing started, nothing to cancel.",
   "reached": false
  },
  "delete": {
   "status": "",
   "note": "No account was created; nothing to delete.",
   "account": false,
   "reached": false
  }
 },
 "routes": [
  {
   "route": "email_password",
   "offered": "seen",
   "tried": true,
   "not_tried": null,
   "result": "walled",
   "wall": {
    "type": null,
    "owner": "product"
   },
   "person": "none",
   "brings": "inbox",
   "fresh": true,
   "minutes": 2,
   "browser": null
  },
  {
   "route": "email_password",
   "offered": "seen",
   "tried": true,
   "not_tried": null,
   "result": "walled",
   "wall": {
    "type": null,
    "owner": "product"
   },
   "person": "none",
   "brings": "inbox",
   "fresh": true,
   "minutes": 4,
   "browser": null
  },
  {
   "route": "device_login",
   "offered": "documented",
   "tried": false,
   "not_tried": "no_kit",
   "result": null,
   "wall": null,
   "person": "none",
   "brings": "nothing",
   "fresh": true,
   "minutes": 0,
   "browser": null
  },
  {
   "route": "oauth_consent",
   "offered": "documented",
   "tried": false,
   "not_tried": "no_kit",
   "result": null,
   "wall": null,
   "person": "none",
   "brings": "nothing",
   "fresh": true,
   "minutes": 0,
   "browser": null
  }
 ],
 "checkout": {
  "reached": "no",
  "rail_offer": "none",
  "period": "month",
  "price": "6.80",
  "currency": "EUR",
  "plan": "Business Starter"
 },
 "docs": {
  "at": "2026-10-27",
  "read": 0,
  "listed": 11,
  "sampled": false,
  "overall": "unreachable",
  "getting_started": "missing",
  "auth": "missing",
  "errors": "missing",
  "examples": "none",
  "freshness": "unknown",
  "newest": null,
  "core_pages": "0 of 7",
  "capabilities": "none",
  "label": "Couldn't be read"
 },
 "claims": null,
 "pay_options": {
  "checked": "2026-10-27",
  "source": "probe",
  "options": [],
  "agentic": [],
  "paid": null,
  "exercised": null,
  "detected_grade": null,
  "trial": {
   "no_card": null,
   "card_required": null,
   "free_plan": null
  },
  "owner_fixes": [
   {
    "title": "Accept x402 or MPP on your API",
    "how": "Answer an unpaid call with 402 and a payment challenge, so an agent pays per call or buys credits without an account or a card."
   },
   {
    "title": "List your plans on Stripe Projects",
    "how": "Agents buy a plan with `stripe projects add`, paid with a token under a spend cap the owner sets (projects.dev)."
   }
  ]
 },
 "surfaces": {
  "api": true,
  "openapi": false,
  "cli": false,
  "mcp": "official",
  "llms_txt": false,
  "sandbox": false
 },
 "urls": {
  "docs": null,
  "llms_txt": null,
  "mcp": "https://chatmcp.googleapis.com/mcp/v1"
 },
 "surface_notes": {
  "api": "REST, 55 methods in the discovery document (revision 20261025)",
  "mcp": "official, Developer Preview, 4 tools live"
 },
 "surface_sizes": [
  {
   "kind": "api",
   "listed": 55,
   "tested": 0
  },
  {
   "kind": "mcp",
   "listed": 9,
   "tested": 0
  }
 ],
 "can_do": [
  "Discover the official Chat MCP server and its tools without an account"
 ],
 "cannot_do": [
  {
   "what": "Create a Google account",
   "why": "The sign-up form requires a birthday; the Workspace trial requires a domain"
  },
  {
   "what": "Send, edit or delete messages, create spaces, manage members, share files",
   "why": "Every API and MCP call needs a Google OAuth token from a Business or Enterprise Workspace account"
  }
 ],
 "blockers": [
  "Google Account sign-up requires a date of birth",
  "Workspace trial requires a domain the agent owns",
  "Chat API requires a Business or Enterprise Workspace account"
 ],
 "tips_for_agents": [
  "Use the Chat MCP server at https://chatmcp.googleapis.com/mcp/v1 with MCP 2026-07-28; send server/discover first, no initialize needed",
  "Mark your OAuth client 'Use this client for an AI-powered agent' in Google Auth Platform > Clients: Workspace MCP servers reject other clients from 11 Nov 2026",
  "Read https://chat.googleapis.com/$discovery/rest?version=v1 for the full method list; there is no OpenAPI",
  "Plan on a Business or Enterprise Workspace account: the Chat API prerequisites rule out a personal Google account"
 ],
 "selfhost": null,
 "edge_case": "unknown",
 "summary": "Every way into Google Chat needs a Google account. The sign-up requires a date of birth and the Workspace trial (needed for the Chat API) a domain, so our agent could not get in. Without an account it could only discover the official Chat MCP server, which speaks MCP (the 28 Jul 2026 spec) and lists its tools but needs a Google OAuth token for every call.",
 "wall": "Sign-up requires a birthday; Workspace a domain",
 "plan_scope": "",
 "robots_stop": null,
 "robots": null,
 "terms": null,
 "terms_read": "2026-10-27",
 "email_gate": null,
 "plain": {
  "summary": "Google Chat is a team chat tool that is part of Google Workspace. Our agent could not get an account: the Google sign-up asks for a date of birth, and the Workspace trial asks for a domain the agent does not own. Without an account it could only read the docs and see the official Chat MCP server's tool list.",
  "can_do": [
   "Read the Chat API docs and the machine-readable method list",
   "Find the official Chat MCP server and list its tools without an account"
  ],
  "cannot_do": [
   {
    "what": "Create a Google account",
    "why": "The sign-up form needs a date of birth from a person"
   },
   {
    "what": "Start a Workspace trial",
    "why": "The trial needs a domain the agent does not own"
   },
   {
    "what": "Send messages, create spaces or use any Chat feature",
    "why": "Every call needs a sign-in from a Workspace account"
   }
  ]
 },
 "plan_gated": [],
 "reply": null,
 "capabilities": [
  {
   "id": "cap-01",
   "capability": "Send a chat message",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "POST /v1/{parent=spaces/*}/messages",
    "mcp": null,
    "cli": null,
    "ui": "space or DM conversation window"
   },
   "check": "GET /v1/{name=spaces/*/messages/*} returns the created message",
   "capability_id": "cap_y0kyhz5h",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.messages/create",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-02",
   "capability": "Reply in a thread",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "POST /v1/{parent=spaces/*}/messages (with thread key)",
    "mcp": null,
    "cli": null,
    "ui": "thread reply in a space"
   },
   "check": "GET on the message shows the same thread name as the parent",
   "capability_id": "cap_w838h61s",
   "unmapped": null,
   "source": "https://support.google.com/chat/answer/7659784; https://support.google.com/chat/answer/12176589",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-03",
   "capability": "Edit or delete a message",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "PATCH or PUT /v1/{message.name=spaces/*/messages/*}; DELETE /v1/{name=spaces/*/messages/*}",
    "mcp": null,
    "cli": null,
    "ui": "message overflow menu"
   },
   "check": "GET the message shows updated text, or returns NOT_FOUND after delete",
   "capability_id": "cap_khr1h48m",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.messages",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-04",
   "capability": "Create a channel",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "POST /v1/spaces or POST /v1/spaces:setup",
    "mcp": null,
    "cli": null,
    "ui": "Chat home → Create a space"
   },
   "check": "GET /v1/{name=spaces/*} returns the new space with the given displayName",
   "capability_id": "cap_f6ccszjb",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces/create; https://support.google.com/chat/answer/7659784",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-05",
   "capability": "Join or leave a channel",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "POST /v1/{parent=spaces/*}/members; DELETE /v1/{name=spaces/*/members/*}",
    "mcp": null,
    "cli": null,
    "ui": "space browser / member menu"
   },
   "check": "GET /v1/{name=spaces/*/members/*} returns the membership, or NOT_FOUND after leaving",
   "capability_id": "cap_ks2tfdzg",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.members; https://support.google.com/chat/answer/7659784",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-06",
   "capability": "Share a file in chat",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "POST /upload/v1/{parent=spaces/*}/attachments:upload",
    "mcp": null,
    "cli": null,
    "ui": "attachment/paperclip icon in message box"
   },
   "check": "GET /v1/{name=spaces/*/messages/*/attachments/*} returns the attachment metadata",
   "capability_id": "cap_najpx1cb",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/media/upload",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-07",
   "capability": "Start a call",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "space header → video call icon (Meet)"
   },
   "check": "visually confirm a Meet call link/card posted in the space conversation",
   "capability_id": "cap_mwwffv1h",
   "unmapped": null,
   "source": "https://workspace.google.com/products/chat/",
   "result": "blocked",
   "via": "browser"
  },
  {
   "id": "cap-08",
   "capability": "React to a message",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "POST /v1/{parent=spaces/*/messages/*}/reactions",
    "mcp": null,
    "cli": null,
    "ui": "hover message → emoji react"
   },
   "check": "GET /v1/{parent=spaces/*/messages/*}/reactions lists the new reaction",
   "capability_id": "cap_e82b8y63",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.messages.reactions",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-09",
   "capability": "Pin or save a message",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "POST /v1/{parent=spaces/*}/messagePins",
    "mcp": null,
    "cli": null,
    "ui": "message overflow menu → Pin"
   },
   "check": "GET /v1/{parent=spaces/*}/messagePins lists the pinned message",
   "capability_id": "cap_pcpacc2v",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.messagePins",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-10",
   "capability": "Mark messages as read",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "PATCH /v1/{spaceReadState.name=users/*/spaces/*/spaceReadState}",
    "mcp": null,
    "cli": null,
    "ui": "space overflow menu → Mark as read"
   },
   "check": "GET /v1/{name=users/*/spaces/*/spaceReadState} shows an updated lastReadTime",
   "capability_id": "cap_yr0cw7nt",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/users.spaces/updateSpaceReadState",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-11",
   "capability": "Search chat messages",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "POST /v1/{parent=spaces/*}/messages:search",
    "mcp": null,
    "cli": null,
    "ui": "search bar in Chat"
   },
   "check": "search response lists messages matching the query text",
   "capability_id": "cap_39x0fa15",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.messages/search",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-12",
   "capability": "Set a status",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "POST /v1/{name=users/*/availability}:markAsActive (and markAsAway, markAsDoNotDisturb)",
    "mcp": null,
    "cli": null,
    "ui": "avatar menu → set status"
   },
   "check": "GET /v1/{name=users/*/availability} shows the new availability state",
   "capability_id": "cap_jzjxzk1k",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/users.availability",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-13",
   "capability": "Post through an incoming webhook",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "POST https://chat.googleapis.com/v1/spaces/SPACE_ID/messages?key=KEY&token=TOKEN",
    "mcp": null,
    "cli": null,
    "ui": "space → Apps & integrations → Add webhooks"
   },
   "check": "GET /v1/{parent=spaces/*}/messages lists the webhook-posted message",
   "capability_id": "cap_2y5a93gq",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/quickstart/webhooks",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-14",
   "capability": "Change a channel's settings",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "PATCH /v1/{space.name=spaces/*}",
    "mcp": null,
    "cli": null,
    "ui": "space title → Space settings"
   },
   "check": "GET /v1/{name=spaces/*} reflects the updated displayName/description/access setting",
   "capability_id": "cap_86edyh37",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces/patch; https://support.google.com/chat/answer/7659784",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-15",
   "capability": "Configure notifications",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "PATCH /v1/{spaceNotificationSetting.name=users/*/spaces/*/spaceNotificationSetting}",
    "mcp": null,
    "cli": null,
    "ui": "space overflow menu → Notifications"
   },
   "check": "GET /v1/{name=users/*/spaces/*/spaceNotificationSetting} reflects the new setting",
   "capability_id": "cap_jmy53453",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/users.spaces.spaceNotificationSetting",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-16",
   "capability": "Kick, ban or time out a member",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "DELETE /v1/{name=spaces/*/members/*}",
    "mcp": null,
    "cli": null,
    "ui": "space → members list → remove member"
   },
   "check": "GET /v1/{name=spaces/*/members/*} returns NOT_FOUND after removal",
   "capability_id": "cap_drpwkfkg",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.members/delete; https://support.google.com/chat/answer/7659784",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-17",
   "capability": "Share a channel with another organisation",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "space settings → access → external users"
   },
   "check": "space membership includes a member from an outside domain, visible in space details",
   "capability_id": "cap_qc6ykche",
   "unmapped": null,
   "source": "https://support.google.com/chat/answer/7659784",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-18",
   "capability": "Build a Chat app or bot",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "Chat API (interaction events, cards, commands)",
    "mcp": null,
    "cli": null,
    "ui": "Google Cloud console → configure Chat app"
   },
   "check": "the configured app receives and responds to an @mention event in a space",
   "capability_id": "cap_4qp39fpq",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-19",
   "capability": "Respond to slash commands",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "type / in a Chat app conversation"
   },
   "check": "invoking a configured slash command in Chat returns the app's response",
   "capability_id": null,
   "unmapped": "own_feature",
   "source": "https://developers.google.com/workspace/chat/commands",
   "result": "blocked",
   "via": "browser"
  },
  {
   "id": "cap-20",
   "capability": "Preview a shared link with a rich card",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "paste a configured link in a message"
   },
   "check": "pasting the link renders the Chat app's preview card in the conversation",
   "capability_id": null,
   "unmapped": "own_feature",
   "source": "https://developers.google.com/workspace/chat/preview-links",
   "result": "blocked",
   "via": "browser"
  },
  {
   "id": "cap-21",
   "capability": "Build interactive cards and dialogs",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Chat app dialog window"
   },
   "check": "triggering the dialog shows the configured card UI and records the submitted form",
   "capability_id": null,
   "unmapped": "own_feature",
   "source": "https://developers.google.com/workspace/chat/how-tos/dialogs",
   "result": "blocked",
   "via": "browser"
  },
  {
   "id": "cap-22",
   "capability": "Import data from other messaging platforms",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "POST /v1/{name=spaces/*}:completeImport",
    "mcp": null,
    "cli": null,
    "ui": "admin migration tooling"
   },
   "check": "GET /v1/{name=spaces/*} shows the space's spaceType no longer in import mode",
   "capability_id": "cap_a8damn1w",
   "unmapped": null,
   "source": "https://developers.google.com/workspace/chat/import-data; https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces/completeImport",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-23",
   "capability": "Create a custom emoji",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "POST /v1/customEmojis",
    "mcp": null,
    "cli": null,
    "ui": "emoji picker → add custom emoji"
   },
   "check": "GET /v1/{name=customEmojis/*} returns the created custom emoji",
   "capability_id": null,
   "unmapped": "own_feature",
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/customEmojis/create",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-24",
   "capability": "Read a space's live events",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "GET /v1/{parent=spaces/*}/spaceEvents",
    "mcp": null,
    "cli": null,
    "ui": null
   },
   "check": "response lists events (message/membership changes) with eventType and resource",
   "capability_id": null,
   "unmapped": "own_feature",
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.spaceEvents",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-25",
   "capability": "Organize saved items into sections",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "POST /v1/{parent=users/*}/sections; POST /v1/{name=users/*/sections/*}:position",
    "mcp": null,
    "cli": null,
    "ui": "Chat home sidebar sections"
   },
   "check": "GET /v1/{parent=users/*}/sections lists the created section at the new position",
   "capability_id": null,
   "unmapped": "own_feature",
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/users.sections",
   "result": "blocked",
   "via": "api"
  },
  {
   "id": "cap-26",
   "capability": "Ask Gemini to summarize or answer questions in a conversation",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Gemini side panel in Chat"
   },
   "check": "visually confirm a Gemini-generated summary or answer appears in the side panel",
   "capability_id": "cap_9qpyn3bj",
   "unmapped": null,
   "source": "https://workspace.google.com/products/chat/",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-27",
   "capability": "Create and assign tasks from a space",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "space → Tasks tab"
   },
   "check": "the created task appears, with assignee, in the space's Tasks tab",
   "capability_id": "cap_kzejkm30",
   "unmapped": null,
   "source": "https://workspace.google.com/products/chat/",
   "result": "blocked",
   "via": "browser"
  },
  {
   "id": "cap-28",
   "capability": "Work from the mobile or desktop app",
   "weight": "peripheral",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "iOS/Android apps; Gmail left-nav Chat panel"
   },
   "check": "visually confirm the Chat conversation opens and syncs in the mobile app",
   "capability_id": "cap_p675qb2x",
   "unmapped": null,
   "source": "https://workspace.google.com/products/chat/",
   "result": "blocked",
   "via": "browser"
  },
  {
   "id": "cap-29",
   "capability": "Admin: restrict or control app and webhook access",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Admin console → Apps → Google Workspace → Chat"
   },
   "check": "Admin console setting toggled; non-admin user loses ability to add webhooks per policy",
   "capability_id": "cap_8s0kmj2s",
   "unmapped": null,
   "source": "https://support.google.com/a/answer/7651360",
   "result": "blocked",
   "via": null
  },
  {
   "id": "cap-30",
   "capability": "Encrypt messages with your own key (client-side encryption)",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "space → turn on additional encryption"
   },
   "check": "a client-side-encrypted space shows the CSE indicator and requires the configured key service",
   "capability_id": "cap_se1tg3g2",
   "unmapped": null,
   "source": "https://workspace.google.com/products/chat/",
   "result": "blocked",
   "via": null
  }
 ],
 "stale": false,
 "unreachable_since": null,
 "not_driven_since": null,
 "icon": "/logos/chat-google.png",
 "agent_kinds": {
  "browser": {
   "who": "An assistant in a browser",
   "passed": [],
   "stop": "signup",
   "why": "sign-up requires a birthday; Workspace a domain",
   "tone": "wall",
   "text": "Signing up needs a person: sign-up requires a birthday; Workspace a domain."
  },
  "direct": {
   "who": "An agent talking to it directly",
   "passed": [],
   "stop": "signup",
   "why": "sign-up requires a birthday; Workspace a domain",
   "tone": "wall",
   "text": "Signing up needs a person: sign-up requires a birthday; Workspace a domain."
  }
 },
 "sdk": {
  "packages": [],
  "read_at": "2026-11-01T20:54:19Z"
 },
 "surface_reach": {
  "surfaces": {
   "mcp": true,
   "cli": true
  },
  "read_at": "2026-11-01T23:36:49Z"
 },
 "connect": {
  "mcp": {
   "url": "https://chatmcp.googleapis.com/mcp/v1",
   "transport": "streamable-http",
   "state": "tested",
   "tools": {
    "count": 4,
    "names": [
     "list_messages",
     "search_messages",
     "search_conversations",
     "send_message"
    ],
    "read_at": "2026-11-01"
   }
  },
  "cli": {
   "install": "npm install -g @google/gemini-cli",
   "package": "@google/gemini-cli",
   "ecosystem": "npm",
   "source": "https://www.npmjs.com/package/@google/gemini-cli",
   "state": "documented"
  },
  "signup": {
   "url": "https://accounts.google.com/lifecycle/steps/signup/unknownerror",
   "state": "documented"
  }
 },
 "surface_sources": {
  "mcp": "https://chatmcp.googleapis.com/mcp/v1",
  "cli": "https://www.npmjs.com/package/@google/gemini-cli",
  "api": "https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.spaceEvents/list",
  "docs": "https://developers.google.com/workspace/chat/overview",
  "llms_txt": "https://chat.google.com/llms.txt"
 },
 "copilot_connector": null,
 "stripe_directory": null,
 "in_stripe_directory": null,
 "stripe_projects": null,
 "pay_rails": [],
 "stop_evidence": {
  "at": "signup",
  "date": "2026-10-27",
  "line": "Google Account sign-up requires a birthday and gender after the name ('Please fill in a complete birthday'); our agent gives no date of birth."
 },
 "wall_vendor": null,
 "mcp_sign_in": null,
 "safety_issues": 1,
 "fix_counts": {
  "small": 3,
  "medium": 1,
  "large": 1,
  "total": 5
 },
 "evidence_sha256": "15637de458d3c297ce73bc1c543a8473c568be315db27311fa4b19e499016418",
 "first_seen": "2026-10-27",
 "license": {
  "name": "CC BY 4.0",
  "url": "https://creativecommons.org/licenses/by/4.0/"
 },
 "correction": {
  "status": "none",
  "open": 0,
  "since": null,
  "reply_by": null
 },
 "attribution": null,
 "confirmation": {
  "state": "awaiting",
  "drives": 2,
  "agree": 2,
  "review": null,
  "text": "2 drives on one day, awaiting confirmation"
 },
 "stop_shot": null,
 "stop_shot_hash": null,
 "attempts_count": 65,
 "detail": {
  "public": false,
  "in": [
   "report",
   "api"
  ],
  "since": "2026-10-17"
 },
 "what_it_does": "Google Chat is a team chat tool that is part of Google Workspace.",
 "kind": "product",
 "rules_version": "rules-2026-10-30-42",
 "rules_url": "https://agentdrives.com/method/changelog#rules-2026-10-30-42",
 "category_median": null,
 "peers": {
  "IN-08": {
   "basis": "category",
   "n": 6,
   "below": 0,
   "above": 0
  },
  "IN-12": {
   "basis": "category",
   "n": 8,
   "below": 0,
   "above": 4
  },
  "MCP-03": {
   "basis": "all",
   "n": 66,
   "below": 4,
   "above": 0,
   "percentile": 53
  },
  "MCP-04": {
   "basis": "all",
   "n": 66,
   "below": 20,
   "above": 15,
   "percentile": 54
  },
  "MCP-05": {
   "basis": "all",
   "n": 66,
   "below": 1,
   "above": 20,
   "percentile": 36
  },
  "MCP-06": {
   "basis": "all",
   "n": 66,
   "below": 50,
   "above": 0,
   "percentile": 88
  },
  "MCP-07": {
   "basis": "all",
   "n": 66,
   "below": 32,
   "above": 0,
   "percentile": 74
  },
  "MCP-11": {
   "basis": "all",
   "n": 66,
   "below": 33,
   "above": 0,
   "percentile": 75
  },
  "PAY-05": {
   "basis": "category",
   "n": 5,
   "below": 0,
   "above": 1
  },
  "PROTO-02": {
   "basis": "category",
   "n": 7,
   "below": 0,
   "above": 0
  }
 },
 "probe": null,
 "probe_history": [],
 "surface_changes": [],
 "agent_reports": null,
 "verdict": null,
 "changes": {
  "source": "store",
  "drives": [
   {
    "run": "20261027T072146Z",
    "date": "2026-10-27",
    "level": 1,
    "stop": "signup",
    "entry": "closed",
    "driver": 5,
    "listed": true,
    "paid": false,
    "agent_paid": null
   },
   {
    "run": "20261027T231840Z",
    "date": "2026-10-27",
    "level": 1,
    "stop": "signup",
    "entry": "closed",
    "driver": 5,
    "listed": true,
    "paid": false,
    "agent_paid": null
   }
  ],
  "events": [],
  "feed": "https://agentdrives.com/api/tools/chat-google/changes.json"
 },
 "agreement": {
  "drives": 2,
  "agree": 2
 },
 "method_release": "2026-Q4.27",
 "found": {
  "agent_blockers": 3,
  "surface_issues": 0
 },
 "agent_surfaces": {
  "api": {
   "state": "documented",
   "reachable": null,
   "documented": 55,
   "tested": 0,
   "source": "https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.spaceEvents/list"
  },
  "mcp": {
   "state": "documented",
   "reachable": true,
   "documented": 9,
   "tested": 0,
   "source": "https://chatmcp.googleapis.com/mcp/v1"
  },
  "cli": {
   "state": "none_found",
   "reachable": null,
   "documented": null,
   "tested": null,
   "source": "https://www.npmjs.com/package/@google/gemini-cli"
  },
  "sdk": {
   "state": "unknown",
   "documented": null,
   "tested": null,
   "source": null
  },
  "docs": {
   "state": "documented",
   "documented": 11,
   "tested": 0,
   "source": "https://developers.google.com/workspace/chat/overview"
  },
  "payment": {
   "state": "none_found",
   "documented": null,
   "tested": null,
   "source": null
  }
 },
 "issues_found": 3,
 "rank": null,
 "rank_of": 3,
 "rank_change": null,
 "rank_since": null,
 "links": {
  "category": [
   {
    "label": "Work and collaboration",
    "href": "https://agentdrives.com/categories/work"
   },
   {
    "label": "Team chat",
    "href": "https://agentdrives.com/categories/team-chat"
   }
  ],
  "tasks": [],
  "walls": [
   {
    "label": "Let AI agents sign up and get an API key",
    "href": "https://agentdrives.com/guides/let-agents-sign-up-and-get-a-key",
    "note": "fix guide"
   }
  ],
  "vendors": [
   {
    "label": "Google reCAPTCHA",
    "href": "https://agentdrives.com/vendors/recaptcha",
    "note": "let our agent through",
    "slug": "recaptcha"
   }
  ],
  "standards": [
   {
    "label": "MCP",
    "href": "https://agentdrives.com/standards/mcp",
    "note": "tools an agent can call"
   }
  ],
  "steps": [
   {
    "label": "Find",
    "href": "https://agentdrives.com/access/find"
   },
   {
    "label": "Get in",
    "href": "https://agentdrives.com/access/get-in",
    "note": "stopped here"
   },
   {
    "label": "Use",
    "href": "https://agentdrives.com/access/use"
   },
   {
    "label": "Pay",
    "href": "https://agentdrives.com/access/pay"
   },
   {
    "label": "Leave",
    "href": "https://agentdrives.com/access/leave"
   }
  ],
  "rivals": [
   {
    "label": "Element",
    "href": "https://agentdrives.com/tools/element",
    "slug": "element",
    "level": 1
   },
   {
    "label": "Microsoft Teams",
    "href": "https://agentdrives.com/tools/microsoft",
    "slug": "microsoft",
    "level": 1
   },
   {
    "label": "Pumble",
    "href": "https://agentdrives.com/tools/pumble",
    "slug": "pumble",
    "level": 1
   }
  ],
  "compare": [],
  "rail": [
   {
    "label": "Watch this product",
    "href": "https://agentdrives.com/watch"
   },
   {
    "label": "Get the data",
    "href": "https://agentdrives.com/data#plans"
   }
  ]
 },
 "capability_matrix": [
  {
   "id": "cap-01",
   "name": "Send a chat message",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-02",
   "name": "Reply in a thread",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-03",
   "name": "Edit or delete a message",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-04",
   "name": "Create a channel",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-05",
   "name": "Join or leave a channel",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-06",
   "name": "Share a file in chat",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-07",
   "name": "Start a call",
   "core": true,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "blocked"
   }
  },
  {
   "id": "cap-08",
   "name": "React to a message",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-09",
   "name": "Pin or save a message",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-10",
   "name": "Mark messages as read",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-11",
   "name": "Search chat messages",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-12",
   "name": "Set a status",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-13",
   "name": "Post through an incoming webhook",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-14",
   "name": "Change a channel's settings",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-15",
   "name": "Configure notifications",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-16",
   "name": "Kick, ban or time out a member",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-17",
   "name": "Share a channel with another organisation",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-18",
   "name": "Build a Chat app or bot",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-19",
   "name": "Respond to slash commands",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "blocked"
   }
  },
  {
   "id": "cap-20",
   "name": "Preview a shared link with a rich card",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "blocked"
   }
  },
  {
   "id": "cap-21",
   "name": "Build interactive cards and dialogs",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "blocked"
   }
  },
  {
   "id": "cap-22",
   "name": "Import data from other messaging platforms",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "untried",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-23",
   "name": "Create a custom emoji",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-24",
   "name": "Read a space's live events",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "none"
   }
  },
  {
   "id": "cap-25",
   "name": "Organize saved items into sections",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "blocked",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-26",
   "name": "Ask Gemini to summarize or answer questions in a conversation",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-27",
   "name": "Create and assign tasks from a space",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "blocked"
   }
  },
  {
   "id": "cap-28",
   "name": "Work from the mobile or desktop app",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "blocked"
   }
  },
  {
   "id": "cap-29",
   "name": "Admin: restrict or control app and webhook access",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  },
  {
   "id": "cap-30",
   "name": "Encrypt messages with your own key (client-side encryption)",
   "core": false,
   "result": "blocked",
   "surfaces": {
    "api": "none",
    "mcp": "none",
    "cli": "none",
    "ui": "untried"
   }
  }
 ],
 "category_place": {
  "category": "team-chat",
  "products": 9,
  "higher": 3,
  "same_level": 5,
  "as_of": "2026-10-31",
  "stop": "signup",
  "rivals_by": "stop",
  "rivals": [
   "element",
   "microsoft",
   "pumble",
   "slack"
  ]
 },
 "page": "https://agentdrives.com/tools/chat-google?via=api"
}