@flexprice/mcp-server 2.0.1 → 2.0.3

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 (119) hide show
  1. package/bin/mcp-server.js +374 -203
  2. package/bin/mcp-server.js.map +26 -22
  3. package/bun.lock +25 -25
  4. package/esm/funcs/invoicesRecalculateInvoice.d.ts +2 -2
  5. package/esm/funcs/invoicesRecalculateInvoice.js +3 -7
  6. package/esm/funcs/invoicesRecalculateInvoice.js.map +1 -1
  7. package/esm/funcs/invoicesRecalculateInvoiceV2.d.ts +16 -0
  8. package/esm/funcs/invoicesRecalculateInvoiceV2.d.ts.map +1 -0
  9. package/esm/funcs/invoicesRecalculateInvoiceV2.js +91 -0
  10. package/esm/funcs/invoicesRecalculateInvoiceV2.js.map +1 -0
  11. package/esm/landing-page.js +9 -9
  12. package/esm/landing-page.js.map +1 -1
  13. package/esm/lib/config.d.ts +6 -6
  14. package/esm/lib/config.d.ts.map +1 -1
  15. package/esm/lib/config.js +11 -4
  16. package/esm/lib/config.js.map +1 -1
  17. package/esm/lib/sdks.d.ts +1 -1
  18. package/esm/lib/sdks.d.ts.map +1 -1
  19. package/esm/lib/sdks.js +1 -1
  20. package/esm/lib/sdks.js.map +1 -1
  21. package/esm/mcp-server/cli/serve/command.js +1 -1
  22. package/esm/mcp-server/cli/serve/command.js.map +1 -1
  23. package/esm/mcp-server/cli/start/command.js +1 -1
  24. package/esm/mcp-server/cli/start/command.js.map +1 -1
  25. package/esm/mcp-server/flags.d.ts +1 -1
  26. package/esm/mcp-server/flags.d.ts.map +1 -1
  27. package/esm/mcp-server/mcp-server.js +1 -1
  28. package/esm/mcp-server/server.d.ts +1 -1
  29. package/esm/mcp-server/server.d.ts.map +1 -1
  30. package/esm/mcp-server/server.js +3 -1
  31. package/esm/mcp-server/server.js.map +1 -1
  32. package/esm/mcp-server/tools/invoicesRecalculateInvoice.js +2 -2
  33. package/esm/mcp-server/tools/invoicesRecalculateInvoice.js.map +1 -1
  34. package/esm/mcp-server/tools/invoicesRecalculateInvoiceV2.d.ts +7 -0
  35. package/esm/mcp-server/tools/invoicesRecalculateInvoiceV2.d.ts.map +1 -0
  36. package/esm/mcp-server/tools/invoicesRecalculateInvoiceV2.js +34 -0
  37. package/esm/mcp-server/tools/invoicesRecalculateInvoiceV2.js.map +1 -0
  38. package/esm/models/dtofeatureresponse.d.ts +5 -0
  39. package/esm/models/dtofeatureresponse.d.ts.map +1 -1
  40. package/esm/models/dtofeatureresponse.js +5 -0
  41. package/esm/models/dtofeatureresponse.js.map +1 -1
  42. package/esm/models/dtoinvoiceresponse.d.ts +1 -0
  43. package/esm/models/dtoinvoiceresponse.d.ts.map +1 -1
  44. package/esm/models/dtoinvoiceresponse.js +1 -0
  45. package/esm/models/dtoinvoiceresponse.js.map +1 -1
  46. package/esm/models/dtousageanalyticitem.d.ts +3 -0
  47. package/esm/models/dtousageanalyticitem.d.ts.map +1 -1
  48. package/esm/models/dtousageanalyticitem.js +3 -0
  49. package/esm/models/dtousageanalyticitem.js.map +1 -1
  50. package/esm/models/filtercondition.d.ts +2 -2
  51. package/esm/models/filtercondition.d.ts.map +1 -1
  52. package/esm/models/filtercondition.js +2 -2
  53. package/esm/models/filtercondition.js.map +1 -1
  54. package/esm/models/githubcomflexpriceflexpriceinternaldomainfeaturefeature.d.ts +5 -0
  55. package/esm/models/githubcomflexpriceflexpriceinternaldomainfeaturefeature.d.ts.map +1 -1
  56. package/esm/models/githubcomflexpriceflexpriceinternaldomainfeaturefeature.js +5 -0
  57. package/esm/models/githubcomflexpriceflexpriceinternaldomainfeaturefeature.js.map +1 -1
  58. package/esm/models/groupentitytype.d.ts +12 -0
  59. package/esm/models/groupentitytype.d.ts.map +1 -0
  60. package/esm/models/groupentitytype.js +13 -0
  61. package/esm/models/groupentitytype.js.map +1 -0
  62. package/esm/models/groupgroup.d.ts +21 -0
  63. package/esm/models/groupgroup.d.ts.map +1 -0
  64. package/esm/models/groupgroup.js +21 -0
  65. package/esm/models/groupgroup.js.map +1 -0
  66. package/esm/models/meteraggregation.d.ts +1 -0
  67. package/esm/models/meteraggregation.d.ts.map +1 -1
  68. package/esm/models/meteraggregation.js +1 -0
  69. package/esm/models/meteraggregation.js.map +1 -1
  70. package/esm/models/recalculateinvoiceop.d.ts +2 -3
  71. package/esm/models/recalculateinvoiceop.d.ts.map +1 -1
  72. package/esm/models/recalculateinvoiceop.js +2 -3
  73. package/esm/models/recalculateinvoiceop.js.map +1 -1
  74. package/esm/models/recalculateinvoicev2op.d.ts +11 -0
  75. package/esm/models/recalculateinvoicev2op.d.ts.map +1 -0
  76. package/esm/models/recalculateinvoicev2op.js +15 -0
  77. package/esm/models/recalculateinvoicev2op.js.map +1 -0
  78. package/esm/models/reportingunit.d.ts +8 -0
  79. package/esm/models/reportingunit.d.ts.map +1 -0
  80. package/esm/models/reportingunit.js +10 -0
  81. package/esm/models/reportingunit.js.map +1 -0
  82. package/esm/models/value.d.ts +10 -0
  83. package/esm/models/value.d.ts.map +1 -0
  84. package/esm/models/{githubcomflexpriceflexpriceinternaltypesvalue.js → value.js} +2 -2
  85. package/esm/models/value.js.map +1 -0
  86. package/esm/tool-names.d.ts.map +1 -1
  87. package/esm/tool-names.js +5 -1
  88. package/esm/tool-names.js.map +1 -1
  89. package/esm/tsconfig.tsbuildinfo +1 -1
  90. package/manifest.json +17 -11
  91. package/package.json +1 -1
  92. package/src/funcs/invoicesRecalculateInvoice.ts +3 -7
  93. package/src/funcs/invoicesRecalculateInvoiceV2.ts +156 -0
  94. package/src/landing-page.ts +9 -9
  95. package/src/lib/config.ts +13 -6
  96. package/src/lib/sdks.ts +1 -1
  97. package/src/mcp-server/cli/serve/command.ts +1 -1
  98. package/src/mcp-server/cli/start/command.ts +1 -1
  99. package/src/mcp-server/flags.ts +1 -1
  100. package/src/mcp-server/mcp-server.ts +1 -1
  101. package/src/mcp-server/server.ts +4 -2
  102. package/src/mcp-server/tools/invoicesRecalculateInvoice.ts +2 -2
  103. package/src/mcp-server/tools/invoicesRecalculateInvoiceV2.ts +42 -0
  104. package/src/models/dtofeatureresponse.ts +11 -0
  105. package/src/models/dtoinvoiceresponse.ts +2 -0
  106. package/src/models/dtousageanalyticitem.ts +5 -0
  107. package/src/models/filtercondition.ts +3 -6
  108. package/src/models/githubcomflexpriceflexpriceinternaldomainfeaturefeature.ts +8 -0
  109. package/src/models/groupentitytype.ts +17 -0
  110. package/src/models/groupgroup.ts +40 -0
  111. package/src/models/meteraggregation.ts +2 -0
  112. package/src/models/recalculateinvoiceop.ts +7 -13
  113. package/src/models/recalculateinvoicev2op.ts +38 -0
  114. package/src/models/reportingunit.ts +17 -0
  115. package/src/models/{githubcomflexpriceflexpriceinternaltypesvalue.ts → value.ts} +2 -4
  116. package/src/tool-names.ts +5 -1
  117. package/esm/models/githubcomflexpriceflexpriceinternaltypesvalue.d.ts +0 -10
  118. package/esm/models/githubcomflexpriceflexpriceinternaltypesvalue.d.ts.map +0 -1
  119. package/esm/models/githubcomflexpriceflexpriceinternaltypesvalue.js.map +0 -1
