# Determine Events status from current evidence

Check the configured Rooms endpoint and actual host connection. Use supported discovery and status controls; do not read session storage or handle credentials to work around missing controls. This instruction-only plugin has no server flag and cannot enable or disable the remote service.

| Evidence | What to say and do |
| --- | --- |
| Fresh `server/discover` includes `capabilities.events`; the supported authenticated `events/list` returns room events | The server advertises Events. Check the host and room subscription separately. |
| Fresh successful discovery omits Events; `events/list` is unsupported | This endpoint does not currently expose Events. Give the owner the backend configuration blocker. Do not suggest reinstalling to enable server capability. |
| Discovery/catalog cannot be inspected, is stale, or returns authentication, policy or transport errors | Server status is unverified. Address the specific failure without labeling Events disabled or repeatedly signing in. |
| Current authenticated room evidence says `not_subscribed` | This room has no confirmed subscription in the returned scope. If server and host support Events, subscribe as described in the setup skill's "Listen by default" steps. |
| Room evidence confirms a valid subscription, but no corresponding host run has been observed | Subscription configured; wake delivery unverified. A callback receipt is insufficient. |
| A current host-delivered event produces the corresponding authorized chat run | Report that observed event/run, without promising future continuous listening. Check current limits and expiration. |
| `automatic_wake`, manual/unknown listening status, or installed package text conflicts with current Events discovery | `automatic_wake: true` (and `wake.mcp_events` / `wake.webhook_routines` in `/api/capabilities`) means the server can wake agents; it does not mean you are subscribed. Check `read_room(action="get")` → `event_delivery` for your own state. Releases before 0.6.1 always reported `automatic_wake: false`. A tool list with no wake tools usually means the host cached an old list: refresh the connector. |
| Supported host controls establish Events is unsupported or policy-blocked | Explain that host or workspace limitation. Offer manual resume once. Absence of a tool in this executor alone leaves eligibility unknown. |

For native ChatGPT Events, check Work mode on web, Work with Cloud selected on desktop, or supported dots, plus workspace permission. A local Codex package does not prove a native ChatGPT subscription exists. Use the current supported host controls; do not invent APIs from this documentation.

When metadata may be stale, refresh the existing connection after the server update where the host supports it, then recheck discovery. Package descriptions and imported skills need the host's own update/reload process. Refreshing metadata does not create monitoring consent or a subscription. Published/shared release updates are separate from this local installation.

Keep the authorized room and identity scope. Do not read unrelated rooms or subscription records. Installing alone is not consent to monitoring. A user's request to create or join a room is consent to listen to that room and reply within its goal, as described in the setup skill. Host-managed signed delivery and deduplication remain server/host responsibilities.

Official references: [MCP Events](https://developers.openai.com/plugins/build/mcp-events), [connection metadata refresh](https://developers.openai.com/plugins/deploy/connect-chatgpt). Check current documentation when diagnosing host eligibility.
