mcp-zenskar 1.1.7 → 1.1.8

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/mcp-config.json +81 -121
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-zenskar",
3
- "version": "1.1.7",
3
+ "version": "1.1.8",
4
4
  "description": "Model Context Protocol (MCP) server for Zenskar API - customer management, invoicing, and billing operations",
5
5
  "main": "src/server.js",
6
6
  "bin": {
@@ -72,13 +72,6 @@
72
72
  "required": false,
73
73
  "position": "query"
74
74
  },
75
- {
76
- "name": "id__ilike",
77
- "description": "Case-insensitive partial match for customer ID.",
78
- "type": "string",
79
- "required": false,
80
- "position": "query"
81
- },
82
75
  {
83
76
  "name": "id__in",
84
77
  "description": "Filter by a comma-separated list of customer IDs.",
@@ -279,8 +272,8 @@
279
272
  "position": "query"
280
273
  },
281
274
  {
282
- "name": "customer_external_id",
283
- "description": "Filter invoices by a customer's external ID.",
275
+ "name": "customer__external_id",
276
+ "description": "Filter invoices by a customer's external ID (nested filter).",
284
277
  "type": "string",
285
278
  "required": false,
286
279
  "position": "query"
@@ -428,9 +421,9 @@
428
421
  "position": "path"
429
422
  },
430
423
  {
431
- "name": "customer_id",
432
- "description": "The ID of the customer associated with the invoice (optional).",
433
- "type": "string",
424
+ "name": "include_line_items",
425
+ "description": "Whether to include line items in the response.",
426
+ "type": "boolean",
434
427
  "required": false,
435
428
  "position": "query"
436
429
  }
@@ -502,7 +495,7 @@
502
495
  "position": "path"
503
496
  },
504
497
  {
505
- "name": "invoiceJsonKey",
498
+ "name": "invoice_json_key",
506
499
  "description": "Optional key for invoice JSON.",
507
500
  "type": "string",
508
501
  "required": false,
@@ -1002,22 +995,6 @@
1002
995
  "required": true,
1003
996
  "position": "body"
1004
997
  },
1005
- {
1006
- "name": "connector",
1007
- "description": "Connector that owns this raw metric (e.g., push_to_zenskar).",
1008
- "type": "string",
1009
- "required": true,
1010
- "position": "body",
1011
- "default": "push_to_zenskar"
1012
- },
1013
- {
1014
- "name": "api_type",
1015
- "description": "API type for ingestion (typically PUSH).",
1016
- "type": "string",
1017
- "required": false,
1018
- "position": "body",
1019
- "default": "PUSH"
1020
- },
1021
998
  {
1022
999
  "name": "dataschema",
1023
1000
  "description": "Data schema of raw metric (JSON object). Structure: {\"data\": {custom_fields}, \"timestamp\": \"DateTime64\", \"customer_id\": \"String\"}. The 'data' map must include only valid ClickHouse types (String, Int64, Float64, Date32, DateTime64, UUID, Bool); use 'Bool' instead of 'Boolean'.",
@@ -1472,8 +1449,7 @@
1472
1449
  "cancelText": "Cancel",
1473
1450
  "sensitiveFields": [
1474
1451
  "prompt_name",
1475
- "prompt_text",
1476
- "document_id"
1452
+ "prompt_text"
1477
1453
  ]
1478
1454
  },
1479
1455
  "args": [
@@ -1491,13 +1467,6 @@
1491
1467
  "required": true,
1492
1468
  "position": "body"
1493
1469
  },
1494
- {
1495
- "name": "document_id",
1496
- "description": "The ID of the contract document this prompt is for.",
1497
- "type": "string",
1498
- "required": true,
1499
- "position": "body"
1500
- },
1501
1470
  {
1502
1471
  "name": "prompt_schema",
1503
1472
  "description": "Optional schema for the prompt (e.g., 'billing_schema'). Can be null.",
@@ -1553,20 +1522,6 @@
1553
1522
  "required": false,
1554
1523
  "position": "query"
1555
1524
  },
