Skip to main content

Overview

The Webhook transport provides HTTP-based asynchronous messaging, perfect for web services and microservice architectures. It uses standard HTTP POST requests for communication without requiring cloud provider dependencies.
Webhook transport uses HTTP POST requests where the client sends requests to server endpoints and provides a webhook URL for receiving async responses.

Examples

View complete working examples in the GitHub repository:

Quick Start

Basic Usage

Configuration

Server Configuration

Class: WebhookServerConfig
float
default:"30.0"
HTTP timeout for sending webhooks to clients.
int
default:"0"
Number of retry attempts for failed webhook deliveries (default: no retries).
float
Optional overall transport timeout.

Client Configuration

Class: WebhookClientConfig
string
default:"http://localhost:8000/mcp/request"
URL of the server’s HTTP endpoint.Example: https://api.example.com/mcp/request
float
default:"30.0"
HTTP request timeout in seconds.
int
default:"0"
Number of retry attempts for failed requests (default: no retries).
string
Unique client identifier. Auto-generated if not provided.
float
Optional overall transport timeout.
Note: The webhook URL is provided via the _meta field in the initialize request and is handled automatically by the client.