# Send to discord

Post a message to a Discord channel through a webhook you created in Discord (Channel settings > Integrations > Webhooks). Needs path. Served by Webhooks.

Post a message to a Discord channel through a webhook you created in Discord (Channel settings > Integrations > Webhooks). Send content, embeds or both. Mentions are off unless you allow them. Returns the message id.

- Tool ID: `webhooks/discord-message`
- Name in the catalog: Send to Discord
- Provider: [Webhooks](/providers/webhooks.md)
- Capability: [Webhooks to your apps](/tools/webhooks.md)
- Price: no charge per call
- Authentication: an authorised Agentik workspace is required for execution, including zero-price tools.

## Pricing contract

No charge per call. A workspace is still needed so your agent can call it.


```json
{
  "model": "per_call",
  "amountUsd": 0
}
```

## Complete input schema


```json
{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "pattern": "^[0-9]{17,20}/[A-Za-z0-9_-]{60,80}$",
      "writeOnly": true,
      "description": "The end of your Discord webhook URL, after https://discord.com/api/webhooks/ (the webhook id, a slash, then its token). It is a secret: Agentik sends it to that host only, never stores it and removes it from every error."
    },
    "content": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2000,
      "description": "The message text, in Discord Markdown."
    },
    "username": {
      "type": "string",
      "minLength": 1,
      "maxLength": 80,
      "description": "Optional name shown instead of the webhook's."
    },
    "embeds": {
      "type": "array",
      "minItems": 1,
      "maxItems": 10,
      "items": {
        "type": "object"
      },
      "description": "Optional Discord embeds (title, description, url, fields...)."
    },
    "allowed_mentions": {
      "type": "object",
      "default": {
        "parse": []
      },
      "description": "Who the message may ping. Off by default: {\"parse\": []}. Use {\"parse\": [\"users\"]} to allow user mentions."
    }
  },
  "required": [
    "path"
  ],
  "anyOf": [
    {
      "required": [
        "content"
      ]
    },
    {
      "required": [
        "embeds"
      ]
    }
  ],
  "additionalProperties": false
}
```

## Published example

No example input is published for this tool. Ask for the inputs required by its schema.

## Execute and retrieve

Inspect again before execution, explain the price and obtain the required authority. Use MCP run_tool or POST /v1/run with this tool ID, valid input and an idempotency key. Save the returned run ID and follow the actual state. If Agentik answers that the tool is temporarily unavailable, do not retry it blindly; use discovery to propose an alternative.

A partial or uncertain result can still have consumed provider resources. Consult [billing](/docs/billing.md), [idempotency](/docs/idempotency.md) and [asynchronous results](/docs/async.md).

Licence: Your own webhook: you own the endpoint and its terms.

[Provider documentation](https://discord.com/developers/docs/resources/webhook#execute-webhook)

[REST inspection](https://api.agentik.cc/v1/tools/webhooks/discord-message) · [OpenAPI](/openapi.json) · [Connection guide](/connect.md)

---

[HTML page](/providers/webhooks/discord-message) · [Agent index](/llms.txt)