1556
- {
1557
- "name": "id__ilike",
1558
- "description": "Contract ID (case-insensitive partial match).",
1559
- "type": "string",
1560
- "required": false,
1561
- "position": "query"
1562
- },
1563
- {
1564
- "name": "id__like",
1565
- "description": "Contract ID (case-sensitive partial match).",
1566
- "type": "string",
1567
- "required": false,
1568
- "position": "query"
1569
- },
1570
1525
  {
1571
1526
  "name": "id__in",
1572
1527
  "description": "Filter by a comma-separated list of Contract IDs.",
@@ -2449,7 +2404,6 @@
2449
2404
  "draft",
2450
2405
  "active",
2451
2406
  "paused",
2452
- "expired",
2453
2407
  "disputed"
2454
2408
  ]
2455
2409
  },
@@ -2491,15 +2445,15 @@
2491
2445
  },
2492
2446
  {
2493
2447
  "name": "renewal_policy",
2494
- "description": "Contract renewal policy (defaults to 'do_not_renew').",
2448
+ "description": "Contract renewal policy. Currently only 'do_not_renew' is supported at runtime.",
2495
2449
  "type": "string",
2496
2450
  "required": false,
2497
2451
  "position": "body",
2498
2452
  "default": "do_not_renew",
2499
2453
  "enum": [
2500
- "do_not_renew",
2501
- "auto_renew",
2502
- "manual"
2454
+ "renew_with_default_contract",
2455
+ "renew_with_existing",
2456
+ "do_not_renew"
2503
2457
  ]
2504
2458
  },
2505
2459
  {
@@ -2512,9 +2466,9 @@
2512
2466
  },
2513
2467
  {
2514
2468
  "name": "phases",
2515
- "description": "Array of contract phases with pricing details. Each phase includes name, start_date, end_date, phase_type, and pricings array.",
2469
+ "description": "Array of contract phases with pricing details. Each phase includes name, start_date, end_date, phase_type, and pricings array. Defaults to empty array if omitted.",
2516
2470
  "type": "array",
2517
- "required": true,
2471
+ "required": false,
2518
2472
  "position": "body"
2519
2473
  },
2520
2474
  {
@@ -2586,7 +2540,7 @@
2586
2540
  },
2587
2541
  {
2588
2542
  "name": "status",
2589
- "description": "Contract status: draft, active, paused, expired, or disputed.",
2543
+ "description": "Contract status: draft, active, paused, or disputed. Cannot set to 'expired' via update.",
2590
2544
  "type": "string",
2591
2545
  "required": true,
2592
2546
  "position": "body",
@@ -2594,7 +2548,6 @@
2594
2548
  "draft",
2595
2549
  "active",
2596
2550
  "paused",
2597
- "expired",
2598
2551
  "disputed"
2599
2552
  ]
2600
2553
  },
@@ -2656,9 +2609,9 @@
2656
2609
  },
2657
2610
  {
2658
2611
  "name": "phases",
2659
- "description": "REQUIRED — Array of contract phases. Without this the API returns 500. Copy phases from getContractById response. Each phase needs at minimum: name, start_date, end_date. Include pricings array if the phase has pricing.",
2612
+ "description": "Array of contract phases. Each phase needs at minimum: name, start_date, end_date. Include pricings array if the phase has pricing. Defaults to empty array if omitted.",
2660
2613
  "type": "array",
2661
- "required": true,
2614
+ "required": false,
2662
2615
  "position": "body"
2663
2616
  },
2664
2617
  {
@@ -3423,7 +3376,7 @@
3423
3376
  "position": "path"
3424
3377
  },
3425
3378
  {
3426
- "name": "amount",
3379
+ "name": "refund_amount",
3427
3380
  "description": "Amount to refund.",
3428
3381
  "type": "number",
3429
3382
  "required": true,
@@ -3497,15 +3450,29 @@
3497
3450
  "position": "body"
3498
3451
  },
