Skip to main content
Glama

List Events

list_events
Read-onlyIdempotent

Query the Bridge app event log — signups, logins, tenant and subscription lifecycle events. Each event has: id, type, tenantId, userId, data (the event payload) and createdAt. All arguments are optional filters: type (exact event type), tenantName (the workspace/tenant NAME — resolved to its id for you), since (a duration like "24h" or "7d", or an ISO date) and limit (max results). Use this to debug what actually happened — e.g. whether a webhook fired or a signup completed — rather than inferring it from state. Fails with TENANT_NOT_FOUND when tenantName matches no tenant (list_tenants shows the names). For why one person cannot sign in, debug_auth_issue explains each failed attempt.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
appNoId of the Bridge app to act on for this call (see list_apps). Omit to use the current app.
typeNoExact event type to filter on.
limitNoMaximum number of events to return.
sinceNoTime filter: a duration like "24h" / "7d", or an ISO date.
tenantNameNoTenant/workspace name; resolved to the tenant id internally.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, and the description adds genuinely new behavior: the event field set, the TENANT_NOT_FOUND failure mode, and that tenantName is resolved to an id internally. It stops short of ordering, default limit, or pagination behavior, which an agent would benefit from.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose, then return shape, then filters, then debugging guidance and error routing — a logical order. The dense single paragraph with em-dashes and parentheticals is slightly heavy but nearly every clause carries routing or semantic value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only filter-list tool with no output schema, the description covers filters, the fields returned, and the one failure mode, so an agent has everything needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so type/since/limit/tenantName are already documented and the description largely restates them. It adds marginal value by noting tenantName is a NAME resolved to an id and by tying tenantName to the TENANT_NOT_FOUND error, but this does not exceed the baseline for full-coverage schemas.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Starts with a specific verb+resource ("Query the Bridge app event log") and immediately scopes it with concrete event categories (signups, logins, lifecycle events). The agent can distinguish it from state-inspection or auth-debugging siblings without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly frames the when-to-use ("debug what actually happened … rather than inferring it from state") and names alternatives with their triggers: list_tenants for resolving names, debug_auth_issue for sign-in failures. Both the positive case and the exclusions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.