Skip to main content
Glama

Dutify

pm_create_webhook

Create an outgoing webhook subscription for the current workspace. The response includes a one-time secret (HMAC-SHA256 key used to verify the X-Webhook-Signature-256 header on delivery). SAVE THIS SECRET IMMEDIATELY — subsequent reads (pm_get_webhook / pm_list_webhooks) do NOT return it; the only way to get a new one is to delete and recreate the webhook. eventTypes are dash-cased names (e.g. "task-created", "task-status-changed", "comment-added"); the catalog has 130+ entries — common ones include task-created/deleted, task-status-changed, task-priority-changed, task-assignee-added/removed, task-due-date-updated, comment-added/updated, reaction-added, custom-field-value-updated, space-deleted, folder-deleted, task-list-deleted, workspace-user-role-changed. Optionally narrow delivery to a single entity by setting scopeType (SPACE / FOLDER / TASK_LIST / TASK) plus scopeEntityIdentifier; omit both for workspace-wide delivery. Outgoing payload envelope is {version, id, type, timestamp, workspaceIdentifier, data}; retries fire at +0s / +1min / +5min (3 attempts total) and treat both 4xx and 5xx as failures. API-key scope: webhooks:write.

Input Schema

NameRequiredDescriptionDefault
urlYesHTTPS endpoint that will receive POSTs
nameNoHuman-readable label for the webhook
accountNoMulti-account auth only: name of the account from X-Dutify-Accounts to use for this call. Ignored in single-account mode (X-API-Key header). When multiple accounts are configured and this is omitted, the call fails with ACCOUNT_REQUIRED listing the available names. list_accounts never requires a selection.
scopeTypeNoOptional scope narrowing; requires scopeEntityIdentifier when set
workspaceNoWorkspace identifier or exact name for this call. Overrides the configured workspace. For personal keys, discover candidates with list_workspaces and select explicitly. Does not change other calls or expand a workspace key's access.
eventTypesYesDash-cased event names, e.g. ["task-created", "comment-added"]
scopeEntityIdentifierNoIdentifier of the scoping entity (required when scopeType is set)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Adds substantial behavior beyond the annotations: one-time HMAC secret not returned by subsequent reads, required immediate saving, payload envelope, retry schedule and failure treatment, scope behavior, and required API-key scope. Annotations already mark this as non-read-only and non-idempotent, and the description complements them with operational details.

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?

The critical one-time secret warning is front-loaded and prominent. The description is dense and long, especially the event-type catalog, but most detail is operational and useful for correct invocation; some list compression could improve readability.

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 mutation tool with no output schema, the description covers return semantics (secret), delivery behavior, retry policy, payload shape, scoping, and auth scope. It is complete enough for an agent to create and handle the webhook correctly.

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

Parameters5/5

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

Although schema coverage is 100%, the description meaningfully enriches parameters: eventTypes are dash-cased with a 130+ catalog and concrete common examples, scopeType plus scopeEntityIdentifier narrow delivery, and omitting both scope fields yields workspace-wide delivery. This adds real semantic guidance beyond the schema's brief parameter descriptions.

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?

States a specific verb and resource: creating an outgoing webhook subscription for the current workspace. It is clearly distinguishable from pm_get_webhook, pm_list_webhooks, pm_update_webhook, and pm_delete_webhook by naming the create action and its one-time secret response.

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?

Clearly contextualizes creation, scope narrowing, and the consequence that reads do not return the secret, so recreation is required to rotate it. It does not explicitly compare against pm_update_webhook for modifying an existing webhook, but the create-vs-read distinction is strong.

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.

Resources