Skip to main content
Glama

register_webhook

Register an HTTPS endpoint to receive signed push notifications for compel lifecycle events (compel.ready when renderable, compel.completed, compel.failed). Returns webhook_id and the HMAC-SHA256 signing secret exactly once - store the secret immediately, it is never returned again. Deliveries are signed via X-Compeller-Signature: sha256= over the raw body. Delivery is at-least-once: a failed delivery is retried with backoff (up to 6 attempts) and every retry carries the same X-Compeller-Event-Id, so dedupe on it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesHTTPS URL to deliver events to (max 2048 chars)
eventsNoEvent types to subscribe to. Omit or pass ["*"] for all. Known types: compel.ready (renderable - call start_render), compel.completed, compel.failed.

TDQS

A4.7/5.0
Behavior5/5

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

The description goes well beyond annotations by disclosing critical behavioral traits: the signing secret is returned exactly once and must be stored immediately, deliveries are signed and at-least-once with up to 6 retries, and the same event ID is used for deduplication. This is rich context that an agent needs to handle deliveries correctly. No contradictions with annotations.

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

Conciseness5/5

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

The description is dense but every sentence earns its place: purpose, return value warning, delivery signature, and retry/dedupe behavior. It is front-loaded with the core action, and the length is appropriate for the complexity of webhook registration.

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?

Despite having no output schema, the description covers the essential context: what events are available, what is returned (webhook_id and secret), and how delivery behaves (signing, retries, dedupe). This is complete for a registration tool with only 2 parameters, and the agent can proceed confidently.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds value by clarifying the 'events' parameter semantics: it explains that 'compel.ready' means 'renderable - call start_render' and that omitting events or passing ['*'] subscribes to all. This goes beyond the schema's enum list and enhances the agent's understanding of parameter usage.

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?

The description starts with a specific verb+resource: 'Register an HTTPS endpoint to receive signed push notifications'. It clearly distinguishes this from other webhook tools (delete, list, rotate, update, test) by focusing on initial registration. The event types are also enumerated, making the tool's purpose unambiguous.

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

Usage Guidelines4/5

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

The description implies when to use this tool (when setting up a new webhook) and provides context about event subscription and delivery. However, it does not explicitly mention alternatives or exclusions, such as using update_webhook to modify an existing webhook. Still, the context is sufficiently clear for an agent to select this tool appropriately.

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.

TDQS

A3.6/5.0
Disambiguation5/5

Every tool targets a distinct action or resource. Groups like compels, lighting cues, webhooks, and account are clearly separated, and even similar tools (create_compel vs create_compel_from_music) have well-defined differences in input source.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with underscores (e.g., cancel_compel, launch_lighting_cue, register_webhook). No mixing of conventions or ambiguous verb choices.

Tool Count2/5

With 30 tools, the server is above the 25+ threshold for 'too many'. While the scope includes multiple subdomains, the high number adds cognitive load and risks selection errors for an agent.

Completeness3/5

Core workflows are present (create, read, cancel, list, search, render), but missing update/delete for compels and media, and no way to modify render configuration beyond defaults.