@@ -5,6 +5,8 @@
5
5
  import * as z from "zod";
6
6
  import { AlertSettings, AlertSettings$zodSchema } from "./alertsettings.js";
7
7
  import { FeatureType, FeatureType$zodSchema } from "./featuretype.js";
8
+ import { GroupGroup, GroupGroup$zodSchema } from "./groupgroup.js";
9
+ import { ReportingUnit, ReportingUnit$zodSchema } from "./reportingunit.js";
8
10
  import { Status, Status$zodSchema } from "./status.js";
9
11
 
10
12
  export type GithubComFlexpriceFlexpriceInternalDomainFeatureFeature = {
@@ -13,11 +15,14 @@ export type GithubComFlexpriceFlexpriceInternalDomainFeatureFeature = {
13
15
  created_by?: string | undefined;
14
16
  description?: string | undefined;
15
17
  environment_id?: string | undefined;
18
+ group?: GroupGroup | undefined;
19
+ group_id?: string | undefined;
16
20
  id?: string | undefined;
17
21
  lookup_key?: string | undefined;
18
22
  metadata?: { [k: string]: string } | undefined;
19
23
  meter_id?: string | undefined;
20
24
  name?: string | undefined;
25
+ reporting_unit?: ReportingUnit | undefined;
21
26
  status?: Status | undefined;
22
27
  tenant_id?: string | undefined;
23
28
  type?: FeatureType | undefined;
@@ -35,11 +40,14 @@ export const GithubComFlexpriceFlexpriceInternalDomainFeatureFeature$zodSchema:
35
40
  created_by: z.string().optional(),
36
41
  description: z.string().optional(),
37
42
  environment_id: z.string().optional(),
43
+ group: GroupGroup$zodSchema.optional(),
44
+ group_id: z.string().optional(),
38
45
  id: z.string().optional(),
39
46
  lookup_key: z.string().optional(),
40
47
  metadata: z.record(z.string(), z.string()).optional(),
41
48
  meter_id: z.string().optional(),
42
49
  name: z.string().optional(),
50
+ reporting_unit: ReportingUnit$zodSchema.optional(),
43
51
  status: Status$zodSchema.optional(),
44
52
  tenant_id: z.string().optional(),
45
53
  type: FeatureType$zodSchema.optional(),
@@ -0,0 +1,17 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod";
6
+ import { ClosedEnum } from "../types/enums.js";
7
+
8
+ export const GroupEntityType = {
9
+ Price: "price",
10
+ Feature: "feature",
11
+ } as const;
12
+ export type GroupEntityType = ClosedEnum<typeof GroupEntityType>;
13
+
14
+ export const GroupEntityType$zodSchema = z.enum([
15
+ "price",
16
+ "feature",
17
+ ]);
@@ -0,0 +1,40 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod";
6
+ import {
7
+ GroupEntityType,
8
+ GroupEntityType$zodSchema,
9
+ } from "./groupentitytype.js";
10
+ import { Status, Status$zodSchema } from "./status.js";
11
+
12
+ export type GroupGroup = {
13
+ created_at?: string | undefined;
14
+ created_by?: string | undefined;
15
+ entity_type?: GroupEntityType | undefined;
16
+ environment_id?: string | undefined;
17
+ id?: string | undefined;
18
+ lookup_key?: string | undefined;
19
+ metadata?: { [k: string]: string } | undefined;
20
+ name?: string | undefined;
21
+ status?: Status | undefined;
22
+ tenant_id?: string | undefined;
23
+ updated_at?: string | undefined;
24
+ updated_by?: string | undefined;
25
+ };
26
+
27
+ export const GroupGroup$zodSchema: z.ZodType<GroupGroup> = z.object({
28
+ created_at: z.string().optional(),
29
+ created_by: z.string().optional(),
30
+ entity_type: GroupEntityType$zodSchema.optional(),
31
+ environment_id: z.string().optional(),
32
+ id: z.string().optional(),
33
+ lookup_key: z.string().optional(),
34
+ metadata: z.record(z.string(), z.string()).optional(),
35
+ name: z.string().optional(),
36
+ status: Status$zodSchema.optional(),
37
+ tenant_id: z.string().optional(),
38
+ updated_at: z.string().optional(),
39
+ updated_by: z.string().optional(),
40
+ });
@@ -11,6 +11,7 @@ import { WindowSize, WindowSize$zodSchema } from "./windowsize.js";
11
11
 
12
12
  export type MeterAggregation = {
13
13
  bucket_size?: WindowSize | undefined;
14
+ expression?: string | undefined;
14
15
  field?: string | undefined;
15
16
  group_by?: string | undefined;
16
17
  multiplier?: string | undefined;
@@ -20,6 +21,7 @@ export type MeterAggregation = {
20
21
  export const MeterAggregation$zodSchema: z.ZodType<MeterAggregation> = z.object(
21
22
  {
22
23
  bucket_size: WindowSize$zodSchema.optional(),
24
+ expression: z.string().optional(),
23
25
  field: z.string().optional(),
24
26
  group_by: z.string().optional(),
25
27
  multiplier: z.string().optional(),
@@ -3,36 +3,30 @@
3
3
  */
4
4
 
5
5
  import * as z from "zod";
6
- import {
7
- DtoInvoiceResponse,
8
- DtoInvoiceResponse$zodSchema,
9
- } from "./dtoinvoiceresponse.js";
10
6
  import {
11
7
  ErrorsErrorResponse,
12
8
  ErrorsErrorResponse$zodSchema,
13
9
  } from "./errorserrorresponse.js";
10
+ import {
11
+ ModelsTemporalWorkflowResult,
12
+ ModelsTemporalWorkflowResult$zodSchema,
13
+ } from "./modelstemporalworkflowresult.js";
14
14
 
15
- export type RecalculateInvoiceRequest = {
16
- id: string;
17
- finalize?: boolean | undefined;
18
- };
15
+ export type RecalculateInvoiceRequest = { id: string };
19
16
 
20
17
  export const RecalculateInvoiceRequest$zodSchema: z.ZodType<
21
18
  RecalculateInvoiceRequest
22
19
  > = z.object({
23
- finalize: z.boolean().describe(
24
- "Whether to finalize the invoice after recalculation (default: true)",
25
- ).optional(),
26
20
  id: z.string().describe("Invoice ID"),
27
21
  });
28
22
 
29
23
  export type RecalculateInvoiceResponse =
30
- | DtoInvoiceResponse
24
+ | ModelsTemporalWorkflowResult
31
25
  | ErrorsErrorResponse;
32
26
 
33
27
  export const RecalculateInvoiceResponse$zodSchema: z.ZodType<
34
28
  RecalculateInvoiceResponse
35
29
  > = z.union([
36
- DtoInvoiceResponse$zodSchema,
30
+ ModelsTemporalWorkflowResult$zodSchema,
37
31
  ErrorsErrorResponse$zodSchema,
38
32
  ]);
@@ -0,0 +1,38 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod";
6
+ import {
7
+ DtoInvoiceResponse,
8
+ DtoInvoiceResponse$zodSchema,
9
+ } from "./dtoinvoiceresponse.js";
10
+ import {
11
+ ErrorsErrorResponse,
12
+ ErrorsErrorResponse$zodSchema,
13
+ } from "./errorserrorresponse.js";
14
+
15
+ export type RecalculateInvoiceV2Request = {
16
+ id: string;
17
+ finalize?: boolean | undefined;
18
+ };
19
+
20
+ export const RecalculateInvoiceV2Request$zodSchema: z.ZodType<
21
+ RecalculateInvoiceV2Request
22
+ > = z.object({
23
+ finalize: z.boolean().describe(
24
+ "Whether to finalize the invoice after recalculation (default: true)",
25
+ ).optional(),
26
+ id: z.string().describe("Invoice ID"),
27
+ });
28
+
29
+ export type RecalculateInvoiceV2Response =
30
+ | DtoInvoiceResponse
31
+ | ErrorsErrorResponse;
32
+
33
+ export const RecalculateInvoiceV2Response$zodSchema: z.ZodType<
34
+ RecalculateInvoiceV2Response
35
+ > = z.union([
36
+ DtoInvoiceResponse$zodSchema,
37
+ ErrorsErrorResponse$zodSchema,
38
+ ]);
@@ -0,0 +1,17 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod";
6
+
7
+ export type ReportingUnit = {
8
+ conversion_rate?: number | undefined;
9
+ unit_plural?: string | undefined;
10
+ unit_singular?: string | undefined;
11
+ };
12
+
13
+ export const ReportingUnit$zodSchema: z.ZodType<ReportingUnit> = z.object({
14
+ conversion_rate: z.number().optional(),
15
+ unit_plural: z.string().optional(),
16
+ unit_singular: z.string().optional(),
17
+ });
@@ -4,7 +4,7 @@
4
4
 
5
5
  import * as z from "zod";
6
6
 
7
- export type GithubComFlexpriceFlexpriceInternalTypesValue = {
7
+ export type Value = {
8
8
  array?: Array<string> | undefined;
9
9
  boolean?: boolean | undefined;
10
10
  date?: string | undefined;
@@ -12,9 +12,7 @@ export type GithubComFlexpriceFlexpriceInternalTypesValue = {
12
12
  string?: string | undefined;
13
13
  };
14
14
 
15
- export const GithubComFlexpriceFlexpriceInternalTypesValue$zodSchema: z.ZodType<
16
- GithubComFlexpriceFlexpriceInternalTypesValue
17
- > = z.object({
15
+ export const Value$zodSchema: z.ZodType<Value> = z.object({
18
16
  array: z.array(z.string()).optional(),
19
17
  boolean: z.boolean().optional(),
20
18
  date: z.string().optional(),
package/src/tool-names.ts CHANGED
@@ -82,7 +82,11 @@ export const toolNames: Array<{ name: string; description: string }>= [
82
82
  },
83
83
  {
84
84
  "name": "recalculate-invoice",
85
- "description": "Recalculate invoice\n\nUse when subscription or usage data changed and you need to refresh a draft invoice before finalizing. Optional finalize=true to lock after recalc."
85
+ "description": "Recalculate invoice (voided invoice)\n\nStarts an async workflow that creates a fresh replacement invoice for a voided SUBSCRIPTION invoice (same billing period). Returns workflow_id and run_id; poll workflow status or GET the new invoice via recalculated_invoice_id after completion."
86
+ },
87
+ {
88
+ "name": "recalculate-invoice-v2",
89
+ "description": "Recalculate draft invoice (v2)\n\nRecalculates a draft SUBSCRIPTION invoice in-place (replaces line items, reapplies credits/coupons/taxes). Use when subscription or usage data changed before finalizing."
86
90
  },
87
91
  {
88
92
  "name": "void-invoice",
@@ -1,10 +0,0 @@
1
- import * as z from "zod";
2
- export type GithubComFlexpriceFlexpriceInternalTypesValue = {
3
- array?: Array<string> | undefined;
4
- boolean?: boolean | undefined;
5
- date?: string | undefined;
6
- number?: number | undefined;
7
- string?: string | undefined;
8
- };
9
- export declare const GithubComFlexpriceFlexpriceInternalTypesValue$zodSchema: z.ZodType<GithubComFlexpriceFlexpriceInternalTypesValue>;
10
- //# sourceMappingURL=githubcomflexpriceflexpriceinternaltypesvalue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"githubcomflexpriceflexpriceinternaltypesvalue.d.ts","sourceRoot":"","sources":["../../src/models/githubcomflexpriceflexpriceinternaltypesvalue.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,MAAM,MAAM,6CAA6C,GAAG;IAC1D,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,uDAAuD,EAAE,CAAC,CAAC,OAAO,CAC7E,6CAA6C,CAO7C,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"githubcomflexpriceflexpriceinternaltypesvalue.js","sourceRoot":"","sources":["../../src/models/githubcomflexpriceflexpriceinternaltypesvalue.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAUzB,MAAM,CAAC,MAAM,uDAAuD,GAEhE,CAAC,CAAC,MAAM,CAAC;IACX,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACrC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC"}