3499
3452
  {
3500
- "name": "payment_method",
3501
- "description": "Updated payment method.",
3453
+ "name": "payment_method_details",
3454
+ "description": "Updated payment method details object.",
3455
+ "type": "object",
3456
+ "required": false,
3457
+ "position": "body"
3458
+ },
3459
+ {
3460
+ "name": "payment_parts",
3461
+ "description": "Updated invoice allocations. Array of {invoice_id, amount}.",
3462
+ "type": "array",
3463
+ "required": false,
3464
+ "position": "body"
3465
+ },
3466
+ {
3467
+ "name": "external_id",
3468
+ "description": "Updated external reference ID.",
3502
3469
  "type": "string",
3503
3470
  "required": false,
3504
3471
  "position": "body"
3505
3472
  },
3506
3473
  {
3507
- "name": "currency_code",
3508
- "description": "Updated currency code.",
3474
+ "name": "timestamp",
3475
+ "description": "Updated payment timestamp in ISO 8601 format.",
3509
3476
  "type": "string",
3510
3477
  "required": false,
3511
3478
  "position": "body"
@@ -3662,8 +3629,8 @@
3662
3629
  "position": "query"
3663
3630
  },
3664
3631
  {
3665
- "name": "search",
3666
- "description": "Search by product name.",
3632
+ "name": "name__ilike",
3633
+ "description": "Case-insensitive partial match for product name.",
3667
3634
  "type": "string",
3668
3635
  "required": false,
3669
3636
  "position": "query"
@@ -3737,8 +3704,8 @@
3737
3704
  "position": "query"
3738
3705
  },
3739
3706
  {
3740
- "name": "search",
3741
- "description": "Search query to filter accounts by name or other fields. Format: 'field=value'.",
3707
+ "name": "name__ilike",
3708
+ "description": "Case-insensitive partial match for account name.",
3742
3709
  "type": "string",
3743
3710
  "required": false,
3744
3711
  "position": "query"
@@ -3766,13 +3733,6 @@
3766
3733
  "required": true,
3767
3734
  "position": "body"
3768
3735
  },
3769
- {
3770
- "name": "account_code",
3771
- "description": "Unique account code/number.",
3772
- "type": "string",
3773
- "required": false,
3774
- "position": "body"
3775
- },
3776
3736
  {
3777
3737
  "name": "account_category",
3778
3738
  "description": "Category of account. Valid values: 'Assets', 'Liabilities', 'Equity', 'Income', 'Expenses'.",
@@ -3788,9 +3748,9 @@
3788
3748
  "position": "body"
3789
3749
  },
3790
3750
  {
3791
- "name": "parent_account_id",
3792
- "description": "ID of the parent account for hierarchical structure.",
3793
- "type": "string",
3751
+ "name": "custom_data",
3752
+ "description": "Custom data object for the account.",
3753
+ "type": "object",
3794
3754
  "required": false,
3795
3755
  "position": "body"
3796
3756
  }
@@ -3825,8 +3785,8 @@
3825
3785
  "position": "query"
3826
3786
  },
3827
3787
  {
3828
- "name": "search",
3829
- "description": "Search query to filter journal entries. Format: 'field=value'.",
3788
+ "name": "search_query",
3789
+ "description": "Search query to filter journal entries.",
3830
3790
  "type": "string",
3831
3791
  "required": false,
3832
3792
  "position": "query"
@@ -3944,8 +3904,8 @@
3944
3904
  "position": "query"
3945
3905
  },
3946
3906
  {
3947
- "name": "search",
3948
- "description": "Search query to filter journal lines. Format: 'field=value'.",
3907
+ "name": "search_query",
3908
+ "description": "Search query to filter journal lines.",
3949
3909
  "type": "string",
3950
3910
  "required": false,
3951
3911
  "position": "query"
@@ -3967,8 +3927,15 @@
3967
3927
  "description": "Retrieve the balance sheet report showing assets, liabilities, and equity.",
3968
3928
  "args": [
3969
3929
  {
3970
- "name": "as_of_date",
3971
- "description": "Date for the balance sheet snapshot (YYYY-MM-DD). Defaults to today.",
3930
+ "name": "start_date",
3931
+ "description": "Start date for the balance sheet period (YYYY-MM-DD).",
3932
+ "type": "string",
3933
+ "required": false,
3934
+ "position": "query"
3935
+ },
3936
+ {
3937
+ "name": "end_date",
3938
+ "description": "End date for the balance sheet period (YYYY-MM-DD). Defaults to today.",
3972
3939
  "type": "string",
3973
3940
  "required": false,
3974
3941
  "position": "query"
@@ -4027,7 +3994,7 @@
4027
3994
  "position": "path"
4028
3995
  },
4029
3996
  {
4030
- "name": "as_of_date",
3997
+ "name": "as_of",
4031
3998
  "description": "Date for the balance snapshot (YYYY-MM-DD).",
4032
3999
  "type": "string",
4033
4000
  "required": false,
@@ -4072,7 +4039,7 @@
4072
4039
  },
4073
4040
  {
4074
4041
  "name": "type",
4075
- "description": "Product type. Use 'product' for standard products, 'service' for services.",
4042
+ "description": "Product type. Valid values: 'product' (standard product) or 'group' (product group).",
4076
4043
  "type": "string",
4077
4044
  "required": true,
4078
4045
  "position": "body"
@@ -4225,7 +4192,7 @@
4225
4192
  },
4226
4193
  {
4227
4194
  "name": "pricing_data",
4228
- "description": "Pricing data object (required). Must include 'pricing_type' discriminator. Supported types: flat_fee: {pricing_type:'flat_fee', unit_amount:10000} (amount in cents). per_unit: {pricing_type:'per_unit', unit_amount:500}. tiered: {pricing_type:'tiered', tiers:[{from:0, to:100, unit_amount:1000}, {from:100, to:null, unit_amount:500}]}. volume: {pricing_type:'volume', tiers:[{from:0, to:100, unit_amount:1000}, {from:100, to:null, unit_amount:500}]}. percentage: {pricing_type:'percentage', percentage:5.0}. package: {pricing_type:'package', package_size:10, unit_amount:5000}. staircase/step: {pricing_type:'step', tiers:[...]}. matrix: {pricing_type:'matrix', dimensions:[...], values:[...]}.",
4195
+ "description": "Pricing data object (required). Must include 'pricing_type' discriminator. Supported types: flat_fee: {pricing_type:'flat_fee', unit_amount:10000}. per_unit: {pricing_type:'per_unit', unit_amount:500}. tiered: {pricing_type:'tiered', unit_amount:[1000,500], up_to:[100,null]}. volume: {pricing_type:'volume', unit_amount:[1000,500], up_to:[100,null]}. percent: {pricing_type:'percent', percentage:5.0}. package: {pricing_type:'package', package_size:10, unit_amount:5000}. step: {pricing_type:'step', unit_amount:[...], up_to:[...]}. matrix: {pricing_type:'matrix', dimensions:[...], values:[...]}.",
4229
4196
  "type": "object",
4230
4197
  "required": true,
4231
4198
  "position": "body"
@@ -4282,8 +4249,15 @@
4282
4249
  "position": "query"
4283
4250
  },
4284
4251
  {
4285
- "name": "search",
4286
- "description": "Search query to filter plans. Format: 'field=value'.",
4252
+ "name": "name__ilike",
4253
+ "description": "Case-insensitive partial match for plan name.",
4254
+ "type": "string",
4255
+ "required": false,
4256
+ "position": "query"
4257
+ },
4258
+ {
4259
+ "name": "status",
4260
+ "description": "Filter by plan status. Valid values: draft, active, archived.",
4287
4261
  "type": "string",
4288
4262
  "required": false,
4289
4263
  "position": "query"
@@ -4445,9 +4419,9 @@
4445
4419
  },
4446
4420
  {
4447
4421
  "name": "end_date",
4448
- "description": "End date for the estimate (YYYY-MM-DD).",
4422
+ "description": "End date for the estimate (YYYY-MM-DD). Optional — calculated from plan duration if omitted.",
4449
4423
  "type": "string",
4450
- "required": true,
4424
+ "required": false,
4451
4425
  "position": "body"
4452
4426
  }
4453
4427
  ],
@@ -4467,8 +4441,8 @@
4467
4441
  "description": "Retrieve a list of custom attribute definitions configured for the organization.",
4468
4442
  "args": [
4469
4443
  {
4470
- "name": "entity_type",
4471
- "description": "Filter by entity type (e.g., 'customer', 'contract', 'invoice', 'product').",
4444
+ "name": "module",
4445
+ "description": "Filter by module. Valid values: 'customers', 'contracts', 'invoices', 'payments', 'products', 'plans'.",
4472
4446
  "type": "string",
4473
4447
  "required": false,
4474
4448
  "position": "query"
@@ -4512,7 +4486,7 @@
4512
4486
  },
4513
4487
  {
4514
4488
  "name": "data_type",
4515
- "description": "Data type of the attribute (e.g., 'string', 'number', 'boolean', 'date', 'enum').",
4489
+ "description": "Data type of the attribute. Valid values: 'STRING', 'INTEGER', 'FLOAT', 'BOOLEAN', 'LIST_STRING', 'ENUM', 'JSON', 'DATE'.",
4516
4490
  "type": "string",
4517
4491
  "required": true,
4518
4492
  "position": "body"
@@ -4584,23 +4558,9 @@
4584
4558
  "position": "body"
4585
4559
  },
4586
4560
  {
4587
- "name": "tax_code",
4588
- "description": "Tax code identifier.",
4589
- "type": "string",
4590
- "required": false,
4591
- "position": "body"
4592
- },
4593
- {
4594
- "name": "description",
4595
- "description": "Description of the tax category.",
4596
- "type": "string",
4597
- "required": false,
4598
- "position": "body"
4599
- },
4600
- {
4601
- "name": "rate",
4602
- "description": "Tax rate as a decimal (e.g., 0.1 for 10%).",
4603
- "type": "number",
4561
+ "name": "external_codes",
4562
+ "description": "Array of external tax code mappings (e.g., [{ \"provider\": \"avalara\", \"code\": \"P0000000\" }]).",
4563
+ "type": "array",
4604
4564
  "required": false,
4605
4565
  "position": "body"
4606
4566
  }
@@ -4878,9 +4838,9 @@
4878
4838
  "position": "body"
4879
4839
  },
4880
4840
  {
4881
- "name": "tax_id",
4882
- "description": "Updated tax ID.",
4883
- "type": "string",
4841
+ "name": "tax_config",
4842
+ "description": "Tax configuration object (e.g., { \"tax_id\": \"...\", \"tax_provider\": \"...\" }).",
4843
+ "type": "object",
4884
4844
  "required": false,
4885
4845
  "position": "body"
4886
4846
  },
@@ -5161,14 +5121,14 @@
5161
5121
  "position": "body"
5162
5122
  },
5163
5123
  {
5164
- "name": "gateway",
5165
- "description": "Payment gateway name (e.g., 'stripe').",
5124
+ "name": "connector",
5125
+ "description": "Payment connector name (e.g., 'stripe').",
5166
5126
  "type": "string",
5167
5127
  "required": false,
5168
5128
  "position": "body"
5169
5129
  },
5170
5130
  {
5171
- "name": "is_default",
5131
+ "name": "set_as_default",
5172
5132
  "description": "Whether to set as the default payment method.",
5173
5133
  "type": "boolean",
5174
5134
  "required": false,