@webhooks-cc/mcp 1.3.0 → 1.4.1

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 CHANGED
@@ -128,11 +128,17 @@ Provider template and signing support includes:
128
128
  - `slack`
129
129
  - `paddle`
130
130
  - `linear`
131
+ - `sendgrid`
132
+ - `clerk`
133
+ - `discord`
134
+ - `vercel`
135
+ - `gitlab`
136
+ - `typeform`
131
137
  - `standard-webhooks`
132
138
 
133
139
  Signature verification also supports:
134
140
 
135
- - `discord`
141
+ - all template providers except `sendgrid`, which uses IP allowlisting instead of cryptographic signatures
136
142
 
137
143
  Use `list_provider_templates` to inspect templates, default events, signature headers, and signing requirements from the agent.
138
144
 
package/dist/bin/mcp.js CHANGED
@@ -292,7 +292,7 @@ var responseRulesSchema = import_zod2.z.array(responseRuleSchema).max(50).descri
292
292
  var mockResponseSchema = import_zod2.z.object({
293
293
  status: import_zod2.z.number().int().min(import_sdk.MOCK_RESPONSE_STATUS_MIN).max(import_sdk.MOCK_RESPONSE_STATUS_MAX).describe(`HTTP status code (${import_sdk.MOCK_RESPONSE_STATUS_MIN}-${import_sdk.MOCK_RESPONSE_STATUS_MAX})`),
294
294
  body: import_zod2.z.string().default("").describe("Response body string (default: empty)"),
295
- headers: import_zod2.z.record(import_zod2.z.string()).default({}).describe("Response headers (default: none)"),
295
+ headers: import_zod2.z.record(import_zod2.z.string(), import_zod2.z.string()).default({}).describe("Response headers (default: none)"),
296
296
  delay: import_zod2.z.number().int().min(import_sdk.MOCK_RESPONSE_DELAY_MIN).max(import_sdk.MOCK_RESPONSE_DELAY_MAX).optional().describe(
297
297
  `Response delay in milliseconds (${import_sdk.MOCK_RESPONSE_DELAY_MIN}-${import_sdk.MOCK_RESPONSE_DELAY_MAX}, default: none)`
298
298
  )
@@ -681,7 +681,7 @@ function registerTools(server, client) {
681
681
  {
682
682
  slug: import_zod2.z.string().describe("The endpoint slug to send to"),
683
683
  method: methodSchema,
684
- headers: import_zod2.z.record(import_zod2.z.string()).optional().describe("HTTP headers to include"),
684
+ headers: import_zod2.z.record(import_zod2.z.string(), import_zod2.z.string()).optional().describe("HTTP headers to include"),
685
685
  body: import_zod2.z.unknown().optional().describe("Request body"),
686
686
  provider: import_zod2.z.enum(import_sdk.TEMPLATE_PROVIDERS).optional().describe("Optional provider template to send with signed headers"),
687
687
  template: import_zod2.z.string().optional().describe("Provider-specific template preset"),
@@ -928,7 +928,7 @@ function registerTools(server, client) {
928
928
  {
929
929
  url: httpUrlSchema.describe("Target URL"),
930
930
  method: methodSchema,
931
- headers: import_zod2.z.record(import_zod2.z.string()).optional().describe("HTTP headers to include"),
931
+ headers: import_zod2.z.record(import_zod2.z.string(), import_zod2.z.string()).optional().describe("HTTP headers to include"),
932
932
  body: import_zod2.z.unknown().optional().describe("Request body"),
933
933
  provider: import_zod2.z.enum(import_sdk.TEMPLATE_PROVIDERS).optional().describe("Optional provider template for signing"),
934
934
  template: import_zod2.z.string().optional().describe("Provider-specific template preset"),
@@ -959,7 +959,7 @@ function registerTools(server, client) {
959
959
  {
960
960
  url: httpUrlSchema.describe("Target URL"),
961
961
  method: methodSchema,
962
- headers: import_zod2.z.record(import_zod2.z.string()).optional().describe("HTTP headers to include"),
962
+ headers: import_zod2.z.record(import_zod2.z.string(), import_zod2.z.string()).optional().describe("HTTP headers to include"),
963
963
  body: import_zod2.z.unknown().optional().describe("Request body"),
964
964
  provider: import_zod2.z.enum(import_sdk.TEMPLATE_PROVIDERS).optional().describe("Optional provider template for signing"),
965
965
  template: import_zod2.z.string().optional().describe("Provider-specific template preset"),
@@ -1096,7 +1096,7 @@ function registerTools(server, client) {
1096
1096
  }
1097
1097
 
1098
1098
  // src/index.ts
1099
- var VERSION = true ? "1.3.0" : "0.0.0-dev";
1099
+ var VERSION = true ? "1.4.1" : "0.0.0-dev";
1100
1100
  function createServer(options = {}) {
1101
1101
  const apiKey = options.apiKey ?? process.env.WHK_API_KEY;
1102
1102
  if (!apiKey) {
package/dist/index.js CHANGED
@@ -313,7 +313,7 @@ var responseRulesSchema = import_zod2.z.array(responseRuleSchema).max(50).descri
313
313
  var mockResponseSchema = import_zod2.z.object({
314
314
  status: import_zod2.z.number().int().min(import_sdk.MOCK_RESPONSE_STATUS_MIN).max(import_sdk.MOCK_RESPONSE_STATUS_MAX).describe(`HTTP status code (${import_sdk.MOCK_RESPONSE_STATUS_MIN}-${import_sdk.MOCK_RESPONSE_STATUS_MAX})`),
315
315
  body: import_zod2.z.string().default("").describe("Response body string (default: empty)"),
316
- headers: import_zod2.z.record(import_zod2.z.string()).default({}).describe("Response headers (default: none)"),
316
+ headers: import_zod2.z.record(import_zod2.z.string(), import_zod2.z.string()).default({}).describe("Response headers (default: none)"),
317
317
  delay: import_zod2.z.number().int().min(import_sdk.MOCK_RESPONSE_DELAY_MIN).max(import_sdk.MOCK_RESPONSE_DELAY_MAX).optional().describe(
318
318
  `Response delay in milliseconds (${import_sdk.MOCK_RESPONSE_DELAY_MIN}-${import_sdk.MOCK_RESPONSE_DELAY_MAX}, default: none)`
319
319
  )
@@ -702,7 +702,7 @@ function registerTools(server, client) {
702
702
  {
703
703
  slug: import_zod2.z.string().describe("The endpoint slug to send to"),
704
704
  method: methodSchema,
705
- headers: import_zod2.z.record(import_zod2.z.string()).optional().describe("HTTP headers to include"),
705
+ headers: import_zod2.z.record(import_zod2.z.string(), import_zod2.z.string()).optional().describe("HTTP headers to include"),
706
706
  body: import_zod2.z.unknown().optional().describe("Request body"),
707
707
  provider: import_zod2.z.enum(import_sdk.TEMPLATE_PROVIDERS).optional().describe("Optional provider template to send with signed headers"),
708
708
  template: import_zod2.z.string().optional().describe("Provider-specific template preset"),
@@ -949,7 +949,7 @@ function registerTools(server, client) {
949
949
  {
950
950
  url: httpUrlSchema.describe("Target URL"),
951
951
  method: methodSchema,
952
- headers: import_zod2.z.record(import_zod2.z.string()).optional().describe("HTTP headers to include"),
952
+ headers: import_zod2.z.record(import_zod2.z.string(), import_zod2.z.string()).optional().describe("HTTP headers to include"),
953
953
  body: import_zod2.z.unknown().optional().describe("Request body"),
954
954
  provider: import_zod2.z.enum(import_sdk.TEMPLATE_PROVIDERS).optional().describe("Optional provider template for signing"),
955
955
  template: import_zod2.z.string().optional().describe("Provider-specific template preset"),
@@ -980,7 +980,7 @@ function registerTools(server, client) {
980
980
  {
981
981
  url: httpUrlSchema.describe("Target URL"),
982
982
  method: methodSchema,
983
- headers: import_zod2.z.record(import_zod2.z.string()).optional().describe("HTTP headers to include"),
983
+ headers: import_zod2.z.record(import_zod2.z.string(), import_zod2.z.string()).optional().describe("HTTP headers to include"),
984
984
  body: import_zod2.z.unknown().optional().describe("Request body"),
985
985
  provider: import_zod2.z.enum(import_sdk.TEMPLATE_PROVIDERS).optional().describe("Optional provider template for signing"),
986
986
  template: import_zod2.z.string().optional().describe("Provider-specific template preset"),
@@ -1117,7 +1117,7 @@ function registerTools(server, client) {
1117
1117
  }
1118
1118
 
1119
1119
  // src/index.ts
1120
- var VERSION = true ? "1.3.0" : "0.0.0-dev";
1120
+ var VERSION = true ? "1.4.1" : "0.0.0-dev";
1121
1121
  function createServer(options = {}) {
1122
1122
  const apiKey = options.apiKey ?? process.env.WHK_API_KEY;
1123
1123
  if (!apiKey) {
package/dist/index.mjs CHANGED
@@ -306,7 +306,7 @@ var responseRulesSchema = z2.array(responseRuleSchema).max(50).describe("Ordered
306
306
  var mockResponseSchema = z2.object({
307
307
  status: z2.number().int().min(MOCK_RESPONSE_STATUS_MIN).max(MOCK_RESPONSE_STATUS_MAX).describe(`HTTP status code (${MOCK_RESPONSE_STATUS_MIN}-${MOCK_RESPONSE_STATUS_MAX})`),
308
308
  body: z2.string().default("").describe("Response body string (default: empty)"),
309
- headers: z2.record(z2.string()).default({}).describe("Response headers (default: none)"),
309
+ headers: z2.record(z2.string(), z2.string()).default({}).describe("Response headers (default: none)"),
310
310
  delay: z2.number().int().min(MOCK_RESPONSE_DELAY_MIN).max(MOCK_RESPONSE_DELAY_MAX).optional().describe(
311
311
  `Response delay in milliseconds (${MOCK_RESPONSE_DELAY_MIN}-${MOCK_RESPONSE_DELAY_MAX}, default: none)`
312
312
  )
@@ -695,7 +695,7 @@ function registerTools(server, client) {
695
695
  {
696
696
  slug: z2.string().describe("The endpoint slug to send to"),
697
697
  method: methodSchema,
698
- headers: z2.record(z2.string()).optional().describe("HTTP headers to include"),
698
+ headers: z2.record(z2.string(), z2.string()).optional().describe("HTTP headers to include"),
699
699
  body: z2.unknown().optional().describe("Request body"),
700
700
  provider: z2.enum(TEMPLATE_PROVIDERS).optional().describe("Optional provider template to send with signed headers"),
701
701
  template: z2.string().optional().describe("Provider-specific template preset"),
@@ -942,7 +942,7 @@ function registerTools(server, client) {
942
942
  {
943
943
  url: httpUrlSchema.describe("Target URL"),
944
944
  method: methodSchema,
945
- headers: z2.record(z2.string()).optional().describe("HTTP headers to include"),
945
+ headers: z2.record(z2.string(), z2.string()).optional().describe("HTTP headers to include"),
946
946
  body: z2.unknown().optional().describe("Request body"),
947
947
  provider: z2.enum(TEMPLATE_PROVIDERS).optional().describe("Optional provider template for signing"),
948
948
  template: z2.string().optional().describe("Provider-specific template preset"),
@@ -973,7 +973,7 @@ function registerTools(server, client) {
973
973
  {
974
974
  url: httpUrlSchema.describe("Target URL"),
975
975
  method: methodSchema,
976
- headers: z2.record(z2.string()).optional().describe("HTTP headers to include"),
976
+ headers: z2.record(z2.string(), z2.string()).optional().describe("HTTP headers to include"),
977
977
  body: z2.unknown().optional().describe("Request body"),
978
978
  provider: z2.enum(TEMPLATE_PROVIDERS).optional().describe("Optional provider template for signing"),
979
979
  template: z2.string().optional().describe("Provider-specific template preset"),
@@ -1110,7 +1110,7 @@ function registerTools(server, client) {
1110
1110
  }
1111
1111
 
1112
1112
  // src/index.ts
1113
- var VERSION = true ? "1.3.0" : "0.0.0-dev";
1113
+ var VERSION = true ? "1.4.1" : "0.0.0-dev";
1114
1114
  function createServer(options = {}) {
1115
1115
  const apiKey = options.apiKey ?? process.env.WHK_API_KEY;
1116
1116
  if (!apiKey) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webhooks-cc/mcp",
3
- "version": "1.3.0",
3
+ "version": "1.4.1",
4
4
  "description": "MCP server for webhooks.cc — AI agent integration for webhook testing",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -19,6 +19,13 @@
19
19
  "dist",
20
20
  "README.md"
21
21
  ],
22
+ "scripts": {
23
+ "build": "tsup",
24
+ "dev": "tsup --watch",
25
+ "typecheck": "tsc --noEmit",
26
+ "test": "vitest run",
27
+ "prepublishOnly": "npm run build"
28
+ },
22
29
  "keywords": [
23
30
  "webhook",
24
31
  "mcp",
@@ -37,19 +44,13 @@
37
44
  "homepage": "https://webhooks.cc",
38
45
  "dependencies": {
39
46
  "@modelcontextprotocol/sdk": "^1.29.0",
40
- "zod": "^3.25.76",
41
- "@webhooks-cc/sdk": "1.4.0"
47
+ "@webhooks-cc/sdk": "workspace:*",
48
+ "zod": "^4.4.3"
42
49
  },
43
50
  "devDependencies": {
44
- "@types/node": "^24.12.2",
51
+ "@types/node": "^25.9.1",
45
52
  "tsup": "^8.5.1",
46
- "typescript": "^6.0.2",
47
- "vitest": "^4.1.4"
48
- },
49
- "scripts": {
50
- "build": "tsup",
51
- "dev": "tsup --watch",
52
- "typecheck": "tsc --noEmit",
53
- "test": "vitest run"
53
+ "typescript": "^6.0.3",
54
+ "vitest": "^4.1.7"
54
55
  }
55
- }
56
+ }