hookdeck-cli 1.9.1 → 1.10.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +114 -0
- package/binaries/darwin-amd64/hookdeck +0 -0
- package/binaries/darwin-arm64/hookdeck +0 -0
- package/binaries/linux-amd64/hookdeck +0 -0
- package/binaries/linux-arm64/hookdeck +0 -0
- package/binaries/win32-386/hookdeck.exe +0 -0
- package/binaries/win32-amd64/hookdeck.exe +0 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -8,12 +8,49 @@ Using the Hookdeck CLI, you can forward your events (e.g. webhooks) to your loca
|
|
|
8
8
|
|
|
9
9
|
Hookdeck CLI is compatible with most of Hookdeck's features, such as filtering and fan-out delivery. You can use Hookdeck CLI to develop or test your event (e.g. webhook) integration code locally.
|
|
10
10
|
|
|
11
|
+
You can also manage Hookdeck Event Gateway resources—sources, destinations, connections, events, transformations—from the CLI. For AI and agent workflows, the Event Gateway MCP server (`hookdeck gateway mcp`) exposes these capabilities as tools in MCP-compatible clients (e.g. Cursor, Claude).
|
|
12
|
+
|
|
11
13
|
Although it uses a different approach and philosophy, it's a replacement for ngrok and alternative HTTP tunnel solutions.
|
|
12
14
|
|
|
13
15
|
Hookdeck for development is completely free, and we monetize the platform with our production offering.
|
|
14
16
|
|
|
15
17
|
For a complete reference of all commands and flags, see [REFERENCE.md](REFERENCE.md).
|
|
16
18
|
|
|
19
|
+
## Table of contents
|
|
20
|
+
|
|
21
|
+
- [Installation](#installation)
|
|
22
|
+
- [NPM](#npm)
|
|
23
|
+
- [macOS](#macos)
|
|
24
|
+
- [Windows](#windows)
|
|
25
|
+
- [Linux Or without package managers](#linux-or-without-package-managers)
|
|
26
|
+
- [Docker](#docker)
|
|
27
|
+
- [Usage](#usage)
|
|
28
|
+
- [Commands](#commands)
|
|
29
|
+
- [Login](#login)
|
|
30
|
+
- [Listen](#listen)
|
|
31
|
+
- [Logout](#logout)
|
|
32
|
+
- [Skip SSL validation](#skip-ssl-validation)
|
|
33
|
+
- [Disable health checks](#disable-health-checks)
|
|
34
|
+
- [Version](#version)
|
|
35
|
+
- [Completion](#completion)
|
|
36
|
+
- [Running in CI](#running-in-ci)
|
|
37
|
+
- [Event Gateway](#event-gateway)
|
|
38
|
+
- [Event Gateway MCP](#event-gateway-mcp)
|
|
39
|
+
- [Manage connections](#manage-connections)
|
|
40
|
+
- [Transformations](#transformations)
|
|
41
|
+
- [Requests, events, and attempts](#requests-events-and-attempts)
|
|
42
|
+
- [Manage active project](#manage-active-project)
|
|
43
|
+
- [Configuration files](#configuration-files)
|
|
44
|
+
- [Global Flags](#global-flags)
|
|
45
|
+
- [Troubleshooting](#troubleshooting)
|
|
46
|
+
- [Developing](#developing)
|
|
47
|
+
- [Testing](#testing)
|
|
48
|
+
- [Releasing](#releasing)
|
|
49
|
+
- [Repository Setup](#repository-setup)
|
|
50
|
+
- [License](#license)
|
|
51
|
+
|
|
52
|
+
**Quick links:** [Local development (Listen)](#listen) · [Resource management (CLI)](#event-gateway) / [Manage connections](#manage-connections) · [AI / agent integration (Event Gateway MCP)](#event-gateway-mcp)
|
|
53
|
+
|
|
17
54
|
https://github.com/user-attachments/assets/7a333c5b-e4cb-45bb-8570-29fafd137bd2
|
|
18
55
|
|
|
19
56
|
|
|
@@ -491,6 +528,83 @@ hookdeck gateway transformation run --code "addHandler(\"transform\", (request,
|
|
|
491
528
|
|
|
492
529
|
For complete command and flag reference, see [REFERENCE.md](REFERENCE.md).
|
|
493
530
|
|
|
531
|
+
### Event Gateway MCP
|
|
532
|
+
|
|
533
|
+
The CLI includes an [MCP](https://modelcontextprotocol.io/) (Model Context Protocol) server for investigating event traffic in production. It exposes read-only tools that let AI agents query your Hookdeck Event Gateway — inspect connections, trace requests through events and delivery attempts, review issues, and pull aggregate metrics.
|
|
534
|
+
|
|
535
|
+
**Configure your MCP client** (Cursor, Claude Desktop, or any MCP-compatible host):
|
|
536
|
+
|
|
537
|
+
Cursor (`~/.cursor/mcp.json`):
|
|
538
|
+
|
|
539
|
+
```json
|
|
540
|
+
{
|
|
541
|
+
"mcpServers": {
|
|
542
|
+
"hookdeck": {
|
|
543
|
+
"command": "hookdeck",
|
|
544
|
+
"args": ["gateway", "mcp"]
|
|
545
|
+
}
|
|
546
|
+
}
|
|
547
|
+
}
|
|
548
|
+
```
|
|
549
|
+
|
|
550
|
+
Claude Desktop (`claude_desktop_config.json`):
|
|
551
|
+
|
|
552
|
+
```json
|
|
553
|
+
{
|
|
554
|
+
"mcpServers": {
|
|
555
|
+
"hookdeck": {
|
|
556
|
+
"command": "hookdeck",
|
|
557
|
+
"args": ["gateway", "mcp"]
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
}
|
|
561
|
+
```
|
|
562
|
+
|
|
563
|
+
The client starts `hookdeck gateway mcp` as a stdio subprocess. If you haven't authenticated yet, the `hookdeck_login` tool is available to log in via the browser.
|
|
564
|
+
|
|
565
|
+
#### Available tools
|
|
566
|
+
|
|
567
|
+
| Tool | Description |
|
|
568
|
+
|------|-------------|
|
|
569
|
+
| `hookdeck_projects` | List projects or switch the active project for this session |
|
|
570
|
+
| `hookdeck_connections` | Inspect connections and control delivery flow (list, get, pause, unpause) |
|
|
571
|
+
| `hookdeck_sources` | Inspect inbound sources (HTTP endpoints that receive events) |
|
|
572
|
+
| `hookdeck_destinations` | Inspect delivery destinations (HTTP endpoints where events are sent) |
|
|
573
|
+
| `hookdeck_transformations` | Inspect JavaScript transformations applied to event payloads |
|
|
574
|
+
| `hookdeck_requests` | Query inbound requests — list, get details, raw body, linked events |
|
|
575
|
+
| `hookdeck_events` | Query processed events — list, get details, raw payload body |
|
|
576
|
+
| `hookdeck_attempts` | Query delivery attempts — retry history, response codes, errors |
|
|
577
|
+
| `hookdeck_issues` | Inspect aggregated failure signals (delivery failures, transform errors, backpressure) |
|
|
578
|
+
| `hookdeck_metrics` | Query aggregate metrics — counts, failure rates, queue depth over time |
|
|
579
|
+
| `hookdeck_help` | Discover available tools and their actions |
|
|
580
|
+
|
|
581
|
+
#### Example prompts
|
|
582
|
+
|
|
583
|
+
Once the MCP server is configured, you can ask your agent questions like:
|
|
584
|
+
|
|
585
|
+
```
|
|
586
|
+
"Are any of my events failing right now?"
|
|
587
|
+
→ Agent uses hookdeck_issues to list open issues, then hookdeck_events to inspect recent failures.
|
|
588
|
+
|
|
589
|
+
"Show me the last 10 events for my Stripe source and check if any failed."
|
|
590
|
+
→ Agent uses hookdeck_sources to find the Stripe source, then hookdeck_events filtered by source and status.
|
|
591
|
+
|
|
592
|
+
"What's the error rate for my API destination over the last 24 hours?"
|
|
593
|
+
→ Agent uses hookdeck_metrics with measures like failed_count and count, grouped by destination.
|
|
594
|
+
|
|
595
|
+
"Trace request req_abc123 — what events did it produce, and did they all deliver successfully?"
|
|
596
|
+
→ Agent uses hookdeck_requests to get the request, then the events action to list generated events.
|
|
597
|
+
|
|
598
|
+
"Why is my checkout endpoint returning 500s? Show me the latest attempt details."
|
|
599
|
+
→ Agent uses hookdeck_events filtered by status FAILED, then hookdeck_attempts to inspect delivery details.
|
|
600
|
+
|
|
601
|
+
"Pause the connection between Stripe and my staging endpoint while I debug."
|
|
602
|
+
→ Agent uses hookdeck_connections to find and pause the connection.
|
|
603
|
+
|
|
604
|
+
"Compare failure rates across all my destinations this week."
|
|
605
|
+
→ Agent uses hookdeck_metrics with dimensions set to destination_id and measures like error_rate.
|
|
606
|
+
```
|
|
607
|
+
|
|
494
608
|
### Manage connections
|
|
495
609
|
|
|
496
610
|
Create and manage webhook connections between sources and destinations with inline resource creation, authentication, processing rules, and lifecycle management. Use `hookdeck gateway connection` (or the backward-compatible alias `hookdeck connection`). For detailed examples with authentication, filters, retry rules, and rate limiting, see the complete [connection management](#manage-connections) section below.
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|