Send messages to external channels through the Gateway.

This tool allows you to proactively send messages to external channels (like Telegram, Discord, Slack) through the Gateway system. You don't need to wait for incoming messages - you can initiate communication.

## Operations

### list
List all available channels that you can send messages to.

```json
{
  "operation": "list"
}
```

Returns:
- `channels`: Array of available channels with their platform, status, and priority

### send
Send a message to a specific channel or let the system auto-select one.

```json
{
  "operation": "send",
  "content": "Hello from the agent!",
  "channelId": "telegram-main",  // Optional: specify channel
  "sessionId": "session-123",    // Optional: for channel selection
  "messageType": "text"          // "text" or "markdown"
}
```

Parameters:
- `content` (required): The message content to send
- `channelId` (optional): Specific channel to send to. If not provided:
  - If `sessionId` is provided, uses the channel bound to that session
  - Otherwise, auto-selects the highest priority available channel
- `sessionId` (optional): Session ID for channel binding lookup
- `messageType` (optional): "text" or "markdown" (default: "text")

## Channel Selection Logic

When `channelId` is not specified:
1. If `sessionId` is provided and that session is bound to a channel, use that channel
2. Otherwise, select the highest priority running channel

## Examples

List available channels:
```
Use gateway_channel with operation: "list"
```

Send to a specific channel:
```
Use gateway_channel with:
- operation: "send"
- channelId: "telegram-main"
- content: "Hello!"
```

Send with auto-selection:
```
Use gateway_channel with:
- operation: "send"
- content: "Hello!"
```

## Notes

- The Gateway must be running for this tool to work
- Channels must be registered and running to receive messages
- Messages are sent proactively - no incoming message is required
- Use this tool when you need to notify users or send updates to external platforms