ggcheckout-mcp 0.1.0 → 0.1.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 +51 -11
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -19,13 +19,13 @@ The GG Checkout MCP server enables AI agents (like Claude Desktop) to interact w
|
|
|
19
19
|
No installation required! Just configure your MCP client with:
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
|
-
npx
|
|
22
|
+
npx ggcheckout-mcp
|
|
23
23
|
```
|
|
24
24
|
|
|
25
25
|
### Option 2: Global Install
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
|
-
npm install -g
|
|
28
|
+
npm install -g ggcheckout-mcp
|
|
29
29
|
```
|
|
30
30
|
|
|
31
31
|
## Getting Your API Key
|
|
@@ -52,7 +52,7 @@ Add to your Claude Desktop configuration file:
|
|
|
52
52
|
"mcpServers": {
|
|
53
53
|
"ggcheckout": {
|
|
54
54
|
"command": "npx",
|
|
55
|
-
"args": ["
|
|
55
|
+
"args": ["ggcheckout-mcp"],
|
|
56
56
|
"env": {
|
|
57
57
|
"GGCHECKOUT_API_KEY": "ggck_live_your_api_key_here"
|
|
58
58
|
}
|
|
@@ -82,6 +82,7 @@ List all your products/deliveries.
|
|
|
82
82
|
**Example prompt:** "Show me all my products"
|
|
83
83
|
|
|
84
84
|
**Response:**
|
|
85
|
+
|
|
85
86
|
```json
|
|
86
87
|
{
|
|
87
88
|
"products": [
|
|
@@ -102,6 +103,7 @@ List all your products/deliveries.
|
|
|
102
103
|
Get details of a specific product.
|
|
103
104
|
|
|
104
105
|
**Parameters:**
|
|
106
|
+
|
|
105
107
|
- `productId` (string): Product ID
|
|
106
108
|
|
|
107
109
|
**Example prompt:** "Get details of product abc123"
|
|
@@ -111,6 +113,7 @@ Get details of a specific product.
|
|
|
111
113
|
Create a new product/delivery.
|
|
112
114
|
|
|
113
115
|
**Parameters:**
|
|
116
|
+
|
|
114
117
|
- `title` (string): Product title
|
|
115
118
|
- `url` (string): Product URL
|
|
116
119
|
- `imageUrl` (string, optional): Product image URL
|
|
@@ -119,10 +122,12 @@ Create a new product/delivery.
|
|
|
119
122
|
- `price` (number|string): Price in cents (1990) or Brazilian format ("19,90")
|
|
120
123
|
|
|
121
124
|
**Example prompts:**
|
|
125
|
+
|
|
122
126
|
- "Create a product called 'React Course' priced at R$99.00"
|
|
123
127
|
- "Add a new product: title 'Node.js Guide', price 4990 cents, url https://example.com"
|
|
124
128
|
|
|
125
129
|
**Example:**
|
|
130
|
+
|
|
126
131
|
```json
|
|
127
132
|
{
|
|
128
133
|
"title": "React Course",
|
|
@@ -139,6 +144,7 @@ Create a new product/delivery.
|
|
|
139
144
|
Update an existing product. Only provide fields you want to change.
|
|
140
145
|
|
|
141
146
|
**Parameters:**
|
|
147
|
+
|
|
142
148
|
- `productId` (string): Product ID
|
|
143
149
|
- `title` (string, optional): New title
|
|
144
150
|
- `url` (string, optional): New URL
|
|
@@ -154,6 +160,7 @@ Update an existing product. Only provide fields you want to change.
|
|
|
154
160
|
Delete a product by ID.
|
|
155
161
|
|
|
156
162
|
**Parameters:**
|
|
163
|
+
|
|
157
164
|
- `productId` (string): Product ID
|
|
158
165
|
|
|
159
166
|
**Example prompt:** "Delete product abc123"
|
|
@@ -169,6 +176,7 @@ Get the business ID of the authenticated user. This tool automatically retrieves
|
|
|
169
176
|
**Example prompt:** "What is my business ID?"
|
|
170
177
|
|
|
171
178
|
**Response:**
|
|
179
|
+
|
|
172
180
|
```json
|
|
173
181
|
{
|
|
174
182
|
"businessId": "CKdAlYZpHhSKrFnA6ljGewe16Go1"
|
|
@@ -176,6 +184,7 @@ Get the business ID of the authenticated user. This tool automatically retrieves
|
|
|
176
184
|
```
|
|
177
185
|
|
|
178
186
|
**Pro Tip:** Once you have your businessId, you can use it in natural language queries like:
|
|
187
|
+
|
|
179
188
|
- "Show me all payments for business CKdAlYZpHhSKrFnA6ljGewe16Go1"
|
|
180
189
|
- Or simply: "Get my business ID, then show me all payments"
|
|
181
190
|
|
|
@@ -186,11 +195,13 @@ Get the business ID of the authenticated user. This tool automatically retrieves
|
|
|
186
195
|
List all payments for a specific business.
|
|
187
196
|
|
|
188
197
|
**Parameters:**
|
|
198
|
+
|
|
189
199
|
- `businessId` (string): Business ID to list payments for
|
|
190
200
|
|
|
191
201
|
**Example prompt:** "Show me all payments for business xyz789"
|
|
192
202
|
|
|
193
203
|
**Response:**
|
|
204
|
+
|
|
194
205
|
```json
|
|
195
206
|
{
|
|
196
207
|
"payments": [
|
|
@@ -198,7 +209,7 @@ List all payments for a specific business.
|
|
|
198
209
|
"id": "txn_123456",
|
|
199
210
|
"businessId": "xyz789",
|
|
200
211
|
"email": "customer@example.com",
|
|
201
|
-
"value": 99.
|
|
212
|
+
"value": 99.9,
|
|
202
213
|
"productId": "prod_abc",
|
|
203
214
|
"titleOffer": "React Course",
|
|
204
215
|
"status": "paid",
|
|
@@ -215,6 +226,7 @@ Get paginated payments with advanced filtering options.
|
|
|
215
226
|
**Important:** Status filtering is done **client-side** after fetching data from the API. This follows the same pattern as the frontend application to avoid requiring Firestore composite indexes.
|
|
216
227
|
|
|
217
228
|
**Parameters:**
|
|
229
|
+
|
|
218
230
|
- `businessId` (string): Business ID
|
|
219
231
|
- `pageSize` (number, optional): Items per page (default: 10)
|
|
220
232
|
- `dateFrom` (string, optional): Filter from date (ISO format)
|
|
@@ -225,12 +237,14 @@ Get paginated payments with advanced filtering options.
|
|
|
225
237
|
- `countOnly` (boolean, optional): Return only total count
|
|
226
238
|
|
|
227
239
|
**Example prompts:**
|
|
240
|
+
|
|
228
241
|
- "Get the first 20 payments for business xyz789"
|
|
229
242
|
- "Show me all paid payments from last month for business xyz789"
|
|
230
243
|
- "Search for payments with email john@example.com in business xyz789"
|
|
231
244
|
- "How many pending payments does business xyz789 have?"
|
|
232
245
|
|
|
233
246
|
**Response:**
|
|
247
|
+
|
|
234
248
|
```json
|
|
235
249
|
{
|
|
236
250
|
"payments": [...],
|
|
@@ -246,12 +260,14 @@ Get details of a specific payment by ID.
|
|
|
246
260
|
**Note:** This tool fetches all payments from the business and filters client-side to find the specific payment. This approach avoids Firestore composite index requirements that would be needed for direct search queries.
|
|
247
261
|
|
|
248
262
|
**Parameters:**
|
|
263
|
+
|
|
249
264
|
- `businessId` (string): Business ID
|
|
250
265
|
- `paymentId` (string): Payment ID (transaction ID)
|
|
251
266
|
|
|
252
267
|
**Example prompt:** "Get payment cmgjucuk201ztcgsya2w9bo53 from my business"
|
|
253
268
|
|
|
254
269
|
**Response:**
|
|
270
|
+
|
|
255
271
|
```json
|
|
256
272
|
{
|
|
257
273
|
"payment": {
|
|
@@ -261,7 +277,7 @@ Get details of a specific payment by ID.
|
|
|
261
277
|
"email": "john@example.com",
|
|
262
278
|
"phone": "+5511999999999",
|
|
263
279
|
"cpf": "12345678900",
|
|
264
|
-
"value": 99.
|
|
280
|
+
"value": 99.9,
|
|
265
281
|
"productId": "prod_abc",
|
|
266
282
|
"titleOffer": "React Course",
|
|
267
283
|
"status": "paid",
|
|
@@ -283,6 +299,7 @@ List all checkout pages for the authenticated user.
|
|
|
283
299
|
**Example prompt:** "Show me all my checkouts" or "List my checkout pages"
|
|
284
300
|
|
|
285
301
|
**Response:**
|
|
302
|
+
|
|
286
303
|
```json
|
|
287
304
|
{
|
|
288
305
|
"checkouts": [
|
|
@@ -290,7 +307,7 @@ List all checkout pages for the authenticated user.
|
|
|
290
307
|
"uid": "checkout123",
|
|
291
308
|
"id": "my-product-checkout",
|
|
292
309
|
"title": "React Course Checkout",
|
|
293
|
-
"price": 99.
|
|
310
|
+
"price": 99.9,
|
|
294
311
|
"published": true,
|
|
295
312
|
"url": "https://checkout.ggcheckout.com/my-product-checkout"
|
|
296
313
|
}
|
|
@@ -303,15 +320,18 @@ List all checkout pages for the authenticated user.
|
|
|
303
320
|
Get details of a specific checkout page.
|
|
304
321
|
|
|
305
322
|
**Parameters:**
|
|
323
|
+
|
|
306
324
|
- `checkoutId` (string): Checkout document ID (uid) - **Note: Use the `uid` returned from `create_checkout`, not the custom `id` field**
|
|
307
325
|
|
|
308
326
|
**Example prompt:** "Get checkout details for checkout123"
|
|
309
327
|
|
|
310
|
-
**Important:**
|
|
328
|
+
**Important:**
|
|
329
|
+
|
|
311
330
|
- `uid` = Firestore document ID (use this for get/update/delete operations)
|
|
312
331
|
- `id` = Custom checkout slug/identifier (user-friendly name)
|
|
313
332
|
|
|
314
333
|
**Response:**
|
|
334
|
+
|
|
315
335
|
```json
|
|
316
336
|
{
|
|
317
337
|
"checkout": {
|
|
@@ -332,6 +352,7 @@ Get details of a specific checkout page.
|
|
|
332
352
|
Create a new checkout page.
|
|
333
353
|
|
|
334
354
|
**Required Parameters:**
|
|
355
|
+
|
|
335
356
|
- `title` (string): Checkout page title
|
|
336
357
|
- `id` (string): Unique checkout slug/identifier (user-friendly name, e.g., "my-product-checkout")
|
|
337
358
|
- `price` (number): Price in Brazilian Reais (e.g., 99.90)
|
|
@@ -339,6 +360,7 @@ Create a new checkout page.
|
|
|
339
360
|
- `checkout` (object): Checkout page configuration
|
|
340
361
|
|
|
341
362
|
**Optional Parameters:**
|
|
363
|
+
|
|
342
364
|
- `url` (string): Checkout URL
|
|
343
365
|
- `bannerUrl` (string): Banner image URL
|
|
344
366
|
- `image` (string): Product image URL
|
|
@@ -353,6 +375,7 @@ Create a new checkout page.
|
|
|
353
375
|
**Example prompt:** "Create a checkout page for my React Course priced at R$99.90"
|
|
354
376
|
|
|
355
377
|
**Response:**
|
|
378
|
+
|
|
356
379
|
```json
|
|
357
380
|
{
|
|
358
381
|
"success": true,
|
|
@@ -361,7 +384,7 @@ Create a new checkout page.
|
|
|
361
384
|
"uid": "AbC123XyZ456",
|
|
362
385
|
"id": "my-product-checkout",
|
|
363
386
|
"title": "React Course Checkout",
|
|
364
|
-
"price": 99.
|
|
387
|
+
"price": 99.9,
|
|
365
388
|
"fields": {
|
|
366
389
|
"haveName": false,
|
|
367
390
|
"havePhone": false,
|
|
@@ -378,18 +401,20 @@ Create a new checkout page.
|
|
|
378
401
|
Update an existing checkout page. Only provide fields you want to change.
|
|
379
402
|
|
|
380
403
|
**Parameters:**
|
|
404
|
+
|
|
381
405
|
- `checkoutId` (string): Checkout document ID (uid) - **Use the `uid` from create_checkout response**
|
|
382
406
|
- All other parameters are optional (same as create_checkout)
|
|
383
407
|
|
|
384
408
|
**Example prompt:** "Update checkout AbC123XyZ456 price to R$79.90"
|
|
385
409
|
|
|
386
410
|
**Response:**
|
|
411
|
+
|
|
387
412
|
```json
|
|
388
413
|
{
|
|
389
414
|
"success": true,
|
|
390
415
|
"checkout": {
|
|
391
416
|
"uid": "checkout123",
|
|
392
|
-
"price": 79.
|
|
417
|
+
"price": 79.9
|
|
393
418
|
}
|
|
394
419
|
}
|
|
395
420
|
```
|
|
@@ -399,11 +424,13 @@ Update an existing checkout page. Only provide fields you want to change.
|
|
|
399
424
|
Delete a checkout page by ID.
|
|
400
425
|
|
|
401
426
|
**Parameters:**
|
|
427
|
+
|
|
402
428
|
- `checkoutId` (string): Checkout document ID (uid) - **Use the `uid` from create_checkout response**
|
|
403
429
|
|
|
404
430
|
**Example prompt:** "Delete checkout AbC123XyZ456"
|
|
405
431
|
|
|
406
432
|
**Response:**
|
|
433
|
+
|
|
407
434
|
```json
|
|
408
435
|
{
|
|
409
436
|
"success": true,
|
|
@@ -422,6 +449,7 @@ List all webhooks for the authenticated user.
|
|
|
422
449
|
**Example prompt:** "Show me all my webhooks" or "List my webhooks"
|
|
423
450
|
|
|
424
451
|
**Response:**
|
|
452
|
+
|
|
425
453
|
```json
|
|
426
454
|
{
|
|
427
455
|
"webhooks": [
|
|
@@ -445,11 +473,13 @@ List all webhooks for the authenticated user.
|
|
|
445
473
|
Get details of a specific webhook by ID.
|
|
446
474
|
|
|
447
475
|
**Parameters:**
|
|
476
|
+
|
|
448
477
|
- `webhookId` (string): Webhook ID
|
|
449
478
|
|
|
450
479
|
**Example prompt:** "Get webhook details for webhook_abc123"
|
|
451
480
|
|
|
452
481
|
**Response:**
|
|
482
|
+
|
|
453
483
|
```json
|
|
454
484
|
{
|
|
455
485
|
"webhook": {
|
|
@@ -471,15 +501,18 @@ Get details of a specific webhook by ID.
|
|
|
471
501
|
Create a new webhook for payment notifications.
|
|
472
502
|
|
|
473
503
|
**Required Parameters:**
|
|
504
|
+
|
|
474
505
|
- `name` (string): Webhook name/description
|
|
475
506
|
- `url` (string): Webhook URL endpoint to receive notifications
|
|
476
507
|
- `events` (array): Events to trigger this webhook
|
|
477
508
|
|
|
478
509
|
**Optional Parameters:**
|
|
510
|
+
|
|
479
511
|
- `secret` (string): Secret key for webhook signature verification
|
|
480
512
|
- `productsId` (array): Product IDs to filter notifications (leave empty for all products)
|
|
481
513
|
|
|
482
514
|
**Available Events:**
|
|
515
|
+
|
|
483
516
|
- `payment.created` - New payment initiated
|
|
484
517
|
- `payment.paid` - Payment successfully completed
|
|
485
518
|
- `payment.pending` - Payment pending confirmation
|
|
@@ -489,6 +522,7 @@ Create a new webhook for payment notifications.
|
|
|
489
522
|
**Example prompt:** "Create a webhook for payment notifications at https://myapp.com/webhook"
|
|
490
523
|
|
|
491
524
|
**Response:**
|
|
525
|
+
|
|
492
526
|
```json
|
|
493
527
|
{
|
|
494
528
|
"success": true,
|
|
@@ -509,6 +543,7 @@ Create a new webhook for payment notifications.
|
|
|
509
543
|
Update an existing webhook. Only provide fields you want to update.
|
|
510
544
|
|
|
511
545
|
**Parameters:**
|
|
546
|
+
|
|
512
547
|
- `webhookId` (string): Webhook ID
|
|
513
548
|
- `name` (string, optional): New webhook name
|
|
514
549
|
- `url` (string, optional): New webhook URL
|
|
@@ -519,6 +554,7 @@ Update an existing webhook. Only provide fields you want to update.
|
|
|
519
554
|
**Example prompt:** "Update webhook webhook_abc123 to listen for payment.created events"
|
|
520
555
|
|
|
521
556
|
**Response:**
|
|
557
|
+
|
|
522
558
|
```json
|
|
523
559
|
{
|
|
524
560
|
"success": true,
|
|
@@ -535,11 +571,13 @@ Update an existing webhook. Only provide fields you want to update.
|
|
|
535
571
|
Delete a webhook by ID.
|
|
536
572
|
|
|
537
573
|
**Parameters:**
|
|
574
|
+
|
|
538
575
|
- `webhookId` (string): Webhook ID
|
|
539
576
|
|
|
540
577
|
**Example prompt:** "Delete webhook webhook_abc123"
|
|
541
578
|
|
|
542
579
|
**Response:**
|
|
580
|
+
|
|
543
581
|
```json
|
|
544
582
|
{
|
|
545
583
|
"success": true,
|
|
@@ -593,19 +631,21 @@ For local development and testing against your localhost backend:
|
|
|
593
631
|
|
|
594
632
|
```typescript
|
|
595
633
|
// Change this:
|
|
596
|
-
const API_URL =
|
|
634
|
+
const API_URL = "https://www.ggcheckout.com";
|
|
597
635
|
|
|
598
636
|
// To this:
|
|
599
|
-
const API_URL = process.env.GGCHECKOUT_API_URL ||
|
|
637
|
+
const API_URL = process.env.GGCHECKOUT_API_URL || "http://localhost:3000";
|
|
600
638
|
```
|
|
601
639
|
|
|
602
640
|
4. Set your `.env` file:
|
|
641
|
+
|
|
603
642
|
```bash
|
|
604
643
|
GGCHECKOUT_API_KEY=ggck_live_your_api_key_here
|
|
605
644
|
GGCHECKOUT_API_URL=http://localhost:3000
|
|
606
645
|
```
|
|
607
646
|
|
|
608
647
|
5. Build and run:
|
|
648
|
+
|
|
609
649
|
```bash
|
|
610
650
|
npm install
|
|
611
651
|
npm run build
|