Skip to main content
Glama

delete_webhook

Destructive

Remove a webhook from a Codemagic application by providing the application ID and webhook ID.

Instructions

Delete a webhook from a Codemagic application.

Args: app_id: The Codemagic application ID. webhook_id: The webhook ID to delete.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
app_idYes
webhook_idYes

Implementation Reference

  • API client method that sends DELETE request to /apps/{app_id}/webhooks/{webhook_id}. This is the actual HTTP call that deletes the webhook.
    async def delete_webhook(self, app_id: str, webhook_id: str) -> Any:
        return await self._delete(f"/apps/{app_id}/webhooks/{webhook_id}")
  • MCP tool handler function that is decorated with @mcp.tool(annotations=ToolAnnotations(destructiveHint=True)). It creates a CodemagicClient and calls client.delete_webhook(app_id, webhook_id).
    @mcp.tool(annotations=ToolAnnotations(destructiveHint=True))
    async def delete_webhook(app_id: str, webhook_id: str) -> Any:
        """Delete a webhook from a Codemagic application.
    
        Args:
            app_id: The Codemagic application ID.
            webhook_id: The webhook ID to delete.
        """
        async with CodemagicClient() as client:
            return await client.delete_webhook(app_id, webhook_id)
  • register_all_tools calls webhooks.register(mcp) which registers all webhook tools including delete_webhook.
    def register_all_tools(mcp: FastMCP) -> None:
        apps.register(mcp)
        builds.register(mcp)
        artifacts.register(mcp)
        caches.register(mcp)
        variables.register(mcp)
        webhooks.register(mcp)
  • Tool docstring and signature define the input schema: app_id (str) and webhook_id (str). The @mcp.tool decorator with destructiveHint=True provides metadata about the tool.
    async def delete_webhook(app_id: str, webhook_id: str) -> Any:
        """Delete a webhook from a Codemagic application.
    
        Args:
            app_id: The Codemagic application ID.
            webhook_id: The webhook ID to delete.
  • Server instructions mention delete_webhook as a destructive operation that requires confirmation before execution.
    "Destructive ops (delete_app, cancel_build, delete_cache, delete_all_caches, delete_variable, delete_webhook): confirm before executing.\n\n"
Behavior3/5

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

Annotations already provide destructiveHint=true, so the description adds minimal behavioral context beyond the verb 'Delete'. No additional caveats about irreversibility or side effects.

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?

Extremely concise, front-loaded with purpose, and uses a clear structured format with Args. No wasted words.

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

Completeness4/5

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

For a simple delete operation, the description is mostly complete. However, it could mention that the webhook must exist or that deletion is permanent. No output schema needed.

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 0%, but the description explains both parameters ('Codemagic application ID' and 'webhook ID to delete'), adding significant meaning beyond schema property titles.

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 clearly states the verb 'Delete' and the resource 'webhook from a Codemagic application', distinguishing it from siblings like add_webhook and list_webhooks.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives (e.g., when webhook is needed vs not) or preconditions. The description is purely functional.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AgiMaulana/CodemagicMcